Pick a Free OS

If I could re-write Linux

If we were to re-write Linux, taking clues from

various operating systems, what would we

make sure it did? Our next-generation operating system (NGOS) would be

completely modular in design, aimed at 64-bit hardware, and with an

interface that would change the way people compute. It would support a

large number of applications and hardware devices, accepting device

drivers written for other operating system, and run applications

written for other operating system under an emulation mode.

Kernel: Most operating systems have a

monolithic kernel whereby all the kernel

code is in a single binary. Microkernel architecture on the other

hand follows a modular approach, separating the core kernel code

from the rest of the system. With a microkernel the hardware layer can

be

separate from the kernel allowing easy porting to different platforms.

NGOS should use the

microkernel architecture to make it easier to port the operating

system to multiple platforms.

Even though Linux has a monolithic kernel it has

still been successfully ported to more

platforms than any other operating systems. It uses modules for

device drivers and gives user an option to compile the code

into the kernel or user modules. Code in the kernel executes

significantly faster than modules.

64-bit computing: Most operating systems

today were written for 32-bit processors

and are now being ported to 64-bit processors. Some older

operating systems were originally written for 16-bit processors

and ported to 32-bit processors.

Linux is a pure 32-bit operating system written from

scratch for 32-bit processors. It

doesn't suffer from any 16-bit baggage code. Now Linux is being ported

to various 64-bit processors. It will be a while before all the code is

compiled and optimised to take advantage of 64-bit platforms.

The NGOS would be written for 64-bit processors

because by the time the operating system would

ready for production use 64-bit processors will be the mainstream

environment. There should also be some low-level layer which would

allow the operating system to be executed on older 32-bit

architectures, but the goal for NGSO should be that it

is the fastest operating system on 64-bit processors.

Memory and filesystem: Older Linux kernels

such as 2.2.x were limited to 2GB of memory. The 2.4.x kernel is

limited only by the hardware architecture; the Intel x86 platform