|
Embedded Xinu Operating System
An ongoing research project and educational operating system.
|
| A simple C library supporting a number of standard functions | |
| Embedded Xinu Device Drivers | |
| Ethernet Loopback Device Driver | |
| Driver for the BCM2837B0 (Raspberry Pi 3 B+) framebuffer | |
| Driver for the Microchip LAN7800 Ethernet device | |
| Loopback Device Driver | |
| Send and receive raw packets | |
| Transmission Control Protocol driver | |
| TTY device driver | |
| Telnet client and server | |
| Universal Asynchronous Receiver/Transmitter driver | |
| These UART functions are implemented the same way regardless of the exact type of UART | |
| These UART functions are implemented differently for different UART types | |
| User Datagram Protocol driver | |
| Low-level functions mostly internal to the UDP driver | |
| Primary UDP API, including functions compliant with Xinu's device model | |
| Universal Serial Bus 2.0 subsystem | |
| USB device model and API for USB device drivers | |
| Platform-dependent code to actually send and receive data over the USB | |
| Driver for USB hub devices | |
| Xinu's mailbox subsystem allows threads to send and receive messages to each other | |
| Networking subsystem and protocols | |
| Address Resolution Protocol | |
| Client for Dynamic Host Configuration Protocol (IPv4 version) | |
| Internet Control Message Protocol | |
| Internet Protocol Version 4 | |
| Automatically drop and corrupt packets for testing | |
| View the data of packets being send and received over a network interface | |
| IPv4 routing support | |
| Trivial File Transfer Protocol client | |
| Embedded Xinu System Calls | |
| The SoC of the Raspberry Pi 3 Model B+ is the Broadcom BCM2837B0 | |
| Open, close, read, and write to devices | |
| Allocate and free heap or buffer pool memory | |
| Debugging, tar, and other miscellaneous functions | |
| Monitor creation, locking, unlocking, and freeing | |
| Semaphore creation, waiting, signaling, and freeing | |
| Thread functions | |
| Initialize, update, and read the system timer | |
| Platform-dependent code to actually send and receive data over the USB |
1.8.5