---初始Linux---

一、认识计算机

计算机 = 硬件 + 软件

硬件:就是计算机系统中由电子、机械和光电元件等组成的各种物理装置的总称(CPU\GPU\...)

软件:是用户和计算机硬件之间及进行交流的工具

然而一个简单的计算机或者说基本的计算机就是有两大部分组成的:操作系统 + 硬件

其中,操作系统其实就是软件中的一种,是一种系统软件

二、操作系统

认识

管理计算机硬件与其他软件资源的计算机程序,同时也是计算机系统的内核和基石。

用在什么地方?

  • 管理与配置内存【资源调度】
  • 决定系统资源供需的优先次序(简答理解就是当两款软件同时运行的时候,操作系统会据决定由哪个软件优先使用当前的系统资源)【资源调度】
  • 控制输入设备与输出设备(输入设备有鼠标、键盘等,输出设备有显示器、打印机等)
  • 操作网络与管理文件系统等基本事务。(比如平时上网操作系统也得管,新建文件、删除文件、打开文件、保存文件等操作系统也得管)
  • 操作系统也提供了一个让用户与系统两者之间进行交互的操作界面。(这个指的就是我们平时使用的图形化界面,通过图形化界面,我们就可以利用鼠标跟操作系统之间进行交互了)

总的来说,用户想要使用软件需要操作系统调度,想要使用硬件交流也需要操作系统做桥梁

主流操作系统

桌面操作系统(PC):Windows、MacOS、Linux

嵌入式操作系统:Linux

服务器操作系统:Linux、Windows Server

移动设备操作系统:Unix【ios】【Linux【Android】【华为鸿蒙】】

  • Linux作为服务器的操作系统,安全稳定,而且免费开源。
  • Windows Server它的使用率非常低,最大的原因就是它是微软推出来的,是收费的要给钱的。
  • 像智能手表、智能微波炉、智能录像机等等,它里面的操作系统就是嵌入式操作系统。
  • 移动设备:手机、平板,它里面使用的这个操作系统,是叫做Unix操作系统
  • 根据Unix操作系统又渐渐的演变出了Linux还有IOS
  • 而安卓它是由Linux演变而来的,而Linux又是由Unix演变而来的。
  • 世界五百强当中的百分之95的企业都使用的是Linux操作系统。

三. 初识Linux

什么是Linux?

  1. Linux是一套免费使用和自由传播的类Unix操作系统。

  2. Linux操作系统是基于以前的Unix操作系统而开发出来的。

  3. 是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。

  4. 它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和63位硬件。

  5. Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
    Linux的特点

两个基本思想:a.一切都是文件(包括命令、硬件和软件设备、操作系统进程等等) b.每个软件都有确定的用途

  1. 多用户、多任务

  2. Linux是有图形化界面的,但是除了图形化界面之外,Linux还有字符的操作界面,这个字符的操作界面就跟Windows里面的cmd命令行是一样的,我们可以通过一些命令去操作计算机

  3. 支持多种平台(Linux可以运行在多种硬件平台上)

其它三大优点:a.源代码完全开源 b.具有非常强大的网络功能 c.工具链完整(简单操作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性)
Linux和Unix的区别

Linux是基于Unix的,也就是说Linux它是由Unix演变而来的。
开源情况:

Linux它是开源的,而Unix它是不开源的,使用是需要收费的。
硬件适用:

Unix系统大多是跟硬件配套的,能在你电脑当中成功运行,但是在别人的电脑当中不一定能成功运行,因为你们两个人的硬件是有可能不太一样的。

但是Linux就非常好了,它可以运行在多种硬件平台上。
本质不同:

Linux它是开放源代码的自由软件,用户的自主权会非常的高。

而Unix是看不到源代码的,用户的自主权几乎为零。

认识POSIX

POSIX(Portable Operating System Interface of UNIX,UNIX可移植操作系统接口)是一系列标准,旨在为操作系统提供一致的接口,使得软件能够在不同的UNIX系统和其他兼容系统上运行而无需修改。POSIX定义了操作系统应提供的系统服务、库函数、命令行工具和程序的语法标准。

POSIX标准包括:

1. 系统接口:包括进程管理、文件系统、网络通信、设备I/O等。

2. 库函数:C语言标准库中定义的函数,如字符串处理、数学计算、时间处理等。

3. 命令行界面:定义了一组标准的命令行工具和它们的使用方式。

4. 编程语言:支持多种编程语言,包括C、C++、Fortran、Ada等。

5. 文件系统:定义了文件和目录的组织方式。

6. 权限和安全:定义了用户权限和安全模型。

7. 信号处理:定义了进程间通信的信号机制。

POSIX标准使得UNIX和类UNIX系统(如Linux、macOS、FreeBSD等)能够提供一致的编程环境,从而简化了软件开发和移植过程。

此外,POSIX标准也影响了非UNIX系统的开发,许多非UNIX系统也实现了POSIX兼容的接口,以提高软件的可移植性。

更细节的如下:

Linux系统是一种基于UNIX的开源操作系统,它由多个部分组成,每个部分都有特定的作用和功能。以下是Linux系统的组成以及各部分的作用和联系:

  1. 内核(Kernel):
  • 作用:内核是Linux系统的核心,负责管理系统资源,包括内存管理、进程管理、文件系统、设备驱动等。

  • 联系:内核作为操作系统的桥梁,连接硬件和软件,为用户空间的程序提供执行所需的服务。

系统级软件:

  1. 文件系统(File System):
  • 作用:文件系统是Linux系统中存储和组织数据的方式。它提供了一种层次化的方法来访问文件和目录。

  • 联系:文件系统构建在内核之上,允许用户和应用程序访问、读取、写入和组织数据。

  1. Shell(命令行界面):
  • 作用:Shell是一个命令行解释器,允许用户通过命令行与系统交互,执行命令和启动程序。

  • 联系:Shell提供了一个用户友好的界面,使用户能够控制Linux系统的各种操作。

  1. 图形用户界面(GUI):
  • 作用:图形用户界面提供了一个可视化的环境,使用户能够通过图形和图标与系统交互,而不仅仅是文本命令。

  • 联系:GUI通常作为Shell的补充,为用户提供更直观的操作方式。

  1. 系统库(System Libraries):
  • 作用:系统库提供了一组预先编写的代码,用于执行常见的系统级任务,如输入/输出操作、网络通信等。

  • 联系:应用程序通常依赖这些库来执行底层操作,而无需从头开始编写所有代码。

  1. 应用程序(Applications):
  • 作用:应用程序是为特定目的而设计的软件,如文本编辑器、网页浏览器、邮件客户端等。

  • 联系:应用程序运行在Linux系统之上,使用内核、文件系统、系统库和Shell提供的功能。

  1. 设备驱动程序(Device Drivers):
  • 作用:设备驱动程序是内核的一部分,负责管理硬件设备,如打印机、网络卡、图形卡等。

  • 联系:设备驱动程序使得硬件设备能够与操作系统和应用程序交互。

  1. 守护进程(Daemons):
  • 作用:守护进程是后台运行的服务,用于执行特定的系统任务,如打印服务、网络服务等。

  • 联系:守护进程作为系统服务的一部分,为用户提供持续的服务和后台任务处理。

  1. 配置文件(Configuration Files):
  • 作用:配置文件包含系统和应用程序的设置,它们定义了系统的行为和外观。

  • 联系:配置文件允许用户和管理员根据需要调整系统和应用程序的运行方式。

  1. 用户和组管理(User and Group Management):
  • 作用:Linux系统提供了用户和组管理机制,用于控制对系统资源的访问。

  • 联系:用户和组管理确保了系统的安全性,通过权限和访问控制列表(ACLs)来管理用户对文件和程序的访问。

总之,Linux内核是操作系统的核心,负责管理系统资源和调度,而其他系统级软件则提供了操作系统的功能和用户界面。这种分离的设计使得Linux系统既灵活又强大,能够满足各种不同的需求。

关系: 【硬件】--- 【Linux操作系统【内核】】---【软件】

相关推荐
叶北辰CHINA1 小时前
nginx反向代理,负载均衡,HTTP配置简述(说人话)
linux·运维·nginx·http·云原生·https·负载均衡
不惑_1 小时前
在 Ubuntu 安装 Python3.7(没有弯路)
linux·运维·ubuntu
theo.wu2 小时前
使用Buildpacks构建Docker镜像
运维·docker·容器
玉树临风江流儿3 小时前
Linux驱动开发(速记版)--设备模型
linux·驱动开发
杰哥在此3 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
枫叶丹45 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器
刻词梨木5 小时前
ubuntu中挂载点内存不足,分配不合理后使用软链接的注意事项
linux·运维·ubuntu
灯火不休ᝰ6 小时前
[win7] win7系统的下载及在虚拟机中详细安装过程(附有下载文件)
linux·运维·服务器
数云界8 小时前
如何在 DAX 中计算多个周期的移动平均线
java·服务器·前端
powerfulzyh9 小时前
Ubuntu24.04远程开机
linux·ubuntu·远程工作