Skip to content

xinhuang327/TacOS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TacOS

My from-scratch OS with it's own kernel written in C and assembly

TacOS is a UNIX-like kernel which is able to run DOOM, among various other smaller userspace programs. It has things like a VFS, scheduler, TempFS, devices, context switching, virtual memory management, physical page frame allocation, and a port of Doom. It runs both on real hardware (tested on my laptop) and in the Qemu emulator.

A screenshot of TacOS's shell A screenshot of TacOS running DOOM

Please note that TacOS is a hobby toy OS and is not complete enough for real usage. It has multiple known bugs.

I have a Discord server for PotatOS where I will share most updates, and you can also get help with your own OSDev project or just have a chat. You can join here.

Quickstart

To build and run TacOS, simply run in your shell:

git clone https://github.com/UnmappedStack/TacOS
cd TacOS
git clone https://github.com/limine-bootloader/limine
cd limine
git checkout v9.x-binary
cd ..
make

You'll need to have Qemu, NASM, and Clang installed. It will automatically run in the Qemu emulator.

Run in Mingw qemu

qemu-system-x86_64 tacos.iso -serial stdio -no-shutdown -no-reboot -monitor telnet:127.0.0.1:8000,server,nowait -d int,cpu_reset,in_asm -D log.txt -m 4G

License

TacOS is under the Mozilla Public License 2.0. See LICENSE for more information.

About

An x86_64 UNIX-like OS from scratch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 92.3%
  • Assembly 3.7%
  • Makefile 3.7%
  • Linker Script 0.3%