Revision 14725243 of "Agnix" on enwiki

'''[http://agnix.sourceforge.net Agnix]''' is an educational [[Operating system|operating system]] [[operating system kernel|kernel]]

Agnix is an [[Open-Source]] project, which has been founded to provide an educational, network operating system kernel. Agnix is an extended kernel, written in pure C code. It is ideal starting point to learn about operating system kernel architecture. In addition Agnix is a very fast and small kernel and I advice for using it in an [[Embedded_system|embedded systems]] and everywhere where is needed fast, small and stable operating system kernel.

The main goal of the project is to provide an educational, network [[Operating system|operating system]] [[operating system kernel|kernel]] which will be fully compatible with the [[Linux|Linux]] Kernel in the system call layer. The compatibility with Linux kernel is very important, because Agnix has to enable running programs compiled for Linux. This is a base of the Agnix kernel project.

Agnix supports:
* Memory: 32-bit protected mode, support for paging
* Virtual memory: supports for memory allocation algorithms (binary and buddy)
* Tasks management: [[multithread|mulithreading]], hardware switched tasks, round-robin scheduler
* Synchronization: spinlocks and semaphores
* Interrupts: interrupts serviced in fastirq kernel thread
* Timers: RT timers, 100Hz system clock
* Network: support for ethernet, ARP and IP protocols
* Driver interface: own driver interface named ADI (Agnix Driver Interface)
* Drivers: [[PIT|8254]], [[8259]], [[RTC]], DMA chips, PCI bus, support for RTL-8029(AS) network card
* Power management: support for [[APM]]
* Support for busses: full support for [[PCI]] bus, PCI devices and PCI IRQs
* Terminals: support for switched [[terminal|terminals]]
* Data structures: hashing with open adressing, lists, queues



Agnix's [http://agnix.sourceforge.net home page] ([http://agnix.sourceforge.net/pl/ polish version])

Agnix project [http://www.sf.net/projects/agnix home page]

[[Category:operating systems]]
[[Category:operating system kernel]]
[[Category:embedded systems]]
[[Category:linux]]