mainmenu "Zag Configuration" choice prompt "CPU Architecture" default ARCH_AMD64 config ARCH_AMD64 bool "amd64" help Enable this option to select the AMD64 (x86_64) architecture. config ARCH_AARCH64 bool "aarch64" help Enable this option to select the AARCH64 architecture. config ARCH_UM bool "User-Mode" help Enable this option to select the User-Mode (UM) architecture. endchoice choice prompt "Bootloader support" depends on (!ARCH_UM) default BOOT_LIMINE config BOOT_LIMINE depends on (ARCH_AMD64 || ARCH_AARCH64) bool "Limine" help Enable this option to select support for the Limine bootloader. endchoice menu "Kernel Options" config SCHED_TIMESLICE int "Scheduler time slice" default 10 help This option sets the default time slice (in milliseconds) used by the scheduler. config BALANCE_INTERVAL int "Load balancing interval" default 1000 help This option sets the rate (in milliseconds) at which thread load balancing is perfomed. config NCPUS int "Maximal number of CPUs" default 64 help This option sets the maximum number of CPUs the kernel can support. config LOG_BUFFER_SHIFT int "Log buffer size shift" default 14 help This option sets the size of the kernel log buffer as a power of two. The actual size is calculated as 2 raised to the power of this value (i.e., 2^LOG_BUFFER_SHIFT bytes). menu "Memory Management" menu "Kernel Allocator" config SLAB_POISON bool "Poison slab objects on allocation" default y config SLAB_POISON_CHECK bool "Verify poison state on allocation" default y endmenu endmenu endmenu