rou2exOS Rusted Edition builds upon the foundation of RoureXOS, presenting a modernized hobby OS crafted in Rust. With features like QEMU emulation and support for x86_64 baremetal, it opens doors for experimentation in OS development. Users can easily build, run, and test their OS while enjoying a streamlined setup process.
rou2exOS Rusted Edition is an innovative operating system that represents the second iteration of the RoureXOS project, completely rewritten in Rust for improved performance and safety. This DOS-like hobby OS is designed for enthusiasts and developers interested in exploring alternative operating systems.
For further insights into its development, refer to the following resources:
Key Features
- Runs on an ISO image, compatible with the QEMU emulator.
- Successfully tested on x86_64 bare metal, booting from a USB flash disk.
Building and Running the OS
The following commands illustrate how to build and run the operating system:
# Install Rust and its dependencies
make init
# Ensure required tools are installed on a Linux system
sudo dnf install xorriso net-tools grub2-tools qemu qemu-common qemu-system-x86
# Compile the kernel and bootloader, and create an ISO image
make build
# Run the QEMU emulator with the ISO image
make run_iso
make run_iso_floppy
# (Alternative) Run the kernel exclusively
cargo bootimage
make run
Testing ICMP/SLIP
To test ICMP/SLIP functionality, execute the following steps:
-
Run the kernel in QEMU to retrieve the pty number from the output:
make run
This will show the character device location, for example:
char device redirected to /dev/pts/3 (label serial0)
-
Create the
sl0
interface for SLIP packets:sudo slattach -L -p slip -s 115200 /dev/pts/3 sudo ifconfig sl0 192.168.3.1 pointopoint 192.168.3.2 up
-
Use
tcpdump
to monitor packets on thesl0
interface:sudo tcpdump -i sl0
This project is ideal for those with an interest in operating systems and low-level programming, offering a hands-on approach to learning and experimentation.
No comments yet.
Sign in to be the first to comment.