zoukankan      html  css  js  c++  java
  • 《30天自制操作系统》笔记(13)——总结

    《30天自制操作系统》笔记(13)——总结

    进度回顾

    上一篇介绍了操作系统实现多任务的方法。操作系统利用CPU的far模式的JMP指令、寄存器TR、GDT、TSS和PIT中断这些功能实现了多任务,可见CPU在设计时就考虑到了计算机要具有多任务处理的能力。也就是说,CPU、PIC等硬件支持什么功能,操作系统才能实现什么功能。

    至此全书已经读了一半。我发现后半部分读不下去,也没必要再读了。本篇就对所有的笔记做一总结,至此《30天自制操作系统》这本书就暂且不读了。

    所学所感

    我们可以把CLR虚拟机(或者JVM)看做计算机。当用户双击一个保存了MSIL的exe文件,这个计算机能够加载exe文件,并执行其中的代码。

    类似的,当用户按下开机按钮,物理机能够加载BIOS指定的程序代码,并执行之。硬件电路就是这么设计好的。

    计算机自动加载的程序只有512字节,不够用来放OS程序。所以这512字节的程序就用来装载真正的OS程序到内存某处,然后JMP到该处执行OS程序。

    硬件电路提供了寄存器若干、加减乘除、中断机制、定时器、内存段属性、任务切换等功能。OS程序利用CALL、RET等实现了函数的概念;利用中断机制实现了基于事件的编程;利用定时器、内存段、任务切换实现了多任务OS;利用内存段属性实现了保护OS的功能;利用一般保护性异常中断实现了抛出异常的功能。

    充分了解CPU,充分了解汇编语言,就具有了制作OS的基础。

    下一步

    最初看《30天自制操作系统》,就是为了弄清楚多任务是如何实现的。现在心里已经清楚了。

    下一步,要看《Object-oriented Programming with ANSI-C》,结合我之前的研究,做一个面向对象的C语言规范检查器。

  • 相关阅读:
    加载web项目时报的错误:Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modul
    js修改title
    14.Android UiAutomator 图像处理
    13.UiAutomator 辅助APK的使用
    12.UiAutomator 获取系统信息
    11.UiAutomator 相关JAVA知识
    10.Android UiAutomator Junit 断言函数的使用
    面向对象基本关键词的解释
    Java图形界面——Border
    java文本编辑器v2.0 图形用户界面
  • 原文地址:https://www.cnblogs.com/bitzhuwei/p/OS-in-30-days-13-summary.html
Copyright © 2011-2022 走看看