<img src="https://raw.githubusercontent.com/opuntiaOS-Project/opuntiaOS/master/assets/logo/logo_512.png" width="20"> <b> DOCS</b></br></br>

# Prickly Pear Kernel

Prickly Pear Kernel is a unix-like kernel of opuntiaOS, supporting x86/x86-64, arm32 and arm64 architectures.

## Dirs

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