这节课中,老师在视频最后已经放出了课程总结,有兴趣的同学可以去去看ppt的最后,这篇文章是我的自我总结
总结
本门课程主要学习了Linux的发展简史,包括它的发展信息;还有Linux的系统架构,里面的进程管理、文件系统,还有权限管理。整体上是学习了Linux比较核心的几个模块,可以对应着课程总结去深入学习。
Linux基础
学习Linux的价值
1. Linux是现代化应用程序交付的首选平台,无论是部署在裸机、虚拟化还是容器化环境。其底层都是优先使用Linux系统
2. 公司内部服务(TCE、FaaS、SCM)统一使用Debian Linux系统。所以了解Linux系统,可以帮助我们更好的了解和使用内部服务。
3. 熟悉Linux基础指令,熟练运维前端常用服务(Nginx,Node.js)
4. 加深对操作系统概念和实现的理解,夯实基础知识
01计算机硬件
在一个完整的方诺伊曼计算体系中,计算机由五大基本单元组成:
控制器,运算器,存储器单元,输入单元,输出单元
02操作系统
1操作系统(Operating System, os)
管理和控制计算机系统中的硬件和软件资源,用于在用户与系统硬件之间传递信息
管理计算机资源:处理器管理、存储器管理、设备管理、文件管理
提供用户接口:命令接口、图形用户接口、程序接口
问题思考1
程序启动必须有操作系统来执行,那操作系统本身也是一个程序,那是如何在开机时被执行的呢?
03Linux系统概览
(1)查看Linux系统内核版本
#方法1 uname-a
#方法2 cat/proc/version
(2)查看Linux系统版本
cat/etc/os-release
(3)Linux系统应用领域
·IT服务器(操作系统、虚拟化和云计算)·嵌入式和智能设备
·个人办公桌面
·学术研究与软件研发
04Linux系统结构
(1)进程管理
·进程是正在执行的一个程序或命令
·进程有自己的地址空间,占用一定的系统资源。
·一个CPU核同一时间只能运行一个进程
·进程由它的进程ID (PID)和它父进程的进程ID(PPID)唯一识别
(2)查看进程信息
问题思考2
系统中运行的程序远远大于CPU的核数,那 Linux系统是如何实现同时运行这么多程序的?
(3)进程调度原则
·一个CPU核同一时间只能运行一个进程
·每个进程有近乎相等的执行时间
·对于逻辑CPU而言进程调度使用轮询的方式执行,当轮询完成则回到第一个进程反复
·进程执行消耗时间和进程量成正比
(4)文件系统
问题思考3
Linux有这么多不同的文件系统,如何实现对用户提供统—调用接口的?
(5)用户账户
·用户账户
普通用户账户:在系统中进行普通作业
超级用户账户:在系统中对普通用户和整个系统进行管理
·用户组
标准组:可以容纳多个用户
私有组:只有用户自己
(6)文件权限
关于用户有三个概念:
所有者:文件的所有者
所在组:文件的所有者所在的组
其他人:除文件所有者及所在组外的其他人
每个用户对于文件都有不同权限,包括读(R)、写(W)、执行(X)
05软件包管理
·软件包
通常指的是一个应用程序,它可以是一个GUI应用程序、命令行工具或(其他软件程序需要的))软件库
·软件包管理
底层工具:主要用来处理安装和删除软件包文件等任务,DPKG,RPM
上层工具:主要用于数据的搜索任务和依赖解析任务,APT,YUM,DNF