develop os free
v1.0
これは、バウマンモスクワ州立工科大学のコンピューターサイエンステクノロジーズ学科の「オペレーティングシステム」の科目に関する私の5番目の学期コースワークです。
主な目的は、低レベルでのOSカーネル操作の原則に精通することです。シーケンスとして、I/Oタスクの最小Cライブラリ(Putchat、printf、get、scanfなどの関数)やメモリ管理(malloc、freeなど)の最小Cライブラリを開発します。最後に、効率性を示すアプリを作成します。コースワークはマーク5/5で評価されました。
Make Toolを使用したプロジェクト構築。 MakeFileにはすべてのロジックが含まれています。主な手順は次のとおりです。
最新リリースから画像ファイル(disk.img)を取得し、USBに書き込むか、x86エミュレータで実行します。 Qemuの場合、それは次のコマンドです。
spam@eggs: ~ $ sudo qemu-system-i386 -hda disk.imgLinux 。現在、Ubuntu 18.04 LTS Minimalで開発およびテストしています。
まず、依存関係のブロックにリストされているすべてのツールがインストールされていることを確認してください。次に、次のことを行います。
spam@eggs: ~ $ git clone https://github.com/nexterot/develop-os-free
spam@eggs: ~ $ cd develop-os-free
spam@eggs: ~ $ makeエラーが発生した場合、またはディレクトリをクリーニングするためだけに:
spam@eggs: ~ $ make cleanまた、次のコマンドはmake clean && makeのエイリアスです。
spam@eggs: ~ $ make rebuildQEMUエミュレータでテストするには、実行してください。
spam@eggs: ~ $ make run losetup: bin/disk.img: failed to set up loop device: Device or resource busy
ビジーループデバイスを見つける:
spam@eggs: ~ $ losetup -a次に、MakeFileで次の行を編集し、「/dev/loop2」または and '/dev/loop3'をフリーループデバイスに変更します。
loop_first = /dev/loop2
loop_second = /dev/loop3
最後に:
spam@eggs: ~ $ make rebuild
