While Linux has always been a strong contender as a server operating system, it has not always scaled up well to high-end computer systems. With the 2.6 kernel, more support has been added to allow Linux to make use of more processing power.
More processing power — While the ability to use multiple processors on the same computer has been supported in Linux for some time, the 2.6 kernel has added support for more than 16 CPUs on a single computer.
Multiple memory pools — Former limitations resulting from having a single pool of memory being shared by multiple processors have been adressed by the Non-Uniform Memory Acccess (NUMA) feature in the 2.6 kernel. With NUMA, the kernel allows for support of multiprocessor computers that can take advantage of the most appropriate available memory resources.
More devices — In the 2.4 kernel, there were only 255 allowable major devices and 255 subdevices. With the 2.6 kernel, many more devices can be defined. The 2.6 kernel allows 4095 major devices, while allowing over one million subdevices for each type.
Larger file systems — On 32-bit hardware, the 2.6 kernel allows file systems that can store up to 16 terabytes of data. This is an eight-fold improvement over what the 2.4 kernel could support.
Support for high-bandwidth networks — With support for TCP Segmentation Offloading (TSO) enabled in the 2.6 kernel along with high-speed Intel PRO/1000 network driver (e1000) enabled, transfer rates for two-way communication can be significantly increased. TSO offloads the task of dividing large packets into smaller packets to the network interface card.