Linux基础

90 阅读3分钟

计算机硬件

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

计算机操作系统

  • 管理硬件和软件资源,管理计算机资源
  • 提供用户接口,用于在用户与系统硬件之间传递信息

操作系统程序的执行

  • Power Up
  • BIOS/UEFI (固化在主板上的程序)
    • UEFI是BIOS的优化版本,BIOS自检,UEFI优化了自检流程。UEFI配合GPU
  • BootLoader(引导程序)
  • OS

Linux版本

  • 内核版本(内核)
    • 进程管理 内存管理 文件资源管理 硬件资源管理
    • 硬件与软件之间的中间层
    • 资源管理程序
    • 提供一组面向系统的程序
  • 发行版本
    • 内核+常用软件

Linux应用

  • IT服务器
  • 嵌入式和智能设备(安卓手机)
  • 个人办公桌面
  • 学术研究和软件研发

Linux 系统结构

  • 内核
  • shell
  • 文件系统
  • 应用程序
  • 体系结构
    • 用户空间(权限、稳定可靠)
      • 应用程序
    • 内核空间
      • 系统调用 平台架构
    • 上下文切换(用户与内核程序的通信)
      • 系统调用后,由用户态切换至内核态,与硬件设备通信
      • 系统调用后,中断

进程管理

  • 正在执行的命令或程序

  • 有自己的地址空间、占用一定的系统资源

  • 一个CPU核同一时间只能运行一个进程

  • 由进程ID(PID)和父进程ID(PPID)唯一识别

    • 将父进程作为模板创建子进程
    • pid0-pid1(用户进程的父进程)-pid2(内核进程的父进程)
    • 树形结构
  • 进程调度

    • 进程执行完成/本次执行时间到期 CPU切换到下一进程
    • 轮询方式进行
  • 文件系统

    • Linux一切皆文件
    • proc systs只存在于内存中
    • 树状目录结构
    • 统一的用户接口:虚拟文件系统(VFS)
      • 对应用层提供一个标准的文件操作接口
      • 对文件系统提供一个标准的文件接入接口
      • 使得对不同类型文件的操作可用同一接口执行
    • 文件读取流程
      • 用户缓冲区
      • 系统IO
      • 内核缓冲区
      • DMA
  • 用户权限

    • 用户账户
      • 普通用户账户
      • 超级用户账户
    • 组账户
      • 标准组
  • 文件权限

    • 所有者
    • 所在组
    • 其他人
    • 读(R)、写(W)、执行(X)
    • drwxr-xr-x

软件包

  • 应用程序(GUI/命令行工具/软件库)
  • 底层工具:处理安装和删除软件包文件等任务
  • 上层工具:数据的搜索任务和依赖解析任务

基础命令

  1. 查看Linux版本uname -a cat /proc/version
  2. 查看发行版本 cat /etc/os-release
  3. 查看启动的ngix进程 ps -ef | grep nginx
  4. 查看某个进程 top -p PID
    • 调度优先级
    • PID
    • 状态 休眠状态(S) 可执行状态(R) 不可中断的睡眠状态(D) T Z X
    • CPU和内存的使用状况
  5. 关闭某进程kill PID
  6. 全部进程的动态实时视图 top
  7. 命令报告文件系统磁盘空间利用率 df -T
  8. 打印系统文件在内的磁盘分区信息 mount
  9. 查看文件夹下的内容 ls
  10. 创建文件夹 mkdir
  11. 移动文件夹mv dirname dir
  12. 删除文件夹rm -r dirname
  13. 创建空文件touch file.txt
  14. 复制文件 cp file.txt file_bak.txt
  15. 查看当前用户信息w
  16. 查看当前用户所属的组groups
  17. 查看用户uid信息 id xxxx