怎样自己写一个简单的操作系统

 我来答
浙江启扬智能科技有限公司 2019-05-20
展开全部
在8位或16位嵌入式系统应用中,由于CPU资源量比较少,任务比较简单,程序员可以在应用程序中管理CPU资源,而不一定要专门的系统软件。如果嵌入式系统比较复杂并且采用32位CPU时,情况就完全不同了。32位CPU的资源量非常大,除理能力也非常强大,如果还是采用手工编制CPU的管理程序,面对复杂的应用,很难发挥出32位CPU的除理能力,并且程序也不可靠。举个例子:平时用的电脑,有比较丰富的外设资源,如果不使用操作系统,自己用开发工具从底层开始写程序,搞个一年半载的,或许也可以让电脑跑起来,在显示器上搞个类似的windows界面。然而,如此的裸…
盘默M2
2016-12-20 · TA获得超过2.9万个赞
知道大有可为答主
回答量:9723
采纳率:93%
帮助的人:8241万
展开全部
只要你学过汇编和C,只满足于写个“简单的操作系统",一两天就能搞定。

随便把你写过的小程序,用直接写硬盘软件(或者自己编一个,调用winapi的WriteFile函数就可以),写进硬盘/U盘引导区。记住,起始地址是7c00。

这就好了。注意,引导区只有440个字节给你用,程序不能太大,所以这部分基本要用汇编写。440字节后面是硬盘/U盘分区信息,不可以乱动。乱动以后bios可能没法识别硬盘/U盘。
引导区最后两个字节必须是55AA,不过一般你不用管,硬盘/U盘格式化的时候都已经给你写好了。

这样你的程序就在开机的时候直接运行了。

想调用大程序也没问题,你需要写个不超过440字节的程序,负责把第二个扇区的内容载入内存并执行,由第二个扇区的代码负责把所有代码载入内存。后面的部分用C写或者别的高级语言写都没什么问题了。

至于你想要具体作什么,就写什么,屏幕上画个画,管管硬盘上的文件,和用户互动一下,你随意。和你平常写程序没啥两样。总之一个能完成任务的简单操作系统就完事了。

最多几天时间你就能搞定。这差不多能搞个接近dos1.0的“简单操作系统”。

不过接下来才是你真正要学的。例如文件管理,内存管理,保护模式,进程管理啥的。麻烦归麻烦,但解放了自由了,终于可以编写内核态才准用的代码了,做的事情全部都是用户态下面不让做的事情。操作系统的学习,从这里才算真正开始。
法本信息技术
2024-10-28 广告
深圳市法本信息技术股份有限公司在软件开发领域,广泛应用多种高效管理工具。这些工具不仅涵盖了需求管理、项目跟踪、代码版本控制等方面,还集成了缺陷追踪、自动化测试以及团队协作等关键功能。它们极大提升了软件开发流程的透明度与效率,确保团队成员能够... 点击进入详情页
本回答由法本信息技术提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式