# XKernel

The XKernel is a unix-like kernel of xOS, supporting x86/x86-64, arm32 and arm64 architectures.

## Dirs

* [algo](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/algo) contains implementation of algorithms and data structures which are used inside the kernel.
* [drivers](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/drivers) contains implementation of drivers for supported platforms.
* [fs](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/fs) contains implementation of VFS and file systems which are supported.
* [io](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/io) contains implementation of communication parts.
* [libkern](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/libkern) is a support library for kernel.
* [mem](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/mem) contains implementation of memory managers (both virtual and physical).
* [platform](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/platform) contains platform specific code.
* [syscalls](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/syscalls) contains implementation of syscalls.
* [tasking](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/tasking) contains implementation of tasking-control mechanisms.
* [time](https://code.ayaantunio.me/ayaan/Custom-Operating-System/src/branch/master/kernel/kernel/time) contains implementation of a time manager.