这是我参与「青训营 x 字节前端训练营」笔记创作活动的第2天,以下是我的课堂笔记。 本次课程主要分为五个大板块:
1.计算机硬件
2.计算机操作系统
3.Linux系统概览
4.Linux系统结构
5.Linux系统软件包管理器
1.计算机硬件
计算机系统通常由五大单元组成,它们分别是:
-
输入单元:这个单元负责将外部数据或指令输入到计算机系统中。例如,键盘、鼠标、扫描仪等设备都属于输入单元。
-
输出单元:这个单元负责将计算机系统处理后的结果输出到外部媒介上,以便用户查看和使用。例如,显示器、打印机、投影仪等设备都属于输出单元。
-
存储单元:这个单元负责存储计算机系统中的程序和数据。计算机系统中的存储单元可以分为主存储器和辅助存储器两类。主存储器包括内存条、高速缓存等,用于存储计算机系统正在使用的程序和数据;辅助存储器包括硬盘、光盘、U盘等,用于长期保存程序和数据。
-
控制单元:这个单元负责控制计算机系统各个部件的协调工作,以保证计算机系统的正常运行。控制单元通常包括指令寄存器、程序计数器等。
-
算术逻辑单元(ALU):这个单元负责执行计算机系统中的算术和逻辑运算。算术逻辑单元通常包括加法器、减法器、乘法器、除法器等。
以上五大单元组成了计算机系统的核心部分,它们共同协作,使得计算机能够完成各种任务和操作。
2.计算机操作系统
计算机的操作系统启动流程可以大致分为以下几个步骤:
-
BIOS自检:当计算机开机时,BIOS芯片会先进行自检,检测计算机硬件是否正常。
-
引导程序加载:BIOS会读取硬盘的引导扇区,将其中的引导程序加载到内存中。引导扇区位于硬盘的第一个扇区,通常被称为MBR(Master Boot Record)。
-
引导程序执行:引导程序被加载到内存后,它会开始执行,并根据指定的引导设备,将操作系统的核心文件加载到内存中。在Windows系统中,这个核心文件通常是NTOSKRNL.EXE。
-
操作系统初始化:操作系统核心文件被加载到内存后,操作系统开始进行一系列初始化工作,包括初始化硬件、建立进程管理机制、建立内存管理机制等。
-
用户登录:当操作系统初始化完成后,系统会显示登录界面,等待用户输入用户名和密码。如果用户输入的信息正确,则操作系统会加载用户配置信息,并启动用户的桌面环境。
总的来说,计算机的操作系统启动流程是一个复杂而有序的过程,需要多个硬件和软件组件协同工作,才能使计算机正常启动并进入工作状态。
3.Linux版本
查看 Linux系统内核版本
查看 Linux系统版本
Linux系统是一种开放源代码的操作系统,具有高度的可定制性和可扩展性,广泛应用于各种领域。以下是Linux系统的应用领域:
-
服务器领域:Linux系统在服务器领域应用广泛,其稳定性、安全性和可靠性被广泛认可。许多大型互联网公司,如Google、Facebook等,都使用Linux系统搭建服务器集群。
-
移动设备领域:Linux系统也被广泛应用于移动设备领域,例如Android系统就是基于Linux内核开发的移动操作系统。Android系统已成为全球最受欢迎的移动操作系统之一。
-
嵌入式设备领域:由于Linux系统的开源性和可定制性,它在嵌入式设备领域也应用广泛。例如,许多智能家居产品、智能穿戴设备和工业控制设备都运行在Linux系统之上。
-
超级计算领域:Linux系统在超级计算领域也得到了广泛应用。许多超级计算机都是基于Linux系统构建的,例如中国的“神威·太湖之光”超级计算机就是基于Linux系统构建的。
-
桌面应用领域:虽然Linux系统在桌面应用领域的份额相对较小,但是它在一些特定的领域中得到了广泛应用。例如,一些科学计算和图形处理等专业领域的工作站通常运行在Linux系统上。
总的来说,Linux系统的应用领域非常广泛,其开放源代码、可定制性和高度可扩展性使得它在各个领域都有着独特的优势。
4.Linux系统结构
Linux系统一般有的四个主要部分。
-
内核(Kernel):Linux系统的内核是系统的核心,它是操作系统与硬件之间的桥梁。内核负责管理系统的资源(如CPU、内存、外设等),并提供各种系统服务,如进程管理、内存管理、文件系统管理等。
-
Shell:Shell是Linux系统的命令行解释器,它是用户与系统之间的接口。用户可以通过Shell输入各种命令,Shell会将这些命令解释并传递给内核执行。Linux系统中有多种Shell可供选择,如Bash、Zsh等。
-
文件系统(File System):Linux系统采用类Unix的文件系统结构,文件系统是Linux系统中的重要组成部分。文件系统用于存储和组织数据,包括硬盘上的文件和目录,以及其他设备上的文件等。
-
应用程序(Application):Linux系统有大量的应用程序可供选择,包括文本编辑器、办公软件、浏览器、邮件客户端、编程工具等。这些应用程序可以通过包管理器进行安装和管理,用户可以根据自己的需求选择不同的应用程序。
总的来说,Linux系统的四个主要部分相互配合,共同构成了一个完整的操作系统。它们的协同工作为用户提供了一个稳定、高效、安全的计算环境。
5.Linux软件包管理
-
软件包:软件包通常指的是一个应用程序或软件库,它可以是一个GUI应用程序、命令行工具或其他软件程序需要的软件库。软件包一般包含了应用程序的可执行文件、配置文件、文档等,以便系统可以正确地安装和运行应用程序。
-
软件包管理:软件包管理指的是一系列工具和技术,用于管理Linux操作系统中的软件包。软件包管理通常包括两个层次的工具:底层工具和上层工具。
底层工具主要用于处理软件包的安装和删除等任务。在Debian和Ubuntu等基于Debian的系统中,常用的底层工具是DPKG;在Red Hat和CentOS等基于Red Hat的系统中,常用的底层工具是RPM。
上层工具主要用于执行数据的搜索任务和依赖解析任务。上层工具能够自动解决软件包之间的依赖关系,确保所需的软件包都被正确安装。在Debian和Ubuntu等基于Debian的系统中,常用的上层工具是APT;在Red Hat和CentOS等基于Red Hat的系统中,常用的上层工具是YUM或DNF。
总的来说,软件包和软件包管理是Linux系统中非常重要的组成部分。它们可以让用户轻松地安装和升级应用程序,提高系统的可用性和稳定性。