[ Linux基础 | 青训营笔记]

49 阅读2分钟

前言

本节课简单介绍了计算机操作系统和linux系统的基础知识,不同于课堂上学的细,但覆盖面比较广,可以用来科普,感兴趣的地方大家可以自行学习。

1.计算机硬件

  • 计算机构成
    • 控制器
    • 运算器
    • 存储器
    • 输入单元
    • 输出单元 上述组件的关系图如下: image.png

2.操作系统

  • 定义

    管理和控制计算机系统中的硬件和软件资源,用于在用户与系统硬件之间传递信息。

  • 能力

    • 管理计算机资源(处理器管理、存储管理、设备管理、文件管理等)
    • 提供各种的用户接口(命令接口、图形用户接口、程序调用接口)
  • 常见操作系统:mac系统、linux系统、windows、手机端安卓系统以及华为鸿蒙系统等。

  • 操作流程 image.png 其中,基于UEFI的启动流程是当前的主流模式。UEFI是BIOS流程的升级版本,解决优化了BIOS启ootloader,也就是操作系统引导程序。

3.Linux

1.基础知识

  • 版本:linux内核+常用软件=发行版本 image.png
  • 应用领域
    • IT服务器
    • 嵌入式和智能设备
    • 个人办公桌面
    • 学术研究和软件研究
  • 基本组成
    • 内核
    • shell
    • 文件系统
    • 应用程序

image.png

  • 体系结构
    • 内核是硬件与软件之间的中间层,是一个资源管理程序,并提供一组面向系统的命令 image.png

2.进程管理

进程是正在执行的一个程序或命令进程有自己的地址空间,占用一定的系统资源。其中,一个 CPU 核同一时间只能运行一个进程。

  • 进程调度

指操作系统按某种策略或规则选择进程占用CPU进行运行的过程。 image.png

  • 原则

    • 一个 CPU 核同一时间只能运行一个进程
    • 每个进程有近乎相等的执行时间
    • 对于逻辑CPU而言进程调度使用轮询的方式执行,当轮询完成则回到第一个
    • 进程反复进程执行消耗时间和进程量成正比
  • 系统调用

    • 内核空间(Kernal Space) :系统内核运行的空间
    • 用户空间(User Space) :应用程序运行的空间

3.文件系统