Skip to content

A simple OS used to study made by two students

License

Notifications You must be signed in to change notification settings

xiaoyi1212/Plant-OS

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

About Plant OS

  • Plant OS is an operating system used for learning purposes only.
  • At first, the operating system was in 16-bit real mode, but now it is in 32-bit protected mode (386 version).
  • Due to COVID-19, Zhou Zhihao stayed at home and started the project in December 2020.
  • The project was about operating systems and Zhou Zhihao named it 'Powerint,' meaning powerful interrupts that we can use. After coding for about a year, the operating system had the normal functionality like MS-DOS but it was still in 16-bit real mode.
  • In December 2021, the writer of Simple OS, Qiu Chenjun, collaborated with Zhou Zhihao. They helped Plant OS transition into a new world, 32-bit protected mode, and renamed it Plant OS.
  • After over a year of coding, Plant OS is continuously improving. Anyhow, you should know that Plant OS is made for learning how the computer works, it can't be your everyday OS to work. And Plant OS still has many bugs, if you want and can, you can fix the bugs and make a pull request, we will merge. By the way, the OS maybe stays in protect mode forever because we are still students, we don't have enough time to improve the OS, forgive us. Also, if you find some bugs, you can make a issue, we will fix it up as quickly as possible (if we have enough abilities to fix)

Build

Note: you may need to install nasm, gcc, g++, mtools and qemu before build

First, you have to clone the repo, like this:

git clone https://github.com/ZhouZhihaos/Powerint-DOS-386.git

Second, go to the apps folder:

cd apps

Then, use make to compile the apps:

make

If you don't see an error message, then go to the Loader folder then type make in the cmd prompt:

cd ..
cd Loader
make

If you don't see an error message, then you can run flowing commands to go to the kernel folder and build the kernel:

cd ..
cd kernel
make

Or you can add run in order to start debug after the compilation:

make run

You will see Powerint DOS splitted into four images in kernel/img folder.

Done! You can try Powerint DOS by using qemu or any other virtualization software you like right now!

Boot

In kernel directory:

make full_run

you can also use make run or make img_run, they differ.

Doom Game

If you want to run Doom, after the build:

  1. You can binary concat kernel/img/doom1.img and kernel/img/doom2.img. After that, run in kernel directory:
qemu-system-i386 -net nic,model=pcnet -net user -serial stdio -device sb16 -device floppy -fda ./img/Powerint_DOS_386.img -drive id=disk,file=disk.img,if=none -device ahci,id=ahci -device ide-hd,drive=disk,bus=ahci.0 -hdb <YOUR-DOOM-HARD-DISK-FILE-NAME> -boot a -m 512 -enable-kvm
  1. You can also use doomcpy provided by PlantOS, see doomcpy.c.

Developer

Thanks

  • TheFlySong
  • yywd_123
  • Oildum-was-ejected
  • wenxuanjun
  • duoduo70(time.c)
  • ...

About issues

I am so glad to see you want to report bugs by issues. But anyhow, you should follow some rules to help us fix bugs quickly.

That's the rules (Chinese, not English)

If you accept following the rules, send issues whenever you want and no matter how serious the problem is.

About

A simple OS used to study made by two students

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 80.6%
  • Assembly 10.5%
  • C++ 5.4%
  • Objective-C 1.6%
  • Perl 0.7%
  • Lua 0.4%
  • Other 0.8%