next up previous
Next: Mass storage Up: Storage Previous: Storage

Memory subsystem

If one compiles a curent Linux kernel one might easaly think it is not well suited for embedded systems - the linux kernel size has grown substantially between 2.0.X and 2.2.X and again between 2.2.X and 2.4.x. This has moved the minimum memmory demands up to 4MB weras a 2.0.X kernel could confortably operate with 2MB RAM. So is a 2.4.X based system not usable for embedded linux ? Not only did a rich and interesting set of featurs get added in the 2.4.X kernel series, notably the clean integration of MTD (Memory TEchnology Devices) and iproute2/QOS but also the way the kernel manages memmory resources has improved substantially and that is why even for resource constraint systems a 2.4.X kernel will performe better than a slim 2.0.X kernel. Major improvements are in the buffering mechanism the cleanup of cache-allignment and direct access to peripheral buffers from userspace (kobuf) and other low level extensions. It's not posible to describe the full memmory subsystem in a few sentances - the simple message is 2.4.X kernels will manage memmory resources on a low-memmory system better than a 2.0.X/2.2.X and the increase in kernel size is well worth it. Aside from performance issues the memomory management of the 2.4.X kernels also exhibit better security characteristics than early kernels.
next up previous
Next: Mass storage Up: Storage Previous: Storage
Der Herr Hofrat
2002-05-25