KernelFlavourDifferences
IconsPage/iconCircle48.png
information.png
IconsPage/IconBug.png
testing.png
todo.png
Ubuntu provides 3 main flavours of kernels -generic, desktop and generic use, -server for the server, and -virtual as a light version of -server for virtualization. The i386 -generic-pae kernel serves as both the 32bit server kernel and a 32bit generic kernel with nx (no execute) protections which are only possible in 32bit mode when pae is enabled.
Ubuntu kernels are built from the same source code and patches and the only difference are the config options that are applied. Topic branch kernels are an exception and are not covered here.
Natty
64bit kernels
Config
-generic
-server
-virtual
CONFIG_HZ
100
100
100
CONFIG_NO_HZ
y
y
y
CONFIG_ACPI_HOTPLUG_MEMORY
m
m
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE
y
y
CONFIG_ARCH_MEMORY_PROBE
y
y
CONFIG_DEFAULT_CFQ
y
CONFIG_DEFAULT_DEADLINE
y
y
CONFIG_DEFAULT_IOSCHED
cfq
deadline
deadline
CONFIG_INTEL_IDLE
y
y
CONFIG_MEMORY_HOTPLUG
y
y
CONFIG_MEMORY_HOTPLUG_SPARSE
y
y
CONFIG_MEMORY_HOTREMOVE
y
y
CONFIG_PREEMPT_NONE
y
y
CONFIG_PREEMPT_VOLUNTARY
y
CONFIG_SCSI_SPI_ATTRS
m
y
y
CONFIG_SCSI_SYM53C8XX_2
m
y
y
CONFIG_VIRTIO
m
y
y
CONFIG_VIRTIO_BLK
m
y
y
CONFIG_VIRTIO_NET
m
y
y
CONFIG_VIRTIO_PCI
m
y
y
CONFIG_VIRTIO_RING
m
y
y
CONFIG_XEN_BLKDEV_FRONTEND
m
m
y
CONFIG_XEN_NETDEV_FRONTEND
m
m
y
32bit kernels
Config
-generic
-generic-pae
-virtual
CONFIG_HZ
250
250
250
CONFIG_NO_HZ
y
y
y
CONFIG_ARCH_DMA_ADDR_T_64BIT
y
y
CONFIG_ARCH_PHYS_ADDR_T_64BIT
y
y
CONFIG_BATTERY_OLPC
m
CONFIG_DEBUG_RODATA
y
y
CONFIG_HIGHMEM4G
y
CONFIG_HIGHMEM64G
y
y
CONFIG_HVC_IRQ
y
y
CONFIG_HVC_XEN
y
y
CONFIG_I2O_EXT_ADAPTEC_DMA64
y
y
CONFIG_INTEL_IDLE
y
y
CONFIG_IOMMU_HELPER
y
y
CONFIG_LEDS_GPIO_OF
y
CONFIG_MMC_SDHCI_OF
m
CONFIG_MOUSE_PS2_OLPC
y
CONFIG_MTD_OF_PARTS
y
CONFIG_MTD_PHYSMAP_OF
m
CONFIG_OF
y
CONFIG_OF_ADDRESS
y
CONFIG_OF_DEVICE
y
CONFIG_OF_GPIO
y
CONFIG_OF_I2C
y
CONFIG_OF_IRQ
y
CONFIG_OF_MDIO
y
CONFIG_OF_NET
y
CONFIG_OF_PROMTREE
y
CONFIG_OF_SPI
y
CONFIG_OLPC
y
CONFIG_OLPC_OPENFIRMWARE
y
CONFIG_OLPC_OPENFIRMWARE_DT
y
CONFIG_OLPC_XO1
m
CONFIG_PCI_OLPC
y
CONFIG_PCI_XEN
y
y
CONFIG_PHYS_ADDR_T_64BIT
y
y
CONFIG_PHYSICAL_ALIGN
0x1000000
0x1000000
0x100000
CONFIG_PHYSICAL_START
0x1000000
0x1000000
0x100000
CONFIG_PROC_DEVICETREE
y
CONFIG_SCSI_SPI_ATTRS
m
y
y
CONFIG_SCSI_SYM53C8XX_2
m
y
y
CONFIG_SERIAL_GRLIB_GAISLER_APBUART
m
CONFIG_SERIAL_OF_PLATFORM
m
CONFIG_SWIOTLB
y
y
CONFIG_SWIOTLB_XEN
y
y
CONFIG_SYS_HYPERVISOR
y
y
CONFIG_VIRTIO
m
y
y
CONFIG_VIRTIO_BLK
m
y
y
CONFIG_VIRTIO_NET
m
y
y
CONFIG_VIRTIO_PCI
m
y
y
CONFIG_VIRTIO_RING
m
y
y
CONFIG_X86_PAE
y
y
CONFIG_XEN
y
y
CONFIG_XEN_BACKEND
y
y
CONFIG_XEN_BALLOON
y
y
CONFIG_XEN_BLKDEV_FRONTEND
m
y
CONFIG_XEN_COMPAT_XENFS
y
y
CONFIG_XEN_DEV_EVTCHN
m
m
CONFIG_XEN_DOM0
y
y
CONFIG_XEN_FBDEV_FRONTEND
m
m
CONFIG_XEN_GNTDEV
m
m
CONFIG_XEN_KBDDEV_FRONTEND
m
m
CONFIG_XEN_MAX_DOMAIN_MEMORY
128
128
CONFIG_XEN_NETDEV_FRONTEND
m
y
CONFIG_XEN_PCIDEV_FRONTEND
m
m
CONFIG_XEN_PLATFORM_PCI
m
m
CONFIG_XEN_PRIVILEGED_GUEST
y
y
CONFIG_XEN_PVHVM
y
y
CONFIG_XEN_SAVE_RESTORE
y
y
CONFIG_XEN_SCRUB_PAGES
y
y
CONFIG_XEN_SYS_HYPERVISOR
y
y
CONFIG_XEN_XENBUS_FRONTEND
m
y
CONFIG_XENFS
m
m
CONFIG_XO1_RFKILL
m
Lucid
In Lucid -virtual is a sub-flavour of the server kernel, this means it has the exact same config settings but is packaged with a subset of the modules that are built.
64bit kernels
Config
-generic
-server
CONFIG_HZ
100
100
100
CONFIG_NO_HZ
y
y
y
CONFIG_ACPI_HOTPLUG_MEMORY
m
CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE
y
CONFIG_ARCH_MEMORY_PROBE
y
CONFIG_DEFAULT_CFQ
y
CONFIG_DEFAULT_DEADLINE
y
CONFIG_DEFAULT_IOSCHED
cfq
deadline
CONFIG_MEMORY_HOTPLUG
y
CONFIG_MEMORY_HOTPLUG_SPARSE
y
CONFIG_MEMORY_HOTREMOVE
y
CONFIG_NR_CPUS
64
256
CONFIG_PREEMPT_NONE
y
CONFIG_PREEMPT_VOLUNTARY
y
CONFIG_SCSI_SPI_ATTRS
m
y
CONFIG_SCSI_SYM53C8XX_2
m
y
CONFIG_VIRTIO
m
y
CONFIG_VIRTIO_BLK
m
y
CONFIG_VIRTIO_NET
m
y
CONFIG_VIRTIO_PCI
m
y
CONFIG_VIRTIO_RING
m
y
32bit kernels
Config
-generic
-generic-pae
CONFIG_HZ
250
250
250
CONFIG_NO_HZ
y
y
y
CONFIG_VIRTIO m
y
CONFIG_ARCH_PHYS_ADDR_T_64BIT
y
CONFIG_HIGHMEM4G
y
CONFIG_HIGHMEM64G
y
CONFIG_HVC_IRQ
y
CONFIG_HVC_XEN
y
CONFIG_I2O_EXT_ADAPTEC_DMA64
y
CONFIG_M586
y
CONFIG_M586TSC
y
CONFIG_PHYS_ADDR_T_64BIT
y
CONFIG_SCSI_SPI_ATTRS
m
y
CONFIG_SCSI_SYM53C8XX_2
m
y
CONFIG_SYS_HYPERVISOR
y
CONFIG_VIRTIO_BLK
m
y
CONFIG_VIRTIO_NET
m
y
CONFIG_VIRTIO_PCI
m
y
CONFIG_VIRTIO_RING
m
y
CONFIG_X86_CMPXCHG64
y
CONFIG_X86_MINIMUM_CPU_FAMILY
4
5
CONFIG_X86_PAE
y
CONFIG_X86_TSC
y
CONFIG_XEN
y
CONFIG_XEN_BALLOON
y
CONFIG_XEN_BLKDEV_FRONTEND
m
CONFIG_XEN_COMPAT_XENFS
y
CONFIG_XEN_DEV_EVTCHN
m
CONFIG_XEN_FBDEV_FRONTEND
m
CONFIG_XEN_KBDDEV_FRONTEND
m
CONFIG_XEN_MAX_DOMAIN_MEMORY
32
CONFIG_XEN_NETDEV_FRONTEND
m
CONFIG_XEN_SAVE_RESTORE
y
CONFIG_XEN_SCRUB_PAGES
y
CONFIG_XEN_SYS_HYPERVISOR
y
CONFIG_XENFS
m
Kernel/FAQ/KernelFlavourDifferences (last edited 2011年05月16日 22:08:07 by static-50-53-37-130)