一.计算机硬件(五大基本单元)
- 控制器
- 运算器
- 存储器单元
- 输入单元
- 输出单元
二.计算机操作系统(用于用户与系统硬件间传递信息)
作用:管理计算机资源(包含处理器管理,存储器管理,设备管理,文件管理),提供用户接口(包含命令接口,图形用户接口,程序接口)
操作系统启动流程
1.BIOS和UEFI相当于固化在主板上的一段程序
2.Bootloader是操作系统引导程序
3.UEFI是BIOS升级优化后的(BIOS速度慢,无法引导2.2T以上的磁盘)
三.Linux系统概览
1.历史
Unix-->商业化的Unix(贝尔实验室) ==>Minix(开放源码) ==>Linux
2.版本
1.内核版本
2.发行版本(内核版本+常用软件)
3.查看Linux系统内核版本
1. uname -a
2. cat /proc/version
4.查看Linux系统发行版本
cat /etc/os-release
5.Linux系统应用领域
- IT服务器
- 个人办公桌面
- 嵌入式和智能设备
- 学术研究与软件开发
四.Linux系统结构
1.4个主要部分
- 内核
- 文件系统
- shell(命令解释器)
- 应用程序
2.体系结构
内核
- 是硬件与软件之间的中间层
- 一个资源管理程序
- 提供一组面向系统的命令
GUN C Library
封装好的系统标准调用库
隔离
用户空间(低权限)与内核空间(高权限)的隔离使Linux安全,稳定。
3.进程管理
1.进程
- 正在执行的一个程序或命令
- 有地址空间,占用一定系统资源
- 一个CPU核同一时间只能运行一个进程
- 进程由它的进程ID(PID)和它父进程ID(PPID)唯一识别
2.查看进程信息
1. 查看启动的nginx进程
ps -ef | grep nginx
2. 查看具体信息(93824是ID)
top -p 93824
3. 关闭进程
kill 93824
4. 全部进程实时视图
top
3.进程调度(一个CPU核怎样同时运行多个进程)
- 一个 CPU 核同一时间只能运行一个进程
- 每个进程有近乎相等的执行时间
- 对于逻辑 CPU 而言进程调度使用轮询的方式执行,当轮询完成则回到第一个进程反复
- 进程执行消耗时间和进程量成正比
4.进程的系统调用
原因:内核态时,用户才有足够的权限
4.文件系统
Linux中一切都是文件,文件包含:
- 普通文件
- 目录
- 设备
- 套接字(网络字段)
Linux 有这么多不同的文件系统,如何实现对用户提供统一调用接口的:
通过虚拟文件系统(VFS)把文件进行转换
查看文件系统类型
- df -T(报告文件系统磁盘空间利用率)
- mout(是挂载文件系统用的,不带任何参数运行,会打印包含文件系统类型在内的磁盘分区的信息)
文件基本操作
- ls(查看文件内容)
- mkdir(创建文件夹)
- mv 文件名1 文件夹名2(把1移到2中)
- rm(删除文件夹)
- touch(创建空文件)
- cp(复制文件)
文件读取流程
- 先看用户缓冲区有无需要的文件,若有,则从用户空间读取,否则从磁盘读取
5.用户权限
查看用户信息
- w(当前登录用户)
- groups(当前所在组)
- id(UID)
文件权限(R<读>,W<写>,X<执行>)
drwxrwxrwx
- d为文件类型
- 每3个字母是不同用户拥有对文件的权限,分别是文件所有者,所有者所在组,组外其他人