Skip to content

A secure and efficient unix-like kernel

License

Notifications You must be signed in to change notification settings

CSSDStudioCXY/Mernel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mernel

✨ A secure and efficent unix-like kernel ✨

license

Docs · Installation · Development Documentation · 中文

Introduction

Mernel is a Unix-like system kernel designed to provide an easy-to-use platform for learning kernel development and operating system principles.Mernel is a macro kernel, meaning that the kernel and the application run in the same memory space. This makes the Mernel lighter, faster, and easier to develop and debug.

The Mernel is written in Rust and C for core kernel functionality and driver development respectively.

Our Community

Offical Website: https://mernel.ctri.cc

Email: QiyiMing

Troubleshooting

Kernel compilation failure

If you encounter an error while compiling the Mernel, you can try the following steps to resolve it.

  • Make sure you have installed the required dependencies, including Rust, Cargo, GCC, and NASM.
  • Check the code for syntax errors or compilation errors. You can use Rust's cargo check command to check the code for syntax issues.
  • Try to clean the compile cache and recompile. You can use the cargo clean command to clean the compilation cache and then recompile with cargo build.

Kernel load failure

If you encounter an error while loading the Mernel using GRUB, you can try the following steps to resolve it.

  • Make sure that the kernel.bin file has been copied to the root directory of the floppy or USB flash drive.
  • Make sure that the path in the GRUB configuration file (usually grub.cfg) points to kernel.bin correctly.
  • Try using the ls command to view the contents of the floppy or USB flash drive to ensure that it contains the kernel.bin file.
  • Try looking at the GRUB environment variables with the set command to ensure that the root variable is pointing to the correct device.

If your problem is not in the list above, try creating an issue and our staff will get back to you when they see it

Problem Feedback

Mernel is a young kernel and is still under development. If you encounter a problem with Mernel, please do not assume that it is a bug in Mernel; first check if there is something wrong with your operation and see if there is a solution in the documentation and troubleshooting section.

If you are sure it is a Mernel bug, please submit an issue in the Issues section of this repository, describing the problem in as much detail as possible and including information such as error messages, steps, and environment information such as error messages, steps, and environment information. This will help us to locate and fix the bug as soon as possible.

If you are sure it is a Mernel bug, please submit an issue in the Issues section of this repository, describing the problem in as much detail as possible and including information such as error messages, steps, and environment information. This will help us to locate and fix the bug as soon as possible.

Contribute

Please refer to the Contributing Guidelines

Sponsorship

Since this project is not for profit, we need your donation

Please visit: https://afdian.net/a/qiyiming

Donate to us!

License

Mernel adopts GPL2.0 license to open source

We accept sponsorship, but we do not accept profit

Any violation of the license is not permitted

Thanks to

Thank you to all who have contributed to the Mernel project!

Hanwen Ying: some kernel code, a few software drivers, documentation fixes

Yiming Qi: part of kernel code, documentation fixes, administrator

Yifeng Li: part of kernel code, part of software driver, documentation fixes, architecture design

Yufan Zhang:Software testing, project planning

cynosure279: part of kernel code

Acpear: part of kernel code

About

A secure and efficient unix-like kernel

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published