一、x86构架
个人计算机常被称为x86构架的计算机
最早的Intel发展出来的CPU代号是8086,后来又出现了80286、80386….(他们主要区别是微指令集不同)
新出一代CPU为64位,则称为x86_64(位是CPU一次数据读取的最大量!64位代表CPU一次可以读取64bits,2^64
二、计算机上面常用的计算单位(容量、速度)
- 为什么标记为500G的硬盘,格式化后显示460G左右容量?
标记使用的是十进制,500x1000x1000x1000
转换成文件容量时要用二进制 500x1000x1000x1000/(1024x1024x1024)=466GB - 网速Mbps(Mbits per second 每秒传输的Mbit)
日常看到的20M/5M,省略了bit,即单位是每秒兆位,换算成文件容量的byte,则要分别除以8,结果为2.5Mbyte/625Kbyte
三、CPU频率
CPU频率是CPU每秒可以进行的工作次数
Intel i5-6200CPU 2.4GHz 表示每秒工作2.4x10^9次
四、硬盘
工作过程:主轴马达让磁盘盘转动,然后机械手臂可伸展让读取头在磁盘盘上头进行读写操作
外层的同心圆面积比较大,所以为了善用这些空间,外层有更多的扇区。数据读写一般从外圈往内圈写。
五、软件程序运作
机器程序与编译程序
机器程序需要了解机器语言0、1,
编译程序是将人类能够写的程序编译成机器码,但是此环境下还要考虑整体的硬件系统,自己分配内存等问题。操作系统:硬件所有动作都要通过它完成
①内核:管控硬件相关的能力(存取硬盘、网络功能、CPU资源取得等)
②系统呼叫:已知硬件由内核控制,那么开发程序就要参考这个内核的功能,如此也很麻烦,通过操作系统提供一组开发接口给工程师开发软件,只要遵守该开发接口就很容易开发软件。
系统呼叫目的:将高级语言转成核心函数,核心函数来调硬件。
③操作系统的角色
计算机系统主要由硬件组成,操作系统核心程序主要管理硬件,提供合理的计算机系统资源分配,因此只要硬件不同,内核就要改。而由于核心只会进行计算机系统的资源分配,所有还要有应用程序的提供,用户才能用操作系统。
为了保护内核并且使程序容易开发,操作系统除了内核还提供了开发接口。
综上:软件与核心有很大关系,与硬件关系不大;硬件与核心有比较大关系;用户与应用程序有关
引申概念:
操作系统的核心层直接参考硬件规格,所以同一操作系统不能在不一样的硬件架构下运行
操作系统只是在管理整个硬件资源,所以若无应用程序,操作系统只是让系统主机处于主机准备妥当的状态,无其他功能。
应用程序开发参考操作系统开发接口,所以该应用程序只能在该操作系统上运行,不能在其他操作系统上运行
六、操作系统核心功能
- 系统呼叫接口
- 程序管理:多个任务让CPU处理,让CPU的资源有效的分配
- 内存管理
- 文件管理
- 装置的驱动
有驱动原因:常见的硬件已经在主机中,但是较新的硬件,操作系统是不认识的。操作系统如何驱动这块新的硬件呢?通常会提供一个开发接口给硬件提供商,按照这个接口设计驱动他们硬件的驱动程序。这样,只要使用者安装驱动程序,自然就可以在他们的操作系统上面驱动这块硬件了。
上段话含义是:
①操作系统必须能够驱动硬件,应用程序才能使用该硬件功能
②操作系统提供开发接口,硬件制造商制作驱动程序
③要使用硬件功能,必须要有驱动程序
④驱动程序由制造商提供,与操作系统开发者无关