All Projects → Remco123 → Cactusos

Remco123 / Cactusos

Licence: mit
A operating system made for fun.

Labels

Projects that are alternatives of or similar to Cactusos

Krabs
An x86 bootloader written in Rust.
Stars: ✭ 413 (+507.35%)
Mutual labels:  osdev
Heap allocator
A simple heap memory allocator in ~200 lines.
Stars: ✭ 661 (+872.06%)
Mutual labels:  osdev
Dennix
Dennix is a unix-like hobbyist operating system written from scratch.
Stars: ✭ 53 (-22.06%)
Mutual labels:  osdev
Gramado
Gramado OS - 32bit operating system
Stars: ✭ 420 (+517.65%)
Mutual labels:  osdev
Libhermit Rs
libhermit-rs: A Rust-based library operating system
Stars: ✭ 558 (+720.59%)
Mutual labels:  osdev
Os2
x86_64 OS kernel with completely async userspace and single address space [WIP; but basic kernel functionality implemented]
Stars: ✭ 25 (-63.24%)
Mutual labels:  osdev
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 (+6792.65%)
Mutual labels:  osdev
Marvinos
A hobby Operating System developed from scratch using C/C++ and assembly
Stars: ✭ 60 (-11.76%)
Mutual labels:  osdev
Uefi Rs
Rust wrapper for UEFI.
Stars: ✭ 582 (+755.88%)
Mutual labels:  osdev
Cuteos
A 64-bit SMP-safe kernel for the PC architecture.
Stars: ✭ 51 (-25%)
Mutual labels:  osdev
Powernex
An operating system written in D
Stars: ✭ 460 (+576.47%)
Mutual labels:  osdev
Nanos
A kernel designed to run one and only one application in a virtualized environment
Stars: ✭ 557 (+719.12%)
Mutual labels:  osdev
Fotix
My very own UNIX clone, for education/self-amusement.
Stars: ✭ 8 (-88.24%)
Mutual labels:  osdev
Aquila
AquilaOS: UNIX-like Operating System
Stars: ✭ 413 (+507.35%)
Mutual labels:  osdev
Skift
🥑 A simple, handmade, operating system with a graphical user interface.
Stars: ✭ 1,068 (+1470.59%)
Mutual labels:  osdev
Wingos
a little 64bit operating system written in c++ with smp support
Stars: ✭ 361 (+430.88%)
Mutual labels:  osdev
Soso
A Simple Unix-like operating system
Stars: ✭ 682 (+902.94%)
Mutual labels:  osdev
Toaru Nih
NOTICE: The ToaruOS-NIH Project has been MERGED UPSTREAM. This repository is now archived.
Stars: ✭ 66 (-2.94%)
Mutual labels:  osdev
Greentea
🍵 Userspace of the @GreenteaOS
Stars: ✭ 56 (-17.65%)
Mutual labels:  osdev
Posnk
An operating system project.
Stars: ✭ 34 (-50%)
Mutual labels:  osdev

CactusOS

CactusOS is a simple operating system that is aimed to not be anything like linux. I am just trying to build my own OS and definitely not the best one. It should run on every 32 bit emulator and pc but if it doesn't please let me know.

Current Features

  • Higher Half Kernel [Done]
  • PCI Device Enumeration [Done]
  • Virtual 8086 Mode [Done]
  • VESA Vbe after boot [Done]
  • Disk support (ATA/ATAPI) [Basic]
    • PCI IDE Controller [Done]
    • PCI AHCI Controller [Basic]
  • Filesystem support [Basic]
    • ISO9660 [Done]
    • FAT(12/16/32) [Basic]
  • Multitasking [Basic]
  • Usermode [Done]
  • Graphical Desktop [Basic]
  • Applications
    • Calculator [Basic]
    • Clock [Basic]
    • Terminal [Basic]
    • Mine Game [Done]
  • USB Support [Basic]
    • UHCI
    • OHCI
    • EHCI
    • xHCI Not supported yet
  • USB Devices [Basic]
    • Mouse
    • Keyboard
    • Dual Receiver
    • Mass Storage Device
  • Installer [Basic]
    • FAT Filesystem creation
    • Complete system install on hard drive
  • Boot from USB [Done]

Planned Features

  • Update all code to new log method
  • More complete custom build api for apps
  • Some basic applications
    • File Manager
  • GUI visual improvement, could look a whole lot better

Building

To build CactusOS I recommend running a linux like environment, personaly I use ubuntu 4.15.0-47-generic. A i686-elf cross compiler is also required, see Osdev wiki.

Make build options

  • make CactusOS.bin To build the binary
  • make CactusOS.iso To build the cdrom image
  • make clean To remove all the compiled files
  • make qemu Build the CactusOS.iso file if necessary and then run the kernel using qemu

Bochs

By default the os does not have graphics when running on bochs, to bypass this set the value BOCHS_GFX_HACK to 1 in kernel/include/system/system.h.

Installing

You can install the operating system onto a hard-drive using the setup program. This program is built into the kernel and can be launched by pressing enter during the "Press Enter to run Installer" prompt. This option is only availible in the liveCD.

Screenshots

Bootscreen Debugging with vscode debugger Graphical Desktop
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].