develop os free
v1.0
这是我在鲍曼莫斯科州立技术大学计算机科学与技术系的“操作系统”主题的第五学期课程。
主要目的是熟悉低级别的OS内核操作原则。作为一个序列,为I/O任务(例如Putchat,Printf,Gets,Scanf)和内存管理(Malloc,Free等)开发最小的C库。最后,编写一个展示其效率的应用程序。该课程在Mark 5/5中进行了评估。
使用Make Tool的项目构建。 MakeFile包含所有逻辑。这是主要步骤:
从最新版本中获取图像文件(disk.img),然后将其写入USB或使用X86模拟器运行。对于Qemu,这是以下命令:
spam@eggs: ~ $ sudo qemu-system-i386 -hda disk.imgLinux 。目前正在开发和测试Ubuntu 18.04 LTS最小值。
首先确保已安装了依赖项块中列出的所有工具。然后执行以下操作:
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 rebuild要使用QEMU模拟器测试它,请运行:
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'或和'/dev/loop3'”到任何免费的循环设备:
loop_first = /dev/loop2
loop_second = /dev/loop3
最后做:
spam@eggs: ~ $ make rebuild
