子牙手写OS操作系统123期 | 您所在的位置:网站首页 › 操作系统为什么需要内存保护 › 子牙手写OS操作系统123期 |
手写操作系统(1)——HelloOS 让我们一起学习,由简单的Hello OS入手,最终码出一个属于自己的操作系统! 前言为什么要学写一个操作系统? 为什么要学写一个操作系统? 为什么要学写一个操作系统? 众所周知,操作系统是所有软件的基础(也是面试的三板斧之一!)。 对于后端开发而言,操作系统层面的进程、线程、内存、I/O等相关知识根本逃不掉; 对于WEB开发,性能调优更是离不开操作系统; 对于运维、测试,如果操作系统学的好,那么在出现问题时定位速度和解决bug的速度一定会提升; 对于非专业人员来说,操作系统在日常生活中更是无处不在,手机、智能手表、电脑、路由器等等都是各种操作系统,了解一些操作系统的知识可以让你快乐(装逼)。 总之,对于感兴趣的同学而言,操作系统不妨看一看,学一学。 Hello OS引导程序刚开始我们不来那么硬核的知识,而是直接动手写一个最微型的操作系统——Hello OS。等撸完了,我们再回过头来看看它的细节! 一般来说机器加电启动后,整个计算机第一个启动的程序就是固化在PC主板上的BIOS固件,它启动之后检测系统参数,如内存的大小、日期和时间、磁盘设备以及这些磁盘设备用来引导的顺序。BIOS寻找用于装载操作系统的指令。装载操作系统的这个程序就是boot loader。Linux系统默认的boot loader就是GRUB(GRand Unified Bootloader),于是PC上电以后系统启动流程 接下来我们要做的就是写一个由GRUB引导的“操作系统”——它会在屏幕上显示“Hello OS“。注:其实操作系统归根结底也是一个程序,只不过它在开机之后已经运行,并且权限和功能高的吓人,你可以将它看成是整个计算机应用的管家角色。 |
CopyRight 2018-2019 实验室设备网 版权所有 |