Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/itsManjeet/rlxnix-kernel
a experimental monolithic kernel in rust
https://github.com/itsManjeet/rlxnix-kernel
kernel linux monolithic osdev rust
Last synced: 3 months ago
JSON representation
a experimental monolithic kernel in rust
- Host: GitHub
- URL: https://github.com/itsManjeet/rlxnix-kernel
- Owner: itsManjeet
- License: gpl-3.0
- Created: 2020-11-15T14:45:35.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2020-11-20T09:12:21.000Z (almost 4 years ago)
- Last Synced: 2024-08-17T16:13:52.895Z (3 months ago)
- Topics: kernel, linux, monolithic, osdev, rust
- Language: Rust
- Homepage:
- Size: 55.7 KB
- Stars: 18
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- Funding: .github/FUNDING.yml
- License: license
Awesome Lists containing this project
README
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![GPL License][license-shield]][license-url]
![Rust](https://github.com/itsManjeet/rlxnix/workflows/Rust/badge.svg)
An experimental monolithic kernel in rust
·
Report Bug
·
Request Feature
## Table of Contents
* [Getting Started](#getting-started)
* [Requirements](#requirements)
* [Installation and Testing](#installation-and-testing)
* [Roadmap](#roadmap)
* [Contributing](#contributing)
* [License](#license)
* [Contact](#contact)## Getting Started
rlxnix is a experimental monolithic kernel written in rust for analyzing and learning the internals of operating system in a memory safe language.
### Requirements
- rust, cargo (testing)
- qemu### Installation and Testing
```bash
cargo run
```## Roadmap
- [x] Target x86_64
- [x] Setup std macros via vga memory (print!,println!)
- [x] Unit testing framework
- [x] Descriptor tables
- [x] IRQ and ISRS
- [x] Implement basic Paging
- [x] Allocator Framework
- [ ] Buddy allocator ??
- [ ] Multitask Await/Async
- [ ] Virtual filesystem
- [ ] Initrd Support
- [ ] Usermode
- [ ] Switch to ring 0 -> 3
- [ ] Basic syscall support
- [ ] C runtime libraries
- [ ] Modules SupportSee the [open issues](https://github.com/itsmanjeet/rlxnix/issues) for a list of proposed features (and known issues).
## Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b 0.1.0`)
3. Commit your Changes (`git commit -m '[my-id] my awesome Feature'`)
4. Push to the Branch (`git push origin 0.1.0`)
5. Open a Pull Request## License
Distributed under the GPL3 License. See `license` for more information.
## Contact
Manjeet Singh - [@releaxos](https://twitter.com/releaxos) - [email protected][Join](https://discord.gg/TXTxDTYcdg) our discord server for any query
## Acknowledgement
- [https://os.phil-opp.com/](https://os.phil-opp.com/)
- [blog os](https://github.com/phil-opp/blog_os)
- [osdev](https://osdev.org)
- [JamesM's kernel development](http://www.jamesmolloy.co.uk/tutorial_html/)[contributors-shield]: https://img.shields.io/github/contributors/itsmanjeet/rlxnix.svg?style=flat-square
[contributors-url]: https://github.com/itsmanjeet/rlxnix/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/itsmanjeet/rlxnix.svg?style=flat-square
[forks-url]: https://github.com/itsmanjeet/rlxnix/network/members
[stars-shield]: https://img.shields.io/github/stars/itsmanjeet/rlxnix.svg?style=flat-square
[stars-url]: https://github.com/itsmanjeet/rlxnix/stargazers
[issues-shield]: https://img.shields.io/github/issues/itsmanjeet/rlxnix.svg?style=flat-square
[issues-url]: https://github.com/itsmanjeet/rlxnix/issues
[license-shield]: https://img.shields.io/github/license/itsmanjeet/rlxnix.svg?style=flat-square
[license-url]: https://github.com/itsmanjeet/rlxnix/blob/master/license
[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=flat-square&logo=linkedin&colorB=555