Skip to content

💿 🐧 some experiments with loading of the Linux and other kernels

License

Notifications You must be signed in to change notification settings

Linux-project/0bt

 
 

Repository files navigation

∅bt

The 0bt is a simple linux kernel bootloader written in ️C++ and assembly.

The main purpose of which is to describe the linux kernel boot protocol in action and to learn related low level stuff.

Only x86_64 architecture is supported now.

Building

The following programs and dependencies may be required:

To build 0bt from source code:

$ git clone https://github.com/0xAX/0bt
$ cd 0bt
$ make

The following options can be passed to make:

  • V=1 to enable verbose output during build.
  • DEBUG=1 to enable debug mode.
  • DISK_IMAGE=name.img to change default name of a disk image.
  • DISK_SIZE=4G to specify image size.
  • USE_FAT32_FS - to load kernel from FAT32 partition.

0bt provides other targets besides the all target. For other options see the output of:

make help

Usage

TODO

LICENSE

The source code of the 0bt is under Apache License 2.0 license.

See COPYING for more details.

The description of how everything works from Documentation is under BY-NC-SA Creative Commons license.

Contributing

Feel free to send a pull request if you found something wrong or you have any ideas.

If you don't know where to start, see TODO.md.

If you have any questions or suggestions, feel free to create new issue or drop me an email.

Author

@0xAX

About

💿 🐧 some experiments with loading of the Linux and other kernels

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Makefile 33.4%
  • Shell 32.6%
  • C++ 16.6%
  • Assembly 15.5%
  • Emacs Lisp 1.9%