これは、mmap
ファイルに 1 バイトを書き込む試みです。
package main
import (
"fmt"
"os"
"syscall"
)
func main() {
file, _ := os.Open("/tmp/data")
mmap, _ := syscall.Mmap(int(file.Fd()), 0, 100, syscall.PROT_READ|syscall.PROT_WRITE, syscall.MAP_SHARED)
fmt.Printf("cap is %d", cap(mmap))
mmap[0] = 0
syscall.Munmap(mmap)
}
length が 100 に設定されているにもかかわらず、mmap
capacity は常に 0 です。システム コールで何が問題になったのですか?