1. 认识冯诺依曼体系结构
计算机有很多的体系结构,但到如今,冯诺依曼体系结构变成了主流。
输入设备:话筒、键盘、摄像头、鼠标、磁盘、网卡…
输出设备:声卡、显示器、打印机、显卡、网卡、磁盘…
有的设备既能作为输入设备又能作为输出设备。
存储器就是内存。
这里每个硬件都是独立的,所以一个电脑会对应着很多硬件的厂商。但是每个硬件需要通过主板总线连接起来,达到信息/数据在各个硬件设备之间流动(本质是数据的拷贝)的目的。
数据拷贝的整体速度决定着计算机的速率的重要指标。
这里有个问题,存储器(内存)存在的意义是什么?我们直接将输入设备的数据交给CPU处理,然后再给输出设备不是更好吗?恰恰相反,内存的存在很有意义,因为CPU的速度很快,而输入、输出设备的速度很慢,导致整体的效率和输入、输出设备一样很慢,CPU大部分都是闲置状态。所以在这两者之间插入了内存来做缓冲,内存的速度比输入、输出设备快,比CUP慢,输入设备先将数据给内存,内存在给CUP,CUP处理完之后的数据在给内存,内存再给输出设备。所以计算器的整体速率就会和内存相当了。但很多同学可能疑惑,这不应该还是以输出、输出设备的速率为准吗?甚至引入内存还使数据传输绕路了,变得更慢。按道理是这样的,但在软件层的预加载和缓存的技术解决了这个问题。
结论:内存的引入使计算机效率不错的前提下,价格相对便宜。
有了上面的体系结构了解,我们很容易知道一个程序运行起来,就是将磁盘上的可执行文件加载到内存里。
2. 认识操作系统
操作系统就是第一个被加载到内存里的软件。
操作系统是一个进行软硬件资源管理的软件。
硬件和操作系统之间其实还有一层驱动程序层,驱动程序就是硬件厂商提供用来访问硬件的软件,每个硬件设备都应该有对应的驱动程序,所以操作系统只需要调用驱动程序就能对硬件进行操作了。
如何理解管理呢?
- 管理者和被管理者并不需要见面,因为管理的本质是对信息的管理。比如你在学校里很少见到校长,但校长已经把你安排的明明白白了,因为校长有你的信息。管理者的核心工作是根据信息来做决策。
- 管理者如何管理大量的信息呢?六个大字,先描述再组织。比如操作系统管理硬件,就先要用结构体描述硬件,比如名称、状态等,然后将各个结构体链接起来,对硬件的管理就转换成对这个链表的增删查改。
先用结构体描述,再用数据结构组织。
为什么要有操作系统?
提供用户和应用程序的接口:操作系统为用户和应用程序提供了一个简单的界面,使他们能够方便地与计算机系统进行交互和使用各种功能。
管理计算机资源:操作系统负责管理计算机的各种硬件资源,包括处理器、内存、磁盘、网络等,以确保它们能够有效地被应用程序和用户使用。
调度任务和进程:操作系统负责调度和管理计算机系统中的各种任务和进程,以确保它们能够按照一定的优先级和顺序进行执行。
提供文件系统:操作系统提供了一个文件系统,用于管理和组织计算机系统中的各种文件和数据,以便用户和应用程序能够方便地进行存储和访问。
提供安全和保护机制:操作系统提供了各种安全和保护机制,以确保计算机系统中的数据和资源不受未经授权的访问和破坏。