All Projects → ethan4984 → Rock

ethan4984 / Rock

Licence: bsd-2-clause
a 64 bit OS made for fun and learning

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Rock

FOMOSv2-CL
FOMOS stands for: Free, Open source, Mobile, Operating, System.
Stars: ✭ 24 (-84.21%)
Mutual labels:  x86-64, operating-system
Managarm
Pragmatic microkernel-based OS with fully asynchronous I/O
Stars: ✭ 502 (+230.26%)
Mutual labels:  x86-64, operating-system
ByteOS
A simple hobby operating system for the x86-64 architecture, written in C.
Stars: ✭ 47 (-69.08%)
Mutual labels:  x86-64, operating-system
SynnixOS
Hobbyist Operating System targeting x86_64 systems. Includes userspace, Virtual File System, An InitFS (tarfs), Lua port, easy porting, a decent LibC and LibM, and a shell that supports: piping, file redirection, and more.
Stars: ✭ 40 (-73.68%)
Mutual labels:  x86-64, operating-system
Dennix
Dennix is a unix-like hobbyist operating system written from scratch.
Stars: ✭ 53 (-65.13%)
Mutual labels:  x86-64, operating-system
KnutOS
An x86_64 hobbyist OS written in C and Assembly
Stars: ✭ 16 (-89.47%)
Mutual labels:  x86-64, operating-system
Wingos
a little 64bit operating system written in c++ with smp support
Stars: ✭ 361 (+137.5%)
Mutual labels:  x86-64, operating-system
Onyx
UNIX-like operating system written in C and C++
Stars: ✭ 52 (-65.79%)
Mutual labels:  x86-64, operating-system
Cuteos
A 64-bit SMP-safe kernel for the PC architecture.
Stars: ✭ 51 (-66.45%)
Mutual labels:  x86-64, operating-system
Blog os
Writing an OS in Rust
Stars: ✭ 8,120 (+5242.11%)
Mutual labels:  x86-64, operating-system
FoxOS
The FoxOS main repository
Stars: ✭ 48 (-68.42%)
Mutual labels:  x86-64, operating-system
Axel
Operating System
Stars: ✭ 96 (-36.84%)
Mutual labels:  x86-64, operating-system
pranaOS
A unix operating system written from scratch in c that gives support for arm, x86
Stars: ✭ 138 (-9.21%)
Mutual labels:  x86-64, operating-system
utero
The Operating System (for x86_64) written in Crystal as much as possible
Stars: ✭ 55 (-63.82%)
Mutual labels:  x86-64, operating-system
biefircate
Running x86-16 or x86-32 code from x86-64 UEFI; _very experimental_ • mirror of https://gitlab.com/tkchia/biefircate • developer notes at https://gitlab.com/tkchia/biefircate/-/blob/main/doc/NOTES.asciidoc
Stars: ✭ 47 (-69.08%)
Mutual labels:  x86-64, operating-system
Toaruos
A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
Stars: ✭ 4,687 (+2983.55%)
Mutual labels:  operating-system, x86-64
MoonOS
MoonOS (just a kernel atm) is a micro kernel designed for the x86_64 and arm architecure.
Stars: ✭ 82 (-46.05%)
Mutual labels:  x86-64, operating-system
ArvernOS
💾 A minimal, experimental and "toy" monolithic kernel to learn about OS development // Work In Progress
Stars: ✭ 313 (+105.92%)
Mutual labels:  x86-64, operating-system
Beelzebub
The Lord of Flies - A hobby operating system
Stars: ✭ 24 (-84.21%)
Mutual labels:  x86-64, operating-system
Dgos
Operating System
Stars: ✭ 90 (-40.79%)
Mutual labels:  x86-64, operating-system

Rock

rockOS is a simple Unix-Like operating system using mlibc

Features

  • x86_64 kernel
    • MM
      • vmm
      • pmm
      • slab allocator
    • FS
      • ext2
      • ramfs
      • devfs
      • vfs
    • SCHED
      • smp
      • preemptive multicore scheduler
    • DRIVERS
      • pci
      • ahci
      • tty
      • nvme (coming soon)
      • e1000 (work in progrss)

Goals

  • Fully port bash, we already can run bash but it is missing a lot of things
  • Create a network stack with TCP, ARP, UDP, DHCP, ICMP, etc

Build Instructions

Here are some programs you will need to build rock:

  • nasm
  • make
  • qemu
  • tar
  • sed
  • wget
  • git
  • xbstrap

Once you have those run the script build_tools.sh in /tools and then do make build_toolchain in /user

To compile and run rock, there are three default build targets available:

  • make qemu
    • run with regular qemu (live serial debugger)
  • make info
    • run with the qemu console
  • make debug
    • run with the qemu interrupt monitor

Contributing

Contributors are very welcome, just make sure to use the same code style as me :^)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].