上一节已经一万字了,只好再加一节
如果想要直接 体验 实验效果 可以直接执行本章的命令
生成的img文件可以在qemu中正常运行的话,那么在 真实硬件上基本 也是可以 正常安装操作系统
上一节内容
截止到上一节我们已经成功地在 centos7中安装了 ctags ,qemu等插件
执行以下命令,在 windows中创建博主搭建好的环境
#创建一个 centos 开发环境,来体验开发ucoreos的过程 docker run -tdi -p 21022:22 -p 21088:8888 --name ucoreos --privileged=true registry.cn-hangzhou.aliyuncs.com/mkmk/conda:qemu init | docker exec -d ucoreos /bin/bash -c "cd /home && source /etc/profile && nohup jlab &"
搭建环境以后,可以直接访问,开发界面
密码口令 lmklmk
以下的很多问题你们可能并不会遇到,因为博主在构建 开发环境的时候已经消除了 很多 bug,可以尝试直接运行 成功的命令
直接运行lab1
运行jupyter 环境后,打开终端,输入以下命令
一个完整的启动操作系统的命令
cd /home/ucoreos/ucore_os_lab-master/labcodes_answer/lab1_result && make && cd bin && qemu-system-x86_64 -hda ucore.img -parallel stdio -nographic
终止命令,需要新建终端
pkill -9 qemu-system-x86
如果感到有趣,想要认真学习除了认真阅读上一节的材料,也需要认真阅读以下的实验参考教程
实验参考教程https://chyyuu.gitbooks.io/ucore_os_docs/content/
详细过程: 查看lab1效果
编译生成可以 用来加载的 img文件
cd /home/ucoreos/ucore_os_lab-master/labcodes_answer/lab1_result
make生成img镜像文件,在labcodes_answer/lab1_result 目录下
make
到生成的 bin目录查看是否生成 镜像文件
cd bin && ls 输出 bootblock kernel sign ucore.img
发现存在 ucore.img ,讲 ucore.img 挂载到 qemu 虚拟机中
开始模拟真机
qemu-system-x86_64 -hda ucore.img -parallel stdio
错误提示 缺少qemu: could not load PC BIOS ‘bios-256k.bin’
yum install seabios -y
模拟真机失败
qemu-system-x86_64 -hda ucore.img -parallel stdio (process:1165): GLib-WARNING **: 06:42:36.693: gmem.c:489: custom memory allocation vtable not supported (qemu-system-x86_64:1165): Gtk-WARNING **: 06:42:36.716: cannot open display:
不能连接图形设备,那我们就禁用掉图形显示设备,加上参数 -nographic
模拟真机成功
qemu-syst
说明操作系统已经可以在虚拟机中正常启动,每秒输出一次 110000 ttiicckkss
但是无法正常终止
查询pid ps -a
强行杀死虚拟机进程 kill 943 也可以直接根据进程启动的名称来杀死 注意不要加 _64 否则命令无效 pkill -9 qemu-system-x86
make clean 命令清除不必要文件。可以删除之前make 生成的文件 输出 rm -f -r obj bin