This repository contains the source code for a multithreaded kernel written in C with some Assembly and Makefile components.
The multithreaded kernel project aims to develop a basic but functional kernel that supports multithreading. This kernel is intended for educational purposes and to provide a foundation for further development. The project showcases key concepts in operating system development, such as thread management, memory management, and interrupt handling.
- Multithreading support: Allows the kernel to handle multiple threads concurrently.
- Basic system calls: Provides fundamental system calls for thread management and I/O operations.
- Memory management: Implements basic memory allocation and deallocation mechanisms.
- Interrupt handling: Manages hardware and software interrupts to ensure proper kernel functioning.
To build and run the multithreaded kernel, follow these steps:
-
Clone the repository:
git clone https://github.com/adityasinghz/multithreaded-kernel.git cd multithreaded-kernel
-
Build the kernel:
make
-
Run the kernel: Use an emulator like QEMU to run the kernel:
make run
To use the kernel, you can follow these basic instructions:
- Boot the kernel: After building, the kernel can be booted using an emulator.
- Execute commands: The kernel provides a simple command interface for testing system calls and thread operations.
- Develop and test: You can modify the kernel code and test new features by rebuilding and running it.
Contributions are welcome! Please follow these steps to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or issues, please open an issue in the repository or contact the repository maintainer.