Skip to content

itsManjeet/rlxnix-kernel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues GPL License Rust


Logo

An experimental monolithic kernel in rust


· Report Bug · Request Feature

Table of Contents

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

    cargo run

Roadmap

  • Target x86_64
  • Setup std macros via vga memory (print!,println!)
  • Unit testing framework
  • Descriptor tables
  • IRQ and ISRS
  • Implement basic Paging
  • Allocator Framework
    • Buddy allocator ??
  • Multitask Await/Async
  • Virtual filesystem
    • Initrd Support
  • Usermode
    • Switch to ring 0 -> 3
    • Basic syscall support
    • C runtime libraries
  • Modules Support

See the open 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 - [email protected]

Join our discord server for any query

Acknowledgement

Releases

No releases published

Sponsor this project

Packages

No packages published

Languages