网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
10月13日漏签0天
limbo模拟器吧 关注:25,707贴子:250,870
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 0回复贴,共1页
<<返回limbo模拟器吧
>0< 加载中...

自制QEMU可运行的操作系统

  • 只看楼主
  • 收藏

  • 回复
  • scicat科技猫
  • Android
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
从Lunix学做QEMU可运行系统(精华精简版)
想入门操作系统,不用啃Linux百万行代码。Gitee的Lunix(仓库:https://gitee.com/scicat-team/lunix )是轻量教学类Unix系统,核心仅20KB,像“系统毛坯房”——搭好基础框架,新手补细节就能快速做出QEMU可运行系统。
1. 核心认知:操作系统要做啥?
本质是“衔接硬件与软件”:开机引导硬件,运行时管显示/键盘,加载终端、记事本。Lunix只实现这些核心,比如VGA显示、开关机、终端命令。
开发像“盖房”:地基(引导程序)→骨架(内核)→门窗(应用),Lunix已画好前两步草图。
2. 4类必装工具(1条命令搞定)
QEMU:虚拟电脑,跑系统镜像,调试方便(5.0+);
LLVM工具链(Clang+LLD):转C/汇编为机器码;
NASM:处理引导代码(开机先认汇编);
Git:下Lunix代码。
Ubuntu/Debian安装:
sudo apt install qemu-system-x86 clang lld nasm git
Windows/Mac下安装包即可。
3. 引导程序:让电脑找到内核
开机后BIOS先找引导程序(Lunix在boot/boot.asm),核心做两件事:
1.从磁盘加载内核到内存;
2.切到CPU保护模式(支持大内存,防乱调用硬件)。
启动链:BIOS→boot.asm→加载内核→交权,直接参考Lunix几十行代码,不用重写。
4. 内核框架:系统的“承重梁”
Lunix内核在kernel/(C语言为主),抓3个核心:
显示(vga.c):VGA文本模式下,往显存写“字符+颜色”就显内容,Lunix有基础函数;
硬件(power.c):开关机是给CPU端口发指令,Lunix留框架,查手册补指令;
内存定位(linker.ld):告诉编译器内核放内存哪,Lunix脚本可直接用,错了会崩。
5. 简单应用:让系统能用
内核跑起来后,加两个基础应用(Lunix在desktop/):
终端:解析命令(如help显命令、notepad开记事本),Lunix有解析基础;
记事本:接收键盘输入→显屏幕→模拟保存,Lunix支持导航/删字符,补按键检测即可。
6. 编译运行:5步启动
按Lunixscripts/build.sh逻辑来:
1.编引导:nasm -f bin boot/boot.asm -o build/boot.bin;
2.编内核/应用:clang -target i686-pc-none-elf -nostdlib -ffreestanding -Iinclude -c [lbk]源文件[rbk] -o [lbk]目标文件[rbk];
3.链接内核:ld.lld -m elf_i386 -nostdlib -static -T kernel/linker.ld -o build/kernel.elf [lbk]所有.o文件[rbk];
4.做镜像:dd if=/dev/zero of=build/disk.img bs=512 count=2880,再把boot.bin和kernel.bin写进去;
5.QEMU运行:qemu-system-i386 -drive format=raw,file=build/disk.img -m 512M。
7. 后续完善:从毛坯到可用
Lunix很多功能是空白,可优先补:
fs.c:实现真实文件读写(让记事本存内容);
加鼠标支持、终端新命令(如calc计算器)。
卡壳查Lunix注解或提Issue,它本就是教学用,对新手友好。


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 0回复贴,共1页
<<返回limbo模拟器吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示