What is pOS ?
pOS - portable Operating System is an attempt to write a small, fast-executing operating-system to use as little memory and resources as possible so that it runs on almost any computer system. It does not aim for any compatibilty (e.g. POSIX), its just meant to make fun developing it.
It is written mainly in ANSI-C. Machine dependant code like drivers and boot-loaders are usually written in a native assembler-language. The sourcecode is released under the license of the GPL, this means the sourcecode is available to anybody for free distribution, modfication and use. pOS was written in the hope that it will be somehow useful but this implies absolutely no warranties. For more information read the LICENSE-file that comes with the sourcecode and the binary distribution.
The main benefit of pOS is its portability. It can be ported to a variety of computers and platforms with only slight additions to the sourcecode. These include hardware-drivers and a boot-loader and other necessary hardware-code. pOS is currently developed for the famous Commodore C64 computers and compatible systems like the Commodore C128 in C64-mode. Ports for 8086-systems like the IBM-PC are planned but there's no development-schedule yet.
pOS consists of 4 principal parts - the kernel, the shell, the
init-loader and the boot-loader.
The kernel is where all the operating-systems' functionality lies in. It contains functions and data and represents the system-core.
The shell is a simple text-user-interface which runs as a program under pOS. It interprets keyboard-input by the user as commands and transforms them into kernel-commands, like loading programs and managing files on a floppy-disk. It represents the most trivial way to interact with the computer.
The init-loader is a small program that is loaded everytime pOS is booting. It loads user-defined configuration data (like which disks shall be mounted, text-color etc) and loads other initialization programs if any. Finally it loads the defined user-interface (usually the shell).
The boot-loader loads the kernel into the computers memory and starts it. It's the first program of pOS that is run when the computer shall run pOS
pOS is a multitasking operating-system which means it can run several programs at the same time. For this job the kernel contains a program which is called the scheduler. The scheduler distributes the computers resources to all programs loaded. The multitasking is a feature of almost all modern operating-systems.
Managing and accessing files is very simple and fast
on a pOS-system. The kernel provides a virtual-filesystem
which represents all disk-volumes in one filesystem-tree.
The content of any volume can be mapped into any
directory of the filesystem-tree. This allows anybody
to arrange his files individually.
The kernel integrates a directory-cache which speeds-up the access to directories. Any directory that has been accessed once will buffered in the directory-cache and all subsequent accesses to the directory will be served from the fast system-memory (as compared to the slow disk-drives). Future releases of pOS will certainly also feature a file-cache, which means that not only directory-accesses will be cached but also whole files, which means that files that are once read (like when starting a program) will be kept in the file-cache so that a subsequent access to the file will be much faster. So once you load a program from disk, start and stop it then load it again, the program will be loaded much faster than the first time.
- For more information on the guts of pOS please visit
- If you like to know the history of pOS please visit the download-section
- If you like to see some screenshots of a computer running pOS please visit the screenshot-section