In today's article we will explore the fascinating world of MicroEmpix. From its origins to its relevance today, MicroEmpix has been the subject of interest and debate in different areas. Throughout history, MicroEmpix has played a fundamental role in various cultures and societies, influencing the way people perceive the world around them. Through a detailed analysis, we will examine the different aspects that make MicroEmpix a topic worthy of study and reflection. Likewise, we will explore the implications and applications that MicroEmpix has in our daily lives, providing a comprehensive and enriching vision of this fascinating topic.
This article needs additional citations for verification. (November 2021) |
Developer | Computing Systems Laboratory, Electrical & Computer Engineering department, National Technical University of Athens |
---|---|
Written in | C, assembly language |
OS family | Unix-like |
Working state | Discontinued |
Final release | 2.0 |
Marketing target | Education |
Available in | English |
Update method | Compile from source code |
Platforms | x86, IBM Personal Computer (PC) XT (8088), AT (80286) |
Kernel type | Microkernel |
Default user interface | Command-line interface |
Preceded by | Empix |
MicroEmpix is the microkernel (much nearer to an exokernel) version of Empix, an operating system (OS) developed at the Computing Systems Laboratory (CSLab) of the Electrical & Computer Engineering department at the National Technical University of Athens.
Empix began in the late 1980's as the laboratory's effort to write a small Unix-like modern multitasking OS, intended for educational use. Borrowing most of its basic characteristics (file system, binary format, shell) from other popular OSes of the time (Xinu, Minix, DOS). Empix is quite small (about 10,000 lines of code) and supports Intel x86 processors, in the IBM Personal Computers (PC) XT (8088), and AT (80286) architectures, floppy disks and hard disk drives (with the File Allocation Table (FAT) 16 limits), and Enhanced Graphics Adapter (EGA) graphics (80x25 color terminal) and the serial ports. It has a shell with some basic commands, and the ability to execute multiple processes.
MicroEmpix is far different. It's about 1,600 lines of code (over which about 1,000 devoted to serial port control), and it's a microkernel, meaning that it creates and runs processes in kernel-space, with no distinction between process-space and kernel space. What the kernel sees, the process sees and vice versa. No system calls occur to require a system call dispatcher or a similar mechanism. Kernel functions are inherent to the processes created, and there is but one user.