【Linux】入门篇-Linux的历史及发展历程(linux小型化成为安卓竟然有一段那么有趣的历史!!!)

news2024/11/19 17:28:14

目录

1.硬件的发展:1946年2月14日,人类历史上第一个计算机---埃尼阿克:为战争而生

1.1计算机的诞生-----为了战争(军工阶段)

研发的原因

时间就是胜利

冯·诺依曼

战争的作用

1.2 硅谷模式(时代背景)的了解----计算机从军工到民生(计算机硬件的普及)

2.计算机的商业化(商业阶段)

3.从硬件到操作系统

4.Linux的诞生------天才少年的探索

5.查看Linux开源源代码:www.kernel.org

6.进一步理解开源

7.Linux小型化成为安卓的前尘往事

8.企业应用现状

9.linux的发行版本

10.写在最后


谈论起源是一件颇具争议的事,誰才是门派正宗,正本清源,这些问题过于难缠,本篇文章的目的是通过对计算机的由来,硬件到软件等的大概发展历史中讲述linux的故事,给今后的linux学习或者讲解做一定的铺垫。(肚中有粮,前路不慌)那么接下来就让我们打开这神秘的面纱。 

1.硬件的发展:1946年2月14日,人类历史上第一个计算机---埃尼阿克:为战争而生

ENIAC,全称为Electronic Numerical Integrator And Computer,即电子数字积分计算机。ENIAC是继ABC(阿塔纳索夫-贝瑞计算机)之后的第二台电子计算机和第一台通用计算机。

它是完全的电子计算机,能够重新编程,解决各种计算问题。它于1946年2月14日在美国宣告诞生。 承担开发任务的人员由科学家约翰·冯·诺依曼和“莫尔小组”的工程师埃克特、莫希利、戈尔斯坦以及华人科学家朱传榘组成。总工程师埃克特在当时年仅25岁。

            图1-1  第一台计算机   埃尼阿克

                           

    

                         埃尼阿克

我们可以看到第一台计算机的体积是非常之庞大的,大量的物理线路,而且是外露的。这是因为受制于当时的半导体技术。

ENIAC长30.48米,宽6米,高2.4米,占地面积约170平方米,30个操作台,重达30英吨,耗电量150千瓦,造价48万美元。它包含了17,468根真空管(电子管)7,200根水晶二极管,1,500 个中转,70,000个电阻器,10,000个电容器,1500个继电器,6000多个开关,计算速度是每秒5000次加法或400次乘法,是使用继电器运转的机电式计算机的1000倍、手工计算的20万倍。

1.1计算机的诞生-----为了战争(军工阶段)

那么是什么促进了计算机的诞生,又是为了什么理由促进了埃尼阿克的诞生呢?

那么我们阅读百度百科的这段背景:

研发的原因

研制电子计算机的想法产生于第二次世界大战进行期间。当时激战正酣,各国的武器装备还很差,占主要地位的战略武器就是飞机和大炮,因此研制和开发新型大炮和导弹就显得十分必要和迫切。为此美国陆军军械部在马里兰州的阿伯丁设立了“弹道研究实验室”。 [2]

美国军方要求该实验室每天为陆军炮弹部队提供6张射表以便对导弹的研制进行技术鉴定。事实上每张射表都要计算几百条弹道,而每条弹道的数学模型是一组非常复杂的非线性方程组。这些方程组是没有办法求出准确解的,因此只能用数值方法近似地进行计算。

时间就是胜利

不过即使用数值方法近似求解也不是一件容易的事!按当时的计算工具,实验室即使雇用200多名计算员加班加点工作也大约需要二个多月的时间才能算完一张射表。在“时间就是胜利”的战争年代,这么慢的速度怎么能行呢?恐怕还没等先进的武器研制出来,败局已定。

为了改变这种不利的状况,当时任职宾夕法尼亚大学莫尔电机工程学院的莫希利(John Mauchly)于 1942年提出了试制第一台电子计算机的初始设想——“高速电子管计算装置的使用”,期望用电子管代替继电器以提高机器的计算速度。

美国军方得知这一设想,马上拨款大力支持,成立了一个以莫希利、埃克特(John Eckert)为首的研制小组开始研制工作、预算经费为15万美元,这在当时是一笔巨款。

冯·诺依曼

                   计算机之父

让研制工作十分幸运的是,当时任弹道研究所顾问、正在参加美国第一颗原子弹研制工作的数学家冯·诺依曼(von Neumann,1903-1957,美籍匈牙利人)带着原子弹研制(1944年)过程中遇到的大量计算问题,在研制过程中期加入了研制小组。原本的ENIAC存在两个问题,没有存储器且它用布线接板进行控制,甚至要搭接几天,计算速度也就被这一工作抵消了。

1945年,冯·诺依曼和他的研制小组在共同讨论的基础上,发表了一个全新的“存储程序通用电子计算机方案”——EDVAC(Electronic Discrete Variable Automatic Computer)在此过程中他对计算机的许多关键性问题的解决作出了重要贡献,从而保证了计算机的顺利问世。

虽然ENIAC体积庞大,耗电惊人,运算速度不过几千次,但它比当时已有的计算机要快1000倍,而且还有按事先编好的程序自动执行算术运算、逻辑运算和存储数据的功能。ENIAC宣告了一个新时代的开始。从此科学计算的大门也被打开了。

战争的作用

但为什么世界上第一台电子计算机要退至40年代中期才得以问世呢?这里面主要是实际需要是否迫切和资金是否到位的问题。实际需要当然一直都存在,谁不想拥有一种最先进的计算工具呢?但光是需求并不能决定一切。凡研制一种新工具,总是需要先期投入大量资金(研制ENIAC时,一开始就投资15万美元,但最后的总投资高达48万美元,这在40年代可是一笔巨款!)。能为一种未问世的工具大胆出钱的总是少数。

最后还是战争使计算机的诞生成为现实。事实上各种各样的社会需求中,战争期间的需求始终是最迫切的,因为事关生死存亡。政府和军方总是出手大方,将最新的科技成果应用到诸如战略和常规武器的研制工作上,以确保己方在军事上处于领先地位。

电子计算机正是在第二次世界大战弥漫的硝烟中开始研制的。如前面所述,当时为了给美国军械试验提供准确而及时的弹道火力表,迫切需要有一种高速的计算工具。因此在美国军方的大力支持下,世界上第一台通用计算机ENIAC于1942年开始研制。参加研制工作的是以宾夕法尼亚大学莫尔电机工程学院的莫西利和埃克特为首的研制小组。

重点来说:埃尼阿克的诞生最开始就是为了计算导弹的弹道,是为了军工而诞生。

1.2 硅谷模式(时代背景)的了解----计算机从军工到民生(计算机硬件的普及)

这是MBA百科的分享,大家可以了解

硅谷模式----MBA百科

下面我用自己的理解来给大家讲解

首先,科技的前沿的应用的聚集地和科技创新的诞生地并不是各个高校,而是以政府为导向的军工。比如计算机就是为了计算导弹的弹道轨迹诞生,比如微波炉最早也是红外线的光电信号加热后面小型化,比如网络,最开始也是美国70年代研发,后续普及,再比如化肥技术,化肥本身是工业品,合成氨,在生产的时候有工序就需要能够承受高压高温的材料,我国最开始的时候,没有能力能造化肥的重要因素就是我们国家没有办法创造这种材料,当我国可以制造原子弹的时候,我们的化肥也就可以制造了。所以计算机也是我们科技蓬勃发展的产物。

而科技创新的前提就是---------钱

政府将钱投入到军工(比较花钱)

政府收税得到钱,用于军工、民生建设等等

军工---》研发产品---》但是这些产品有些可以使用,有些不能使用(比如某些热武器),那么花钱造了,却用不了,就造成了一些钱财的损失。那么这些损失需要用其他方式来减少损失。

第二个由于军队的人才储备,也就是做研究,进行科技研发研究和科技创新研究的人员相对于高校、研究所等地方人员较少。

所以学术方面就对接给了某些高校。

那么对应的某些可以小型化可以民用化的技术,或者说在研发过程中公开的技术就会由我们的一些军工技术的复杂人和我们的某些商业公司一起,将一项或者多项技术进行打包开发为产品(比如我们现在使用的计算机中包含的芯片、电容、光电信号、操作系统、应用等等的各种软硬件技术,打包和我们的inter 苹果等公司整合),然后出售给我们的公司或者个人。

那么政府出售技术给商业公司创造出商业产品,那么这些商业公司可以盈利的同时也孵化出更多的公司。那么个人和公司就可以上税,政府也就可以减少损失。

那么上述的商业公司和个人在刚启动时比较缺钱,这就但是了金融公司比如硅谷、华尔街。

整个研发流程,美国等将这个模式称为硅谷模式

那么计算机就是在硅谷模式的运行下实现了普及和民用化,逐渐成为我们日常生活不可获取的工具。

         最开始的计算机:体积大、能耗高(非常耗电)、运行速度相对还是比较慢、操作门槛还是比较高(最先使用计算机的是科学家们,(三体中)),那么计算机小型化就是当时的目标和愿望,但是制约计算机体积的重要技术就是半导体技术(芯片),这里还有一个摩尔定律

“摩尔定律”是集成电路行业所遵循的规律,是指价格不变时,集成电路上可容纳的晶体管数目,每隔18~24个月便会增加一倍,器件性能亦提升一倍。摩尔定律在计算机的发展史中贯穿始终

计算机小型化的背后就是芯片的小型化。在摩尔定律的指导下,从194X年开始后的一二十年间,随之时间的发展,计算机体积变小、效率变高、能耗和成本降低。

最后政府经历这么漫长的过程实现了计算机的小型化,还是为了减少损失,那么就想将计算机的商业化了。

2.计算机的商业化(商业阶段)

政府军工+IBM(也被称为蓝色巨人)---->开始构建出企业级计算机(还是比较贵的价格)

原因:计算机体积依旧很大,造价成本依旧很高,目标客户是企业或政府 金融机构股市,银行

上世纪六七十年代{施乐,苹果等公司将计算机进一步小型化 开始个人pc的开发。}

知乎文章----麦金塔诞生记

第一款比较不错的   麦金塔   

计算机操作不方便,软件资源也非常非常少,苹果开始做操作系统(前面还有启发乔布斯的系统大家可以看一下),微软

等也开始了,为了对抗苹果,微软+IBM,但是IBM是为了给政府和公司

即使当时的苹果公司的电脑的出售很好,IBM依旧不看好计算机的民用化市场,因为价格太贵,很多人买不起,后续和微软分手。微软+inter(英特尔做芯片)  软件+硬件   孵化出了各种各样的电脑

厂商,联想、戴尔、华硕基本搭载windows,芯片搭载x86,x64.

那么时代背景就来到了:

①苹果公司有自己的软硬件和操作系统,诞生了苹果的pc电脑.

②windows操作系统+X86孵化出的各种电脑。

那么在计算机小型化到计算机商业化的过程中,我们的操作系统和网络已经开始萌芽,今天我们就不谈及网络过多。主要原因是计算机不好操作,为了让我们的计算机更易于操作,就有人设计制作了操作我们计算机的软件----操作系统

3.从硬件到操作系统

对于人们来说,特别是大多数的我们,直接上手操作我们的计算机是比较困难的,为了更好的操作我们的计算机,人们就研发了控制了计算机的软件-----操作系统。最早期的主流操作系统-----Unix操作系统。那么在计算机出现发展的同时,上世纪五六十年代,unix系统就在被一批技术人员研究,目的是:能在计算机上运行一款软件,可以帮用户自动化的完成一些操作。比如说:打印东西到屏幕硬件上。计算机的本质是:用户将数据输入给计算机,计算机将结果展示给用户,所以任何计算机都得有输入和输出,那么早期的计算机只有硬件没有软件,所有的输入输出都是靠开关按键。

就像《三体》中叶文洁操作的电脑

直接使用开关过于麻烦,而且机器容易损坏,维修成本也会增加,人们就像得到这样一个东西来帮助我们完成,计算机用户需要的计算数据,至于如何输入输出并不是用户所要关心的东西。有没有一款软件可以将软件资源管理起来------操作系统就诞生(此时时间大概为上世纪五六十年代,没有我们的C语言)。后来就有了一些打孔的纸带编程,《三体》中叶文洁给三体世界传输地球坐标手里拿着的就是打孔的二进制序列。

但是效率太低,诞生了汇编语言。

汇编语言百度百科

那么我们的第一款操作系统就是使用我们的汇编语言编写。

肯尼斯·蓝·汤普森于1969年编写了第一个版本的Unix操作系统,这是第一个可移植操作系统,它为计算领域的网络范式奠定了基础,当时使用的是运行在GECOS上的交叉汇编程序,Unix为用户提供交互式远程终端计算和共享文件系统,肯尼斯·蓝·汤普森还基于BCPL创建了一种称为B的解释性语言,用它来重新实现Unix的非内核部分,他与合作者在1973年用C语言重写了Unix的大部分,这使得进一步的开发和移植到其他平台变得更加容易,Unix后来被设计成可以在从大型机到个人电脑的设备上运行,在学术环境和互联网服务器上广泛使用

肯尼斯·蓝·汤普森

操作系统跑了一段时间过后,诞生了C语言:

丹尼斯·麦卡利斯泰尔·里奇是C语言、Unix操作系统和Plan 9的创建者之一。

人物介绍

而两人又是好友,所以用C语言重新编写了unix,诞生了C语言版本的unnix操作系统。

目前:企业级计算机+C语言Unix操作系统= 慢慢变成了我们的依靠解决方案。

4.Linux的诞生------天才少年的探索

那么由于计算机这种强大的计算能力,不仅仅可以用到我们日常生活中金融计算,数值计算等。更多的计算机可以给科研提供支持,其算力比较强,所以计算机继续科研领域。那么像麻省理工等知名高校就会有很多人进行这方面的资助,设备的采购,不知名的高校也会由于政府的补贴在外采购设备。特别的,我们今天介绍内容要提到的一个大学-----位于芬兰的赫尔辛基大学

赫尔辛基大学百度百科

赫尔辛基大学当时拥有不错的计算机资源,这些计算机都搭载了Unix操作系统。学生可以接触到这些计算机,然后有这样一位学生在使用计算机的时候就觉得这些操作系统和各种各样的计算机资源都要收钱,所以这位学生回到宿舍就着手自己写一款操作系统。写完后将第一款操作系统命名为:

                         Linux     

含义:Linux is not Unix

并将其开源(人们可以用较少的成本获得这个操作系统(几乎不花钱))。这位少年的名字是:林纳斯·本纳第克特·托瓦兹

人物百度百科介绍

正是因为Linux是开源的,才有了我们现在的故事以及未来将要发生的故事。

随着时间的推演,Linux已经由原先的一万多行代码增长到了我们现在的五千万到七千万行代码,称为主流的操作系统之一,包括我们的安卓等内核的底层操作系统也是Linux.也是因为开源,林纳斯·本纳第克特·托瓦兹实际上是不受乔布斯和比尔盖茨的喜欢的。

所以:Linux是用C语言写的,一款源代码宫濑的操作系统软件(开机启动时还是会使用到少量的汇编语言)

5.查看Linux开源源代码:www.kernel.org

 这些就是Linux的源代码,都很大。

最早期的源代码大家可以到gitee上搜索:Linux 0.11源代码

只有1.1-1.2万行。

6.进一步理解开源

可能很多伙伴初学就有疑问为什么要将操作系统的源代码公开,发布自己专利不是更好吗?

还有为什么会有那么多的人自愿的来维护这个操作系统,没有人支付报酬?

首先我们理解一下第三个问题,为什么会有人无偿参与

在我的理解中,参与维护Linux系统的都是一些工程师或者顶级黑客,那么对于这些人来说,经济已经不是他们所追求的东西了,至少不会为了养活自己活着家庭奔波,其次,很多顶级的工程师和黑客追求的东西可能是更深远的东西,比如改变世界,而Linux确实具备这样的条件,第三点,从人类志愿精神来理解。

开源的好处在哪里?开源好还是闭源好?

首先判断好不好的标准应该是:代码稳定(bug少),效率高、安全性高

①从开源来说:开源源代码公开的时候,将会有很多人一直在看,也有很多人在写,很多人再用,那么就会很容易发现代码中的问题,这就是开源的特点(参与人数众多(有人写、有人看、有人用、有人发现问题、有人解决问题、更有人会提出更好的代码或者问题解决方案)这个过程完全自动),所以最终,代码放在开源地方,有不足等可以很快搞定。

那么对于闭源来说,操作系统是工业排名第一的难写,设计到各种硬件各种算法。写一套操作系统可能需要像阿里这样的公司万人之力,所以参与人数有限,因为闭门造车,windows是因为人用得多,所以问题也会暴露但是不完全,就像我们电脑蓝屏黑屏我们会去发一篇论坛,显然是不会的,所以问题修改并不完全。

②就问题解决层面来说,当操作系统出现问题,那么我们的研发公司肯定也会有两三个人一起维护这个板块,那么就会问责到这几个人员,那么由于这个东西是和奖金或者绩效挂钩,那么最终,大家就会触发这种思想:我自己写的代码我还能不清楚吗,肯定是你的问题,问题重心就从:如何解决问题到是谁的问题,解决问题的效率就低下了。

而开源的项目不和利益挂钩,大家会争先恐后的去发现这个开源代码的问题。所以开源项目的开发效率很高(热度比较高的情况下)

③安全性方面:由于代码公开就意味着逻辑公开了,那么就不会存在非法盗用问题。

所以这就是为什么企业选择Linux作为开发后台:

免费、高效、稳定、安全这些都是开源带来的。

7.Linux小型化成为安卓的前尘往事

开源也是一种商业手段

大概在08年前,手机只有两种:苹果和其他,只有苹果做出相对只能的手机,从苹果3开始只能手机大量发展。

由于苹果的这种发展,一些公司开始汲汲自危,其中就有我们的主角:谷歌

谷歌 最开始的危机感来自于windows,因为早期我们购买电脑走知道,windows系统内置了一款浏览器也就是搜索引擎IE浏览器

相比起关心使用什么搜索来说,人们更喜欢操作系统,所以在人们使用微软的操作系统的时候就直接使用我们的ie浏览器就行搜索。然后操作系统不允许安装其他浏览器,很多浏览器厂商就倒闭了,百度、谷歌等公司就瑟瑟发抖了。所以,就有很多人开始对抗,360、搜狗等等,所以平台性质的操做系统级别的软件一但大面积兴起就会导致我们上次软件发生很大的改变,那么同类型的软件将会将性命交给了别人。那么回过头来,苹果公司的手机的用户基数分布之广,而且苹果拥有自己的系统,如果苹果也要做自己的搜索引擎,那么必然导致其他公司将消失在时代的浪潮中。移动端谷歌就会失去存在价值。那么为了防止这种情况,谷歌在12年左右就在美国收购了一家做Linux小型化的公司。

linux小型化:将linux的源代码内核编译成二进制文件内置于手机中

然后立马将这个小的操作系统开源了,将这个操作系统命名为安卓。

然后过年的互联网公司就开始狂热做我们的国产手机了,早期的华为、小米、魅族。因为我们国家从06/07出现很多的山寨智能机,说明我国具有硬件能力,接触操作系统后就可以发展手机产业了。谷歌也在移动端有了话语权。

8.企业应用现状

  • Linux在服务器领域的发展 随着开源软件在世界范围内影响力日益增强,Linux服务器操作系统在整个服务器操作系统市场格局中占 据了越来越多的市场份额,已经形成了大规模市场应用的局面。并且保持着快速的增长率。尤其在政府、 金融、农业、交通、电信等国家关键领域。此外,考虑到Linux的快速成长性以及国家相关政策的扶持力 度,Linux服务器产品一定能够冲击更大的服务器市场。 据权威部门统计,目前Linux在服务器领域已经占据75%的市场份额,同时,Linux在服务器市场的迅速崛 起,已经引起全球IT产业的高度关注,并以强劲的势头成为服务器操作系统领域中的中坚力量。
  • Linux在桌面领域的发展 近年来,特别在国内市场,Linux桌面操作系统的发展趋势非常迅猛。国内如中标麒麟Linux、红旗 Linux、深度Linux等系统软件厂商都推出的Linux桌面操作系统,目前已经在政府、企业、OEM等领域得 到了广泛应用。另外SUSE、Ubuntu也相继推出了基于Linux的桌面系统,特别是Ubuntu Linux,已经积 累了大量社区用户。但是,从系统的整体功能、性能来看,Linux桌面系统与Windows系列相比还有一定 的差距,主要表现在系统易用性、系统管理、软硬件兼容性、软件的丰富程度等方面。
  • Linux在移动嵌入式领域的发展 Linux的低成本、强大的定制功能以及良好的移植性能,使得Linux在嵌入式系统方面也得到广泛应用,目 前Linux以广泛应用于手机、平板电脑、路由器、电视和电子游戏机等领域。在移动设备上广泛使用的 Android操作系统就是创建在Linux内核之上的。目前,Android已经成为全球最流行的智能手机操作系 统,据2015年权威部门最新统计,Android操作系统的全球市场份额已达84.6%。 此外,思科在网络防火墙和路由器也使用了定制的Linux,阿里云也开发了一套基于Linux的操作系 统“YunOS”,可用于智能手机、平板电脑和网络电视;常见的数字视频录像机、舞台灯光控制系统等都在 逐渐采用定制版本的Linux来实现,而这一切均归功与Linux与开源的力量。
  • Linux在云计算/大数据领域的发展 互联网产业的迅猛发展,促使云计算、大数据产业的形成并快速发展,云计算、大数据作为一个基于开源 软件的平台,Linux占据了核心优势;据Linux基金会的研究,86%的企业已经使用Linux操作系统进行云 计算、大数据平台的构建,目前,Linux已开始取代Unix成为最受青睐的云计算、大数据平台操作系统。

未来还会有无数种应用场景。

9.linux的发行版本

1.商业化版本:ubuntu,centos/redhat.kail,红旗等

满足不同场景的使用

2.技术发行版就是1.X   2.X   3.X   4.X

商业化版本可能用的是不同版本的内核

关于我们学习环境的安装,下一篇文章发布大家可以点击主页看一下

关于liunx技术发行版,编号的含义:

修正次数达到一定程度会修改我们的次版本号

次版本号修改到一定程度会修改我们的主版本号

次版本号是偶数表示是稳定版本。次版本号是偶数表示是发行版本。

发行版本集合:

  • Debian
  • Debian运行起来极其稳定,这使得它非常适合用于服务器。 debian这款操作系统无疑并不适合新手用 户,而是适合系统管理员和高级用户。
  • Ubuntu
  • Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应 用,在服务器、云计算、甚至一些运行Ubuntu Linux的移动设备上很常见。Ubuntu是新手用户肯定爱不 释手的一款操作系统。 
  • 红帽企业级Linux 这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包 括x86和x86_64。红帽公司通过课程红帽认证系统管理员/红帽认证工程师(RHCSA/RHCE),对系统管 理员进行培训和认证。
  • CentOS
  • CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版 完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领略红 帽企业级Linux;对他们来说,CentOS值得一试。此外,CentOS的外观和行为似乎与母发行版红帽企业 级Linux如出一辙。 CentOS使用YUM来管理软件包。
  • Fedora
  • 小巧的Fedora适合那些人:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公 司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。Fedora是一款非常好 的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。
  • Kali Linux
  • Kali Linux是Debian的一款衍生版。Kali旨在用于渗透测试。Kali的前身是Backtrack。用于Debian的所有 Binary软件包都可以安装到Kali Linux上,而Kali的魅力或威力就来自于此。此外,支持Debian的用户论 坛为Kali加分不少。Kali随带许多的渗透测试工具,无论是Wifi、数据库还是其他任何工具,都设计成立马 可以使用。Kali使用APT来管理软件包。 毫无疑问,Kali Linux是一款渗透测试工具。

10.写在最后

本篇文章主要目的是为了大家对Linux有一个印象和了解,也了解一下计算机相关知识,为后面的讲解做铺垫,很多地方不准确或者不完备那么大家也可以在评论区留言我后续更改。下篇文章会教大家安装Linux的环境。创作不易,希望得到大家的支持

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1478629.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

docker save 命令 docker load 命令 快速复制容器

docker save 命令 docker load 命令 1、docker save 命令2、docker load 命令 1、docker save 命令 docker save 命令用于在系统上把正在使用的某个容器镜像 导出成容器镜像文件保存下载,以便在其他系统上导入这个容器镜像文件 以便快速在其他服务器上启动相同的容…

数据结构------栈(Stack)和队列(Queue)

也是好久没写博客了,那今天就回归一下,写一篇数据结构的博客吧。今天要写的是栈和队列,也是数据结构中比较基础的知识。那么下面开始今天要写的博客了。 目录 栈(Stack) 队列(Queue) 喜欢就点…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Row容器组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之Row容器组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、Row组件 沿水平方向布局容器。 子组件 可以包含子组件。 接口 Row(value?…

腾讯云又双叕降价,云服务器配置优惠价格表2024新版报价

腾讯云服务器多少钱一年?62元一年起,2核2G3M配置,腾讯云2核4G5M轻量应用服务器218元一年、756元3年,4核16G12M服务器32元1个月、312元一年,8核32G22M服务器115元1个月、345元3个月,腾讯云服务器网txyfwq.co…

YAML管理接口框架配置的最佳实践

管理接口框架配置是构建强大的接口测试框架的关键一环。良好的配置管理可以提高测试效率、可维护性和可扩展性。在本文中,我们将重点介绍使用YAML(YAML Ain’t Markup Language)来管理接口框架配置的最佳实践,并通过实例演示其用法…

Linux使用C语言实现通过互斥锁限制对共享资源的访问

互斥锁限制共享资源的访问 主线程中有两个线程&#xff0c;分别输出信息。 #include <stdio.h> #include <pthread.h> #include <unistd.h>int g_data0;void* fun1(void *arg) {printf("t1&#xff1a;%ld thread is create\n", (unsigned long)…

类和对象(2)——距离C++又近了一步

目录 一、构造函数 1.1声明和定义构造函数 1.2成员名和参数名 1.3构造函数的使用 1.4初始化列表 二、析构函数 2.1析构函数的概念 2.2析构函数的性质 三、拷贝构造函数 四、赋值运算符重载 4.1运算符重载 4.2赋值运算符重载 一、构造函数 我们知道&#xff0c;C中…

利用R语言进行因子分析实战(数据+代码+可视化+详细分析)

&#x1f349;CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一&#xff5c;统计学&#xff5c;干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项&#xff0c;参与研究经费10w、40w级横向 文…

C++重新入门-string容器

目录 1.包含头文件 2.创建字符串 3.获取字符串长度 4.字符串拼接 5.字符串比较 相等性比较 大小比较 使用比较函数 6.访问字符串 7.查找子串 8.字符串修改 替换子串 插入字符或子串 删除字符或子串 9.提取子串 10.总结 当谈到C中的字符串时&#xff0c;std::str…

蓝桥杯刷题3

目录: 1. 天干地支 2. 明明的随机数 3. ISBN号码 4. 缩位求和 5. 幸运数字 6. 串的处理 7. 最长递增 8. 灌溉 9. 特殊日期 10. 最大距离 1. 天干地支 import java.util.*;public class Main {public static void main(String[] args) {Scanner scan new Scanner(Sys…

spring boot集成Elasticsearch 7.16.3

环境&#xff1a;Elasticsearch 版本 7.16.3 Elasticsearch for windows下载地址 windows 若依 spring boot版本 2.6.0 pom文件添加 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-elasticsearch<…

Automated Testing for LLMOps 01:使用CircleCI进行持续集成CI

Automated Testing for LLMOps 这是学习https://www.deeplearning.ai/short-courses/automated-testing-llmops/ 这门课的笔记 Learn how LLM-based testing differs from traditional software testing and implement rules-based testing to assess your LLM application. …

Java实战:构建高效预报名管理系统

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

基于transform的scale属性,动态缩放整个页面,实现数据可视化大屏自适应,保持比例不变形,满足不同分辨率的需求

文章目录 一、需求背景&#xff1a;二、需求分析&#xff1a;三、选择方案&#xff1a;四、实现代码&#xff1a;五、效果预览&#xff1a;六、封装组件&#xff1a; 一、需求背景&#xff1a; 数据可视化大屏是一种将数据、信息和可视化效果集中展示在一块或多块大屏幕上的技…

GL绘制自定义线条4_使用OpenGL ES实现钢笔效果

在以前的文章里http://t.csdnimg.cn/TgCtl&#xff0c;我简述了如何使用OpenGL ES实现光滑的粗线条的绘制效果&#xff0c;在闲暇时间我把它再进一步进化&#xff0c;实现了端点长度按照压感大小实现伸缩的逻辑&#xff0c;从而实现了如下的笔锋效果&#xff1a; 书写过程中的效…

MCBPS配置成SPI

MCBPS配置成SPI 典型的SPI接口 McBSP作为SPI主机 以McBSP为主的SPI接口如图所示。当McBSP被配置为主控器时,发送输出信号(DX)被用作SPI协议的SPISIMO信号,并且接收输入信号(DR)被用作SPISOMI信号。 表列出了将McBSP配置为主控器所需的寄存器位值。下表是有关配置要求…

动环监控是什么?为什么说它是3d可视化机房的眼睛?

在信息化时代的背景下&#xff0c;数据中心机房的重要性日益凸显&#xff0c;传统的人工管理模式显然已经无法应对持续增长的机房数量和规模、日益复杂的网络、频繁更新迭代的资产硬件......搭建3d可视化机房成为了许多企事业单位的共同选择。想要搭建3d可视化机房&#xff0c;…

iOS中卡顿产生的主要原因及优化思路

卡顿本质上是一个UI体验上的问题&#xff0c;而UI的渲染及显示&#xff0c;主要涉及CPU和GPU两个层面。若 CPUGPU渲染耗时超过16.7ms&#xff0c;就会在屏幕vsync信号到来时无法更新屏幕内容&#xff0c;进而导致卡顿。 iOS中UI渲染主要包含Layout->Draw->Prepare->Co…

在原有项目进行业务逻辑开发:同一用户短时间不得提交多次申请,以及更新主表时数据刷新掉了角色权限以及密码重置的问题,详细思路及代码

开发背景&#xff1a; 用户提交表单后&#xff0c;插入到对应数据库表的字段中去&#xff0c;因需要保存是哪一个用户提交的&#xff0c;所以需要拿到主表的user_id&#xff0c;更新功能为记录提交时间&#xff0c;短时间不得再次提交 在对一个已有角色权限分配&#xff0c;登录…

蓝牙耳机和笔记本电脑配对连接上了,播放设备里没有显示蓝牙耳机这个设备,选不了输出设备

环境&#xff1a; WIN10 杂牌蓝牙耳机6s 问题描述&#xff1a; 蓝牙耳机和笔记本电脑配对连接上了&#xff0c;播放设备里没有显示蓝牙耳机这个设备&#xff0c;选不了输出设备 解决方案&#xff1a; 1.打开设备和打印机&#xff0c;找到这个设备 2.选中这个设备&#…