操作系统
part1
-
管理硬件
-
管理软件
- 安装
- 运行
注:不负责编译
part2
-
计算机整体是一个电子线路设备,传递的是电压信号(机器码)。
由汇编和硬件进行交互。编写软件管理汇编和硬件交互为驱动。
-
一般操作系统是由汇编加C写的。
-
操作系统调用的方法一般来说为基本的汇编方法,再进行复杂结合。
-
由C进行一部分汇编的整合,为系统内核(例如:unix,windows)。
-
建立在基本系统内核上进行第二层封装内核(例如:redhat,centos)。
-
一般来说高级语言要进行对于基本语言的映射转换,才能被操作系统识别。
-
一般来说编译之后,是和最基本系统内核进行交互的,与其分支版本无关。
-
每一个独立的元器件,内部都有一个小型处理器(非中央处理器)。
part3
计算机基本功能
-
存储
-
对数据进行存储,以磁的形式进行存储,(磁的特性,在良好条件下,可以维持很久。)
-
增删改查,即加磁,消磁,转换磁场方向等。
-
零件内部之间靠信号传输(电压),【未来可能是光信号传输,未来发展方向】。
磁:
- 0101二进制机器码,对于存储介质上的磁颗粒,有N/S区分0/1。0/1对应的即相应磁颗粒。对于磁颗粒,看其对外的磁场方向。(磁场在加强电压下会瞬间改变)。磁颗粒一般存于磁盘上的盘片上。使用磁头读取磁颗粒,磁头有磁场,磁头和磁颗粒切割磁场根据产生的电压电流判断是0还是1。(磁颗粒上一般有保护膜,磁颗粒一般都是一组)。
磁盘:
- 磁道和磁道之间间距比较小。
- 磁头先找到第一个数据需要到达的磁道(定位),再进行调整。
- 机械操作每一次能达到数ms。
-
全局存储编码一般来说等长。(8位,因为ASCII编码的缘故)(故8位1字节)。故要存储数据,要指定编码,不同编码可能长度不同,同样编码对应的字符不同。
-
一般来说,信息存储地方:
- 磁盘:磁颗粒(持久化存储)
- 内存条:电信号
- CPU:电信号
CPU从磁盘拿数据十分缓慢,因为磁盘是机械操作。
-
对于磁盘进行读取,根据局部性原理,每次连续读取4KB内容,这个读取内容大小可以格式化后调节。CPU可以对磁盘进行批量读取。一般CPU可以对磁盘下数百个数据指令。
-
因为在4kb内如果存多个东西,就需要记录每个首地址,多了之后不值当,所以4kb内只存放一个东西,尽管这样有浪费,但是可以提升性能。
-
任何数据存储形式都是文件。
-
-
传输
- 高电压传1,低传0。(1.7V左右分界线)。
part4
-
之前,文件在磁盘存储的是链式结构。与链表相似,建立在碎片化存储的前提下。(修改多)。
-
记录文件记录的都是从头部信息。
-
目录存储(适用于查看多的情况)
先分析当前文件需要多少单元。在第一个头文件中存储其他块地址。先把文件存储的第一个文件块加载,就可以找到其他的地址了。
第一个头文件要存储在连续单元,并且删改查都要维护。
目录由于存储文件信息过多的话则需要分级。
Windows使用的就是目录存储。
part5
软件部分:
- 软件和操作系统内核进行对接。运行需要转化。
- 由操作系统封装方法,我们编写软件时直接调用封装的接口即可。
- 软件开发一般都会提供相应开发工具,由开发工具对操作系统的接口进行组装。
- 文件一般都需要以首部存储自己的格式信息。操作系统读取文件也是读取首部几位,判断其类型,后面才是文件内数据。
- 任何独立运行的程序都有死循环。所以程序的运行靠死循环。
内存:
- 存储单元大小也是4KB。
操作系统很少直接对源内存地址进行修改。