趣谈 Linux 操作系统学习笔记(二)

你可以把 Linux 内核当成一家软件外包公司的老板

  • 操作系统其实就像一个软件外包公司,其内核就相当于这家外包公司的老板。

“双击 QQ”这个过程,都需要用到哪些硬件?

  • 鼠标和键盘是计算机的输入设备。
    • 大部分的普通用户想要告诉计算机应该做什么,都是通过这两个设备。
  • 屏幕,也就是显示器,是计算机的输出设备,将计算机处理用户请求后的结果展现给客户,要不然用户无法知道自己的请求是不是到达并且执行了。
    • 显示器上面显示的东西是由显卡控制的。
    • 无论是显示器还是显卡,这里都有个“坐标”的概念,也就是说,什么图像在哪个坐标,都是定义好了才画上去的。
    • 本来在某个坐标画了一个鼠标箭头,当接到鼠标移动的事件之后,你应该按相同的方向,按照一定的比例(鼠标灵敏度),在屏幕的某个坐标再画一个鼠标箭头。
  • 在操作系统中,输入设备驱动其实就是客户对接员。
    • 有时候新插上一个鼠标的时候,会弹出一个通知你安装驱动,这就是操作系统这家外包公司给你配备对接人员呢。
    • 当客户告诉对接员需求的时候,对于操作系统来讲,输入设备会发送一个中断。
      • 客户肯定希望外包公司把正在做的事情都停下来服务它。
      • 所以,这个时候客户发送的需求就被称为中断事件(Interrupt Event)。
  • 显卡会有显卡驱动,在操作系统中称为输出设备驱动,也就是交付人员。

从点击 QQ 图标,看操作系统全貌

  • 有了客户对接员和交付人员,外包公司就可以处理用户“在桌面上点击 QQ 图标”的事件了。
    • 首先,鼠标双击会触发一个中断,这相当于客户告知客户对接员“有了新需求,需要处理一下”。
    • 你会事先把处理这种问题的方法教给客户对接员。
    • 在操作系统里面就是调用中断处理函数。
      • 操作系统发现双击的是一个图标,就明白了用户的原始诉求,准备运行 QQ 和别人聊天。
  • 你会发现,运行 QQ 是一件大事,因为将来的一段时间,用户要一直和 QQ 进行交互。
    • 这就相当于你们公司接了一个大单,而不是处理零星的客户需求,这个时候应该单独立项。
    • 一旦立了项,以后与这个项目有关的事情,都由这个项目组来处理。
    • 立项可不能随便立,一定要有一个项目执行计划书,说明这个项目打算怎么做,一步一步如何执行,遇到什么情况应该怎么办等等。
    • 换句话说,对 QQ 这个程序来说,它能做哪些事情,每个事情怎么做,先做啥后做啥,都已经作为程序逻辑写在程序里面,并且编译成为二进制了。
    • 这个程序就相当于项目执行计划书。
  • 电脑上的程序有很多,它们都以二进制文件的形式保存在硬盘上。
    • 硬盘是个物理设备,要按照规定格式化成为文件系统,才能存放这些程序。
    • 文件系统需要一个系统进行统一管理,称为文件管理子系统(File Management Subsystem)。
  • 当操作系统拿到 QQ 的二进制执行文件的时候,就可以运行这个文件了。
    • QQ 的二进制文件是静态的,称为程序(Program)。
    • 而运行起来的 QQ,是不断进行的,称为进程(Process)。
  • 在操作系统中,例如多个进程都要往打印机上打印文件,如果随便乱打印进程,就会出现同样一张纸,第一行是 A 进程输出的文字,第二行是 B 进程输出的文字,全乱套了。
    • 所以,打印机的直接操作是放在操作系统内核里面的,进程不能随便操作。
    • 但是操作系统也提供一个办事大厅,也就是系统调用(System Call)。
      • 系统调用也能列出来提供哪些接口可以调用,进程有需要的时候就可以去调用。
      • 这其中,立项是办事大厅提供的关键服务之一。
      • 同样,任何一个程序要想运行起来,就需要调用系统调用,创建进程。
  • 在操作系统中,进程的执行也需要分配 CPU 进行执行,也就是按照程序里面的二进制代码一行一行地执行。
    • 于是,为了管理进程,我们还需要一个进程管理子系统(Process Management Subsystem)
    • 如果运行的进程很多,则一个 CPU 会并发运行多个进程,也就需要 CPU 的调度能力了。
  • 在操作系统中,不同的进程有不同的内存空间,但是整个电脑内存就这么点儿,所以需要统一的管理和分配,这就需要内存管理子系统(Memory Management Subsystem)
  • QQ 进程是不能直接发送网络包的,需要调用系统调用,内核使用网卡驱动程序进行发送。这就像客户对接员接到一个需求,但是这个需求需要和其他公司沟通,这就需要依靠公司的对外合作部,对外合作部在办事大厅有专门的窗口,非常方便。
    在这里插入图片描述
  • 操作系统内核体系结构图
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值