【Linux操作系统】——Linux概述

article/2025/9/24 17:47:28

Linux操作系统——Linux概述

在这里插入图片描述

1、操作系统OS

  定义:操作系统(Operating System,简称OS)是管理计算机硬件与软件资源的计算机程序。

  作用:是把计算机系统中对硬件设备的操作封装起来,供应用软件调用,也是提供一个让用户与系统交互的操作界面。

在我们的常见的操作系统中有:

PC端的操作系统

1、Windows

http://win.xsrfa.cn/win1164.html
在这里插入图片描述

2、MacOS

在这里插入图片描述

3、Linux
在这里插入图片描述

移动端操作系统

1、安卓系统与苹果系统

在这里插入图片描述

2、操作系统的发展史

Unix

  1965年之前的时候,电脑并不像现在一样普遍,它可不是一般人能碰的起的,除非是军事或者学院的研究机构,而且当时大型主机至多能提供30台终端(30个键盘、显示器),连接一台电脑

在这里插入图片描述

为了解决数量不够用的问题

  1965年左后由贝尔实验室、麻省理工学院 以及 通用电气共同发起了Multics项目,想让大型主机支持300台终端

  1969年前后这个项目进度缓慢,资金短缺,贝尔实验室退出了研究

  1969年从这个项目中退出的Ken Thompson当时在实验室无聊时,为了让一台空闲的电脑上能够运行“星际旅行”游行,在8月份左右趁着其妻子探亲的时间,用了1个月的时间 编写出了 Unix操作系统的原型

  1970年,美国贝尔实验室的 Ken Thompson,以 BCPL语言 为基础,设计出很简单且很接近硬件的 B语言(取BCPL的首字母),并且他用B语言写了第一个UNIX操作系统。

  因为B语言的跨平台性较差,为了能够在其他的电脑上也能够运行这个非常棒的Unix操作系统,Dennis Ritchie和Ken Thompson 从B语言的基础上准备研究一个更好的语言。

肯·汤普逊(左)和丹尼斯·里奇(右)

在这里插入图片描述

  1972年,美国贝尔实验室的 Dennis Ritchie在B语言的基础上最终设计出了一种新的语言,他取了BCPL的第二个字母作为这种语言的名字,这就是C语言。

  1973年初,C语言的主体完成。ThompsonRitchie迫不及待地开始用它完全重写了现在大名鼎鼎的Unix操作系统。

  早期的Unix系统都是针对专门的硬件系统开发的,不同厂商都是为自己的服务器开发专门的Unix操作系统。

Minix

  因为AT&T(通用电气)的政策改变,在Version 7 Unix推出之后,发布新的使用条款,将UNIX源代码私有化,在大学中不再能使用UNIX源代码。

  Andrew S. Tanenbaum(塔能鲍姆)教授为了能在课堂上教授学生操作系统运作的实务细节,决定在不使用任何AT&T的源代码前提下,自行开发与UNIX兼容的操作系统,以避免版权上的争议。他以小型UNIX(mini-UNIX)之意,将它称为MINIX

Linux
  因为Minix只是教学使用,因此功能并不强,因此Torvalds利用GNU的bash当做开发环境,gcc当做编译工具,编写了Linux内核-v0.02,但是一开始Linux并不能兼容Unix,即Unix上跑的应用程序不能在Linux上跑,即应用程序与内核之间的接口不一致,因为Unix是遵循POSIX规范的,因此Torvalds修改了Linux,并遵循POSIX(Portable Operating System Interface,他规范了应用程序与内核的接口规范); 一开始Linux只适用于386,后来经过全世界的网友的帮助,最终能够兼容多种硬件;

  Minix最有名的学生用户是Linus Torvalds,他在芬兰的赫尔辛基大学用Minix操作平台建立了一个新的操作系统的内核,他把它叫做Linux。

Linux内核最初只是由芬兰人 林纳斯·托瓦兹Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。

在这里插入图片描述

  Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIXUNIX的多用户、多任务、支持多线程和多CPU的操作系统。

  Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

  目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debain、Fedora、SuSE、OpenSUSE

在这里插入图片描述

在这里插入图片描述

UnixLinux区别

  LinuxUNIX的最大的区别是,前者是开放源代码的自由软件,而后者是对源代码实行知识产权保护的传统商业软件。

  这应该是他们最大的不同,这种不同体现在用户对前者有很高的自主权,而对后者却只能去被动的适应;这种不同还

  表现在前者的开发是处在一个完全开放的环境之中,而后者的开发完全是处在一个黑箱之中,只有相关的开发人员才能 够接触的产品的原型。

具体区别如下:

  • UNIX系统大多是与硬件配套的,而Linux则可运行在多种硬件平台上.

  • UNIX是商业软件,收费,而Linux是自由软件,免费、公开源代码的.

  • Linux商业化的有RedHat Linux 、SuSe Linux、slakeware Linux、国内的红-旗等,还有Turbo Linux.

  • Unix主要有Sun 的Solaris、IBM的AIX, HP的HP-UX,以及x86平台的的SCO Unix/Unixware.

3、Linux发行版本

在这里插入图片描述

  内核(kernel)是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层。

Linux内核版本又分为稳定版和开发版,两种版本是相互关联,相互循环:

  • 稳定版:具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些bug或加入一些新的驱动程序。
  • 开发版:由于要试验各种解决方案,所以变化很快。

 内核源码网址:http://www.kernel.org 所有来自全世界的对Linux源码的修改最终都会汇总到这个网站,由Linus领导的开源社区对其进行甄别和修改最终决定是否进入到Linux主线内核源码中。

  Linux发行版 (也被叫做 GNU/Linux 发行版) 通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件。

排行版本描述
1MX Linux基于Debian和antiX
2Linux Mint基于Ubuntu和Debian
3Ubuntu顶级Linux发行版之一
4Elementary OS基于Debian
5Manjaro Linux基于Arch Linux
6Zorin OS基于Debian
7Fedora软件技术方面处于领先地位
8Debian设计得非常稳定
9CentOS基于Fedora和Red Hat的企业最佳Linux
10Kali Linux基于Debian

Linux能做什么?

  Linux可作为企业级服务器,或嵌入式开发平台也包含个人桌面系统。包含虚拟化、数据库服务器、Web服务器、开发平台等等。

哪些人要学习Linux

  Linux管理员,oracle管理员,网络工程师,程序开发者等等。Linux系统涉及方面非常广泛,生态也越来越强大,非常适合大家学习。

个人桌面领域的应用

  此领域是传统linux应用最薄弱的环节,传统linux由于界面简单、操作复杂、应用软件少的缺点,一直被windows所压制,但近些年来随着ubuntufedora等优秀桌面环境的兴起,同时各大硬件厂商对其支持的加大,linux在个人桌面领域的占有率在逐渐的提高。

典型代表:ubuntufedorasuse linux

服务器领域

  linux在服务器领域的应用是其重要分支。

  linux免费、稳定、高效等特点在这里得到了很好的体现,但早期因为维护、运行等原因同样受到了很大的限制,但近些年来linux服务器市场得到了飞速的提升,尤其在一些高端领域尤为广泛

典型代表:

  • Red Hat公司的AS系列

  • 完全开源的debian系列

  • suse EnterPrise 11系列等

嵌入式领域

  近些年来linux在嵌入式领域的应用得到了飞速的提高。

  linux运行稳定、对网络的良好支持性、低成本,且可以根据需要进行软件裁剪,内核最小可以达到几百KB等特点,使其近些年来在嵌入式领域的应用得到非常大的提高。


http://chatgpt.dhexx.cn/article/N3NEdsIV.shtml

相关文章

Linux操作系统(详解及配置操作)

Linux操作系统 重点:linux的安装 linux的常用指令 linux的网络配置 shell编程 难点:linux的磁盘分区 linux的shell编程 linux日志 1 linux基础篇 1.1 linux的基本概述 1.1.1 linux的由来 ​ linux是一个开源、免费的操作系统,其稳定性、安…

Linux操作系统简介

文章目录 Linux发行版简介学习Linux的必备硬件知识 关键硬件器件——CPU关键硬件器件——存储关键硬件器件——内存其他一些查看硬件信息的命令 Linux开机过程(以Ubuntu16.04为例) 阶段1:BIOS阶段2:boot Loader阶段3:k…

Power Query 系列 (13) - 自定义函数

本篇博客介绍 Power Query 自定义函数的技巧,在 PQ 中计算个税。 以工资类所得应交个税为例,最新的个税起征点为 5000 并按下表的级次进行缴税(假设没有其它扣除项)。 对照税率表,我们先看看手工如何计算。比如 xxx…

MySQL—自定义函数

函数 本文是在 navicat 中演示如何创建 自定义函数 ,建议先去看有关的书籍了解一下。我之前分享过一篇 《MySQL 8》的资料 可以参考一下。因为是 navicat 是客户端工具,所以他会给我们省去一些操作,比如 ; 的转义; 参…

【MySQL 第十天 自定义函数|创建和使用自定义函数|循环判断语句的使用】

【MySQL 第十天 自定义函数|创建和使用自定义函数|循环判断语句的使用】 【1】mysql自定义函数的介绍【2】mysql创建和使用自定义函数【3】mysql删除自定义函数【4】mysql流控的使用【4.1】mysql流程控制语句【4.2】mysql IF语句【4.3】mysql CASE语句【4.4】mysql WHILE循环语…

SQL Function 自定义函数

目录 产生背景(已经有了存储过程,为什么还要使用自定义函数) 发展历史 构成 使用方法 适用范围 注意事项 疑问 内容 产生背景(已经有了存储过程,为什么还要使用自定义函数) 与存储过程的区别&…

【精品】MySQL 自定义函数

语法 CREATE FUNCTION <函数名>(参数列表) RETURNS <返回值数据类型> BEGINRETURN(<SQL语句>); END示例一&#xff1a;生成随机的电话号码 CREATE FUNCTION generatePhone() RETURNS char(11) CHARSET utf8 DETERMINISTIC BEGINDECLARE head VARCHAR(100)…

sql:mysql:自定义函数

一、基本语法 delimiter 自定义符号  -- 如果函数体只有一条语句, begin和end可以省略, 同时delimiter也可以省略create function 函数名(形参列表) returns 返回类型  -- 注意是retrunsbegin函数体    -- 函数内定义的变量如&#xff1a;set x 1; 变量x为全局变量&am…

mysql之自定义函数

本文内容&#xff1a; 什么是函数函数的创建函数的调用函数的查看函数的修改函数的删除 首发日期&#xff1a;2018-04-18 什么是函数&#xff1a; 函数存储着一系列sql语句&#xff0c;调用函数就是一次性执行这些语句。所以函数可以降低语句重复。【但注意的是函数注重返回值&…

SQL Server 自定义函数(Function)

SQL Server 自定义函数&#xff08;Function&#xff09;——参数默认值 sql server 自定义函数分为三种类型&#xff1a;标量函数&#xff08;Scalar Function&#xff09;、内嵌表值函数&#xff08;Inline Function&#xff09;、多声明表值函数&#xff08;Multi-Statemen…

mysql自定义函数实现

mysql自定义函数实现 环境准备 查看mysql版本 select version();查看mysql存储引擎 show variables like %storage_engine%;创建测试表 CREATE TABLE dsp_user_media_tag (id int(11) NOT NULL AUTO_INCREMENT,imei varchar(50) COLLATE utf8_bin DEFAULT NULL,tagname va…

MySQL自定义函数用法详解

MySQL自定义函数用法详解-复合结构自定义变量/流程控制 自定义函数 (user-defined function UDF)就是用一个象ABS() 或 CONCAT()这样的固有&#xff08;内建&#xff09;函数一样作用的新函数去扩展MySQL。 所以UDF是对MySQL功能的一个扩展 创建和删除自定义函数语法: 创建UDF:…

SQL server 自定义函数FUNCTION的使用

前言&#xff1a; 在SQL server中不仅可以可以使用系统自带的函数&#xff08;时间函数、聚合函数、字符串函数等等&#xff09;&#xff0c;还可以根据需要自定义函数。 一、定义&#xff1a; 用户自定义函数的类型&#xff1a; 1、标量值函数&#xff08;返回一个标量值&a…

功能测试用例设计方法分享

测试用例可以用来衡量一个项目测试质量&#xff0c;因此在平时的测试流程中&#xff0c;编写测试用例就是测试过程中很重要的一步&#xff0c;每一个测试工程师都需要并且非常熟练的编写测试用例&#xff0c;能在编写测试用例中尽可能的覆盖任何异常的测试点&#xff1b;如何能…

判定表测试用例方法——实例

测试用例设计方法——判定表法 判定表法表示的是有多个输入&#xff0c;和多个输出&#xff0c;而且输入与输入之间有相互的组合关系、输入和输出之间有相互的制约和依赖关系, 判定表由四个组成部分 判定表基本概念  条件桩&#xff1a;输入条件, 列出了系统的所有输入&…

测试用例编写方法

测试用例编写方法 等价类划分法 一、等价类划分法的定义 把程序的输入域和输出域划分成若干部分&#xff0c;然后从各个部分中选取若干代表性数据作为测试用例。这些数据在测试中的作用等价于其所属部分的其他值。 二、等价类划分法的术语 等价类&#xff1a;输入域的各个…

软件测试用例设计方法(一)

目录 软件测试用例设计之等价类划分法一、等价类划分法的定义二、等价类划分法的术语三、等价类划分原则四、实例演示&#xff08;三角形问题和档案管理系统问题&#xff09; 软件测试用例之边界值分析法一、边界值分析法定义二、等价类划分法和边界值分析法的区别三、内部边界…

测试用例方法-判定表法

判定表法案例 若用户欠费或关机&#xff0c;则不允许主被叫 等价类划分法和边界值分析法都是着重考虑单个输入的输入条件&#xff0c;但是没有考虑输入条件的各种组合&#xff0c;输入条件与输出条件之间的相互制约关系。所以要使用判定表法才能解决上述案例编写测试用例的过…

编写测试用例方法之错误推测法

今天我们再来介绍另外一个编写测试用例的方法&#xff1a;错误推测法。话不多说&#xff0c;开始整干货&#xff0c;老规矩&#xff0c;首先全图镇楼。 错误推测法其实它不同于等价类划分法或者边界值分析法&#xff0c;它是对有效等价类和边界值分析法的一个补充。因为错误推测…

【测试】编写测试用例的常用方法

文章目录 1&#xff09;等价类划分法1.1 什么是等价类有效等价类&#xff1a;无效等价类&#xff1a; 1.2 划分标准1.3 划分方法1、确立等价类2、转化为测试用例 1.4 实例&#xff1a;三角形问题1.4.1 分析对输入条件的要求&#xff08;显性和隐性&#xff09;1.4.2 列出等价类…