Linux基础(上)

102 阅读5分钟

一、计算机硬件

计算机由五大基本单元组成:

  • 控制器
    • 控制器是负责控制计算机运行流程的部件。它通过解释指令集来控制计算机的操作,从存储器中读取指令,对指令进行解码并执行相应的操作。控制器还负责管理计算机的各种设备和资源,例如内存、输入输出设备和外部存储设备等。为了实现这些功能,控制器通常包含一个指令寄存器、一个程序计数器、状态寄存器和一个时钟。
  • 运算器
    • 运算器是负责执行算术和逻辑运算的部件。它包含一组算术逻辑单元(ALU),可以对数据进行各种运算,例如加、减、乘、除、与、或、非、异或等。运算器还包括一组寄存器,用于存储运算中的中间结果和操作数,以及控制运算的时钟和控制线路。
  • 存储器单元
    • 存储器单元是计算器中用于存储数据和程序的部件。通常包括寄存器、缓存、内存和外存等多种形式。
  • 输入单元
    • 输入单元是计算机用于接收外部数据的部件。它通常包括键盘、鼠标、扫描仪、摄像头等外部设备,它们可以将用户输入的数据转换为计算机可以处理的格式,并通过计算机总线传输到计算机的内部存储器或处理器中。
  • 输出单元
    • 输出单元是计算机用于将处理后的数据输出到外部的部件。它通常包括显示器、打印机、扬声器、投影仪等外部设备,它们可以将计算机处理后的数据转换为人类可以感知的形式,并显示或打印出来。

二、计算机操作系统

概念

操作系统(Operating System, OS):管理和控制计算机系统中的硬件和软件资源,用于在用户与系统硬件之 间传递信息

image.png

启动流程

操作系统的启动流程通常包括以下几个步骤:

  1. 加载BIOS:开机后,计算机首先会启动基本输入输出系统(BIOS),BIOS会检测计算机的硬件设备,并确定哪些设备可用,然后加载下一步的启动程序。
  2. 加载引导程序:BIOS会将操作系统的引导程序加载到内存中,并将执行控制权交给引导程序。引导程序通常位于硬盘的引导扇区,它会读取操作系统的核心文件,并将其加载到内存中。
  3. 加载操作系统内核:一旦引导程序将操作系统核心文件加载到内存中,操作系统就开始运行。操作系统内核负责管理计算机的各种硬件设备和资源,为应用程序提供服务。
  4. 初始化系统:当操作系统内核启动后,它会开始初始化系统,包括建立进程管理、内存管理、文件系统、网络等系统服务。在此过程中,操作系统会初始化各种设备驱动程序,并设置相应的参数。
  5. 启动登录界面:最后,操作系统会显示一个登录界面,用户可以输入用户名和密码登录系统。

image.png

三、Linux 系统概览

3.1 发展简史

  • 1969年,Unix 诞生于贝尔实验室
  • 1984年,贝尔实验室将 Unix 商业化
  • 1984年,Tanenbaum开发Minix操作系统用于教学并开放源码
  • 1984年,Richard M. Stallman发起自由软件(FSF)与 GNU项目,起草 GPL (通用公共许可)协议
  • 1991年,Linus Torvalds受Minix影响实现初版的Linux内核
  • 1992年,Linux内核以GPL协议发行V1.0

3.2 Linux 版本

  • 内核版本

  • 发行版本 (Linux 发行版本 = Linux 内核 + 常用软件)

image.png

查看内核版本指令

# 方法1
uname -a
# 方法2
cat /proc/version

3.3 Linux 系统应用领域

  • IT服务器(操作系统、虚拟化和云计算)
  • 嵌式和智能设备
  • 个人办公桌面
  • 学术研究与软件研发

3.4 Linux 基本组成

image.png

Linux 系统一般有4个主要部分

  • 内核
    • 是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。
  • shell
    • 是系统的用户界面,提供了用户和内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器。但它不仅是命令解释器,而且还是高级编程语言,shell编程。
  • 文件系统
    • 文件系统是文件存放在磁盘等存储设备上的组织方法,Linux支持多种文件系统,如ext3,ext2,NFS,SMB,iso9660等。
  • 应用程序
    • 标准的Linux操作系统都会有一套应用程序例如X-Window,Open Office等。

3.5 Linux 的体系结构

image.png

用户空间

  • 应用程序
    • Linux是一个开放源代码的操作系统,因此有许多应用程序可以在Linux上运行,用户可以自由地下载和安装其他应用程序,以满足其特定的需求。
  • GNU
    • 指Linux操作系统中使用的GNU工具和应用程序。Linux和GNU项目之间的合作,为用户提供了一个稳定、强大、安全和自由的操作系统。

内核空间

  • 系统调用
  • 内核
    • 内核是硬件与软件之间的中间层
    • 内核是一个资源管理程序
    • 内核提供一组面向系统的命令
  • 平台架构相关代码

内核漫画

image.png