2026-02-26 14:47:41 +00:00
2026-02-26 14:47:41 +00:00
2026-02-09 20:41:49 +00:00
2025-11-17 20:46:21 +00:00
2026-02-09 20:41:49 +00:00
2026-02-09 20:41:49 +00:00
2025-10-30 22:57:31 +00:00
2026-02-09 20:41:49 +00:00

What is this?

This is a simple implementation of a computer kernel
written in pure x86 assembly with features including

What is it for?

This project is aimed at people wanting to learn
more about kernels and low level system functionality.
In order to help with comprehension, there are a lot
of inline comments descibing what each part does.

Commands

  • CAT : outputs the contents of the file.
  • LS: outputs a list of files on the system .
  • CLEAR: clears the screen.
  • REBOOT: reboots the system, this can also be done with [esc].
  • BAS : runs a basic script.

Running it

In order to build this project on a Linux system run
the following commands.

git clone https://git.javalsai.tuxcord.net/deadvey/crawos.git
cd crawos
sudo make

This will create a directory called 'disk_images' which
contains optical and floppy images that can be ran in a
virtual machine such as QEMU with

qemu-system-i386 -drive file=disk_images/crawos.img,if=floppy,format=raw

Or it can be burnt to a physical disk to be booted from
hardware.

Development

In order to run this project in testing mode you can use
The 'test-linux.sh' bash script which will assemble and
boot the virtual machine (QEMU) for testing purposes.

./test-linux.sh

This will dump the contents of memory in /dev/shm/qemu-ram
To allow for easier debugging.

BASIC development

Please refer to the MikeOS BASIC documentation
docs on writing BASIC code. In order to create new
files, place them in the /data/ directory, note the file
names are limited to 11 characters due to FAT12 limitations
(8 for the name and 3 for the extension).

Description
No description provided
Readme GPL-3.0 644 KiB
Languages
Assembly 96.8%
Shell 1.5%
Makefile 1.2%
BASIC 0.3%
QuickBASIC 0.2%