Ответ
Размер страницы (page size) — это минимальный блок физической памяти, которым оперирует операционная система. В большинстве современных ОС (Linux, macOS, Windows) и на популярных архитектурах (x86-64, ARM64) стандартный размер страницы составляет 4096 байт (4 КБ).
Знание размера страницы важно для оптимизации производительности при работе с файлами, mmap и выделением больших объемов памяти.
В Go получить размер страницы можно несколькими способами:
-
Через пакет
os
(самый простой способ):import ( "fmt" "os" ) func main() { // os.Getpagesize() возвращает системный размер страницы fmt.Printf("Page size: %d bytesn", os.Getpagesize()) // Вывод: Page size: 4096 bytes }
-
Через системные вызовы (для Unix-подобных систем):
import ( "fmt" "golang.org/x/sys/unix" ) func main() { size, err := unix.Getpagesize() if err == nil { fmt.Printf("Page size: %d bytesn", size) } }
Дополнительно: Некоторые системы поддерживают "huge pages" (например, 2 МБ или 1 ГБ) для уменьшения накладных расходов при работе с очень большими объемами данных.