Linux基础 | 青训营笔记

140 阅读4分钟

Linux基础笔记(硬件基础->进程调度)

图标起源:Linux的企鹅图标象征着Linux其开源性,希望全世界人能在任何场合使用Linux的初心。

一、计算机硬件 计算机组成 (冯诺依曼结构)

  • 控制器
  • 运算器
  • 存储器单元
  • 输入单元
  • 输出单元

二、计算机操作系统(Operating System)

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

管理计算机资源

  • 处理器管理
  • 存储器管理
  • 设备管理
  • 文件管理 提供用户接口
  • 命令接口
  • 图形用户接口
  • 程序接口

2.OS启动流程

graph TD
Powerup --> BIOS --> BIOS自检 --> Bootloader --> OS
Powerup --> UEFI --> Bootloader --> OS

三、Linux系统概览 1.Linux版本

  • 内核版本(由创建者本人发布)
  • 发行版本(Linux内核+常用软件)

2.Linux系统内核版本查看

  • uname -a
  • cat /proc/version

3.Linux系统版本查看

cat /etc/os-release

4.Linux系统应用领域

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

四、Linux系统结构

1.主要部分

  • 内核
  • shell(命令解释器)
  • 文件系统
  • 应用程序

2.Linux体系结构

依据权限划分(用户空间权限小,内核空间权限大)

程序运行时在用户态和内核态之间转化,即需要高权限时进入内核态对硬件进行操控,需要低权限时则保持用户态与用户进行交互

  Linux
      用户空间(应用程序运行的空间)
        --应用程序
      内核空间(系统内核运行的空间)
        --系统调用
        -- 内核
        --平台架构相关的代码

对于内核(Linux系统的底层)

  • 内核是硬件与软件之间的中间层
  • 内核是一个资源管理程序
  • 内核提供一组面向系统的命令

五、Linux系统结构

1.进程管理

  • 进程是正在执行的一个程序或命令
  • 进程有自己的地址空间,占用一定的系统资源
  • 一个CPU核同一时间只能运行一个进程
  • 进程由它的进程ID(PID)和它父进程的进程ID(PPID)唯一识别

2.查看进程信息

查看启动的nginx进程

  • ps -ef | grep nginx

查看某个进程

  • top -p 93824

关闭指定的进程

  • kill 93824

全部进程动态实时视图

  • top

3.进程调度

a.进程调度是指操作系统按某种策略或规则选择进程占用CPU进行运行的过程

graph TD
创建进程 --> 进程就绪
特殊事件触发 --> 进程就绪
进程运行 --> 特殊事件触发
进程运行 --> 进程僵死 --> 进程结束
进程运行 --> 进行就绪 --> 进程运行

b.进程状态

  • R 可执行状态
  • S 可中断的睡眠状态
  • D 不可中断的睡眠状态
  • T 暂停状态或跟踪状态
  • Z 退出状态,进程成为僵尸进程
  • X 退出状态,进程即将被摧毁

c.进程调度原则

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

4、文件系统

文件系统是操作系统中负责管理持久数据的子系统,负责把用户的文件存放到磁盘硬件中,持久化的保存文件

Linux文件系统是采用树状的目录结构,最上层是/(根)目录

虚拟文件系统(VFS)

  • 对应用层提供一个标准的文件操作接口
  • 对文件系统提供一个标准的文件接入接口

查看文件系统类型

df命令报告文件系统磁盘空间利用率

  • df -T

mount命令是挂载文件系统用的,不带任何参数运行,会打印包含文件系统类型在内的磁盘分区的信息

  • mount

文件基本操作

  • ls #查看文件夹下内容
  • mkdir demo #创建文件夹
  • mv demo /home #移动demo文件夹到/home
  • rm -r demo #删除demo文件夹
  • touch file.txt #创建空文件
  • op file.txt file_bak.txt #复制文件

5.用户权限

查看用户信息

  • w #查看当前登录用户信息
  • groups #查看当前用户所属的组
  • id xxxx #查看用户的uid信息

6.文件权限

所有者:文件的所有者

所在组:文件的所有者所在的组

其他人:除文件所有者及所在组外的其他人

权限包括读(R)、写(W)、执行(X)