GlowMorm是用C復古硬件的C編寫的簡單類似Unix的OS,特別是Computie68k系列的計算機。它主要基於Andrew S. Tanenbaum的閱讀操作系統設計和實施2,儘管我使用了整體設計,至少暫時是為了簡單,這是暫時的。它可以使用68681計時器進行先發製人的多任務處理。它還具有Minix版本1文件系統的實現,該文件系統使用RAM(通過設備驅動程序)存儲數據,或者使用作為IDE設備連接的緊湊型閃存卡。可以將第二個串行端口配置為滑動設備,並通過BSD插座式API對UDP和TCP進行基本實現,並提供了NTP命令,用於更新啟動時(從磁盤啟動時)更新系統時間。

上面的視頻顯示,通過現代PC連接連接,並重置硬件以在ROM中運行監視器,以顯示歡迎消息。內核已經加載到RAM中,因此運行啟動命令將啟動內核,然後啟動Shell。從外殼中顯示了一些基本的文件操作和PS命令。

上面的視頻顯示,在首次向板上供電後,通過現代計算機連接連接。監視器首先運行,給出“>”提示。在地址0x20000處,引導加載程序已被燃燒成閃光燈。從監視器中,運行引導加載程序,然後從附加的緊湊型閃存卡加載內核。打印的每個時期(。)字符代表從磁盤加載的數據的1千字節)。然後,啟動加載程序跳到已加載的內核,該內核在從磁盤運行初始化過程之前顯示引導消息。 INIT進程首先運行sh /etc/rc ,它運行NTPDATE命令以更新系統時間。然後運行一個交互式殼。
啟動後顯示了一些命令,然後運行HTTPD程序(暫時禁用該程序)。從另一台計算機中,運行curl命令向董事會發出請求。 HTTPD程序用數據“這是秘密消息”響應
要編譯內核以通過串行傳輸,請運行:
make kernel.load它可以像監視器一樣通過串行發送。如果您使用沒有CompactFlash卡的板,則可能需要在src/kernel/main.c中修改內核配置,或者不想使用網絡。
可以使用環回設備構建圖像,並以下命令:
make create-image
make mount-image
make build-system
make umount-image它將使用build/目錄作為MountPoint和Minix1文件系統在minix-build.img中產生20MB磁盤圖像。它不包括分區表,因此需要通過其他方式在閃存驅動器上創建。它可以使用類似Unix的桌面上的dd寫入特定於分區的塊設備文件。
為了直接啟動CompactFlash,可以將boot.load腳本加載到串行中並寫入替代位置,例如0x020000 。它必須是在Flash Chip扇區之外的位置,在其中寫了監視器,否則係統將無法引導。 boot.bin映像不包含像Monitor.bin Image所做的矢量表。
通過串行發送boot.load文件後,在監視器中不運行該文件後,運行以下內容:
eraserom 20000
writerom 20000
verifyrom 20000然後,您可以隨時從監視器啟動:
boot 20000引導加載程序將對從磁盤加載到RAM的每1K內核圖像的每1K映像中打印一個週期字符,然後將其運行內核。如果有效,您應該看到心跳LED閃爍以表明內核正在運行,並且啟用了多處理和切換。
如果第二個串行端口連接到桌面,它將像滑動連接一樣,可以將其橋接到桌面的網絡中,其中/dev/ttyUSB1是連接到董事會第二個串行端口的串行設備,而192.168.1.x是本地網絡,ENP3S0是Internet網絡網絡互聯網互聯網絡桌面的網絡檯面The Linux the linux duxce inux the linux duxpop on linux dound dound dound dound檯面:
sudo slattach -s 38400 -p slip /dev/ttyUSB1
sudo ifconfig sl0 192.168.1.2 pointopoint 192.168.1.200 up
# (this is automatically added on my machine, but might be required) sudo route add -host 192.168.1.200 sl0
sudo arp -Ds 192.168.1.200 enp3s0 pub
sudo iptables -A FORWARD -i sl0 -j ACCEPT
sudo iptables -A FORWARD -o sl0 -j ACCEPT
sudo sh -c " echo 1 > /proc/sys/net/ipv4/ip_forward "該設備將具有IP 192.168.1.200它也需要在底部的內核src/kernel/main.c函數中配置。