NDHU_Operating_system_engineering_2023
project belongs to the Operating system engineering at National Dong Hwa University. The purpose of this project is to compile source code then create a Linux Operating system in QEMU system emulator, finally you can input linux command line in terminal
- C18
- Ubuntu 22.04
- QEMU
- Upgrade package
sudo apt-het update
- Install QEMU
sudo apt-get install qemu-system-i386 -y
- Setting environment path for QEMU
vim ~/.bashrc
- Add the context in last line
export PATH=$PATH:/usr/bin
- Save and quit vim then apply path
source ~/.bashrc
- Clone the repo and enter repo folder
git clone https://github.com/appleiphonedddd/NDHU_Operating_system_engineering_2023.git
cd NDHU_Operating_system_engineering_2023
filetree
├── asm.h
├── bio.c
├── bootasm.S
├── bootmain.c
├── buf.h
├── BUGS
├── cat.c
├── console.c
├── cuth
├── date.h
├── defs.h
├── dot-bochsrc
├── echo.c
├── elf.h
├── entryother.S
├── entry.S
├── exec.c
├── fcntl.h
├── file.c
├── file.h
├── forktest.c
├── fs.c
├── fs.h
├── gdbutil
├── getProcInfoTest.c
├── getTicksTest.c
├── grep.c
├── ide.c
├── init.c
├── initcode.S
├── ioapic.c
├── kalloc.c
├── kbd.c
├── kbd.h
├── kernel.ld
├── kill.c
├── lapic.c
├── LICENSE
├── ln.c
├── log.c
├── lotteryTest.c
├── ls.c
├── main.c
├── Makefile
├── memide.c
├── memlayout.h
├── mkdir.c
├── mkfs.c
├── mmu.h
├── mp.c
├── mp.h
├── multiLevelTest.c
├── Notes
├── param.h
├── picirq.c
├── pipe.c
├── printf.c
├── printpcs
├── prioritySchedTest.c
├── proc.c
├── proc.h
├── pr.pl
├── README.md
├── rm.c
├── roundRobinTest.c
├── runoff
├── runoff1
├── runoff.list
├── runoff.spec
├── sh.c
├── show1
├── sign.pl
├── sleep1.p
├── sleeplock.c
├── sleeplock.h
├── spinlock.c
├── spinlock.h
├── spinp
├── stat.h
├── stressfs.c
├── string.c
├── swtch.S
├── syscall.c
├── syscall.h
├── sysfile.c
├── sysproc.c
├── thread_creator.c
├── threadsTest1.c
├── threadsTest2.c
├── threadsTest3.c
├── toc.ftr
├── toc.hdr
├── trapasm.S
├── trap.c
├── traps.h
├── TRICKS
├── types.h
├── uart.c
├── ucalloc.c
├── ulib.c
├── umalloc.c
├── user.h
├── usertests.c
├── usys.S
├── vectors.pl
├── vm.c
├── wc.c
├── x86.h
└── zombie.c
Compile Makefile then you can input linux command line in terminal
make qemu-nox
- QEMU
- MIT XV6
- MIT XV6 official
- XV6: A simple, Unix-like teaching Operating System
- Multiprocessor Specification
- IOAPIC
- Operating Systems concept
Name:Egor Lee