- 计算机的5大组成
之 存储器
内存,外存(磁盘,光驱等)
os
管理,控制硬件,软件,在系统硬件与用户之间。
UEFI可以理解为BIOS的优化
- 关于linux的发展
1.GPL协议 (通用公共许可) 因为这个协议,人人都可自由地写linux内核版本,使得后来的linux内核版本百花齐放
- 版本
分为内核版本,发行版本。 前者是开发者直接写的。 后者由Linux内核+常用软件组成。(我们平常用的,比如ubuntu)
- Linux系统四大部分
1.内核(主要提供对底层管理的一些能力) 2.shell(命令解释器,可以与内核交互) 3.文件系统 4.应用程序
- linux体系结构
- Linux系统结构之进程管理
tip1:进程并不是直接通过接口创建,而是fork一份父进程,以此为模版,加上子进程自己的一些系统资源。
tip2: 图中的pid0为初始进程,pid1为初始用户进程,pid2为初始内核进程。
- 进程调度 (可解决cpu处理进程问题)
tip1:只有当父进程发出结束信号,进程才算结束,否则是僵死。
tip2:进程消耗时间与进程执行量形成正比。
tip3: 每个进程有近乎相等的执行时间。
tip4:可以理解为进程被放入队列中,cpu一个个执行。
- 进程的系统调用
1.内核空间 2.用户空间
整体逻辑为,在用户态,用户程序发起系统调用,在内核态执行这个系统调用,最后在用户态发生系统调用返回。
- 文件系统
Linux一切皆文件
这样可以保证操作的统一。
linux采用树状的目录结构。
思考: linux有这么多不同的文件,如何对用户提供统一的调用接口?(比如,用read读,用write写,用chmod修改使用权限)
答案:VFS
- 文件读取的流程
缓冲区就是为了减少调用次数,提高效率。
- 用户权限
文件权限