首页  >  文章  >  系统教程  >  linux 内核 sprintf Linux 创立的起点:我见证了它从卑微走向全球成功

linux 内核 sprintf Linux 创立的起点:我见证了它从卑微走向全球成功

王林
王林原创
2024-06-14 18:25:42459浏览

linux 内核 sprintf Linux 创立的起点:我见证了它从卑微走向全球成功

出品|CSDN(ID:CSDNnews)

我的名子叫LarsWirzenius,我见证了Linux最初的创办。如今,Linux在全球范围内取得了成功,但它的起点却相当低贱。以下是我对Linux最早的记忆,它的创建,以及它迈向明天的公路的开始。

1988年夏天,我开始在英国爱丁堡学院学习计算机科学,并认识了LinusTorvalds(Linux内核的最早作者),他是那年计算机科学专业另一个讲西班牙语的新中学生。在学院第一年结束时,我们得到了一台Unix服务器的访问权,我无意中发觉了Usenet(1979年杜克学院的研究生汤姆·特拉斯科特与吉姆·埃利斯设计),即分布式的互联网交流系统,由于我把rm错打成rn,就弄成了Usenet阅读器。我把这件事告诉了Linus,我们花了许多的时间来探求这个问题,就有了后续的故事。

Linux开始于一台组装笔记本

第一年以后,我们都去服义务兵役了,即使在不同的地方。1990年夏天,我们回到学院学习,都出席了C和Unix编程的课程,其中也包括相当多的Unix内核构架的理论。这引起我们也去了解了其他操作系统的内核,如QNX和Plan9,我们满腔热情地讨论了怎样正确建立一个操作系统,当时我们拥有着20岁学院生的一腔热血,对未来有着美好的期盼。

1991年1月,Linus从当地一家用零件组装笔记本的商店买了他的第一台笔记本。这台笔记本有一个386的CPU,这在当时是比较花哨的,由于Linus想探求多任务。据悉,由于这台笔记本是用零件组装的,它还来自32位诺基亚68008CPU的辛克莱QL(SinclairResearch于1984年推出的个人笔记本),他想要一个32位的CPU,而不想降到16位,所以286不是一个好的选择。Linus的第一台个人笔记本有高达4兆字节的显存和一个硬碟驱动器,早已是当时十分先进的机器。

内核是什么意思_内核管理器_linux 内核 sprintf

Linus得到了一份《波斯王子》的游戏拷贝,把将大部分时间拿来玩游戏。后来他还买了一份MINIX(是一个迷你版本的类Unix操作系统),由于在学院使用Unix后,他也想在家里使用类似的东西。

第一个版本:As和Bs

完成游戏后,Linus开始学习英特尔汇编语言。有三天,他给我看了一个做空任务的程序。一个任务或线程会在屏幕上写一个字母"A",另一个是"B";当"As"弄成"B"的时侯,上下文的切换在视觉上是很显著的。这就是后来被称为Linux内核的第一个版本。

在这期间,即1991年春末,我为他写了一个C语言sprintf()函数的实现,由于他还没有学会怎么写带有变量参数列表的函数。我想让他毋须为每一种类型的值都要写出不同的函数而倍感痛楚,对于更安全的Snprintf()函数,代码的核心依旧在内核中。

随着时间的推移,Linus不断实现新的东西,使他刚才起步的内核显得更好。一段时间后,他有了按键和并口的驱动程序,模拟了VT100终端的屏幕通配符序列,而且可以用它通过调制译码器拔号到学院,从家里阅读Usenet。简直像一专科幻小说!有三天,Linus意外地企图用他的硬碟拔号到学院,致使他的主引导磁道以“ATDT”和学院调制译码器池电话号码开头,从中恢复过来后,他在他的内核中实现了文件权限。

1991年8月,Linus在comp.os.minix新闻组中第一次公开提及他的新内核。这包括他说的一句话:"我正在做一个(免费)操作系统,只是一个爱好linux 内核 sprintf,不会像GNU那样大而专业"。此次公开是这么诚恳,接着该系统最初被称为Freax。几周后,Linus让ftp.funet.fi(网站服务器)的管理员之一AriLemmke上传了第一个tar档案。Ari选择了Linux这个名子,最初的版本始终包含嵌入在一个源文件中的原始名称。

在这段时间里,人们对这个新事物很感兴趣,所以Linus须要提供一个安装方式和说明。因为他只有一台笔记本,所以他来拜访我,要在我的笔记本上安装。而且由于他的笔记本是拿来开发Linux的,而Linux只是在他的Minix安装基础上发展上去的,所以先前未曾真正安装过。为此,我的笔记本是第一台安装Linux的笔记本!当这一切发生时,我正在走神,我推荐这些安装Linux的方式:走神,而Linus去做这种坚苦的工作。

Linux的第一个版本使用的是严禁商业使用的许可,但是一些初期的贡献者建议将其改为自由软件许可证。1991年春天,RichardStallman(GNU项目发起人)访问法国,我带Linus去听Stallman的讲演。由于来自贡献者的压力,以及我的絮叨,最终劝服了Linus在1992年初选择GNUGPL(GeneralPublicLicense)许可证。

在新年节期间,Linus在Linux中实现了虚拟显存。这促使Linux在显存不足的廉价机器上成为更实用的操作系统。

重要的一年

1992年以与AndrewTanenbaum的知名辩论开始,他是一位学院院长和MINIX的作者,由于他对Linux和它的结构有一些想法,同时Linus对MINIX也有想法,所以她们有了一场被描述为火焰战争的辩论,但事后看来似乎是相当文明的。

虽然对于Linux未来的成功而言,更重要的是X11系统被移植到了Linux上,使1992年成为Linux桌面快捷方法重要的一年。

于我而言,我选择了在社区方面作出贡献,而不是直接对内核作出贡献,而且帮助回答问题,编撰文档等等。我还经营了一份关于Linux的短暂的通信,它主要是由于发表了对Linus的第一次专访而遭到关注,然而该通信实际上被comp.os.linux.announce新闻组所替代。

第一个Linux发行版也开始于1992年:SLS(SoftlandingLinuxSystem)。第二年,SLS演弄成Slackware(PatrickVolkerding制做的Linux发行版本),这迸发了IanMurdock在1993年创立Debian,以探求一个愈发基于社区的开发结构。在接出来的几年里,还有一些其他的发行版也骤然而至。

1993年,Linus和我都被聘为学院的助教,我们共用一间办公室。那种屋子有一台PC,Linus接管了它,并用于Linux的开发。彼时,我对一台DEC终端用于访问Usene(讨论系统)倍感十分满意。

有三天linux 内核 sprintf,Linus倍感很无趣linux怎么查看系统版本,由于工作中的笔记本觉得很慢,所以他花了一天时间用汇编语言重画了Linux内核的命令行剖析器,以提升速率。(其实,那当然是毫无意义的,解析器后来又用C语言重画了一遍,以利于移植,所以它的速率并不重要)。几年后,他领到了一台较新的PC,表面说是为了测试内核显存管理的压力,虽然是花了好几天时间玩Quake游戏,有好多乐趣被逗留在哪个屋子里。

后来,Linux获得了对Ethernet(以太网)和TCP/IP(TransmissionControlProtocol/InternetProtocol)的支持,这意味着人们无需使用调制译码器就可以阅读Usenet。可惜的是,初期的Linux网路代码时常会有些粗糙,由于它是从头开始写的。有一次,Linux发送了一些损坏的数据包,引起网路上所有的Sun机器截瘫。因为很难修补Sun的内核,Linux被严禁步入学院网路,不能从自己的办公桌上方便访问Usenet挺好的激励了修补进程,直至它的错误被修补完成。

“开源“被真正创造下来

在1994年夏天,我们认为Linux早已完成了,没有哪些可补充的了。人们可以用Linux来编译自己,阅读Usenet,并同时运行许多xeyes程序的副本。彼时,我们决定发布1.0版本,并安排了一个发布活动。我们约请了美国的计算机媒体,一电器视台甚至派出了一个摄制组,活动的大部份内容是在后台隆重地编译Linux1.0,而Linus和其他人则述说了哪些是Linux以及它有哪些用处。Linus解释说,用于个人笔记本的商业Unix是这么高昂,为此编撰自己的Unix更容易。

1995年,Linus和我在学院里上了一门软件工程课程,其中大部份是一个小型的实践项目,不过构建在Linux的基础之上。我坚持要使用一个版本控制系统,由于我在先前的课程中见到中学生们高呼大喊的版本控制:中学生们通过NFS(NetworkFileSystem)共享一个源代码树,当她们改变哪些的时侯,就大叫"我正在编辑这个文件"。我觉得这不是一个有效的方式,所以我坚持使用CVS(ConcurrentVersionsSystem),这是我刚才了解到Linus不喜欢CVS的经历,但是多年来拒绝使用任何版本控制,不仅将tar球(使用gzip压缩程序压缩的文件)上传到FTP网站(FileTransferProtocol)。

那一年Linus首次把Linux移植到新的构架上,他得到了一台DECAlpha机器(64位指令构架微处理器)。我后来会把这台机器用作阅读Usenet的终端,其他人将Linux移植到其他构架上linux apache 虚拟主机,但这并没有让我得到更多的机器来阅读Usenet。

1997年,Linus结业并搬去了加拿大,在Transmeta公司(一家设计超长指令字代码转译微处理器的日本有限公司)工作,而我在德国慕尼黑地区的另一所学院找到了一份工作。

在接出来的几年里,发生了好多事情。事实证明,Linux依然有一些缺位的功能,所以人们在这种方面进行努力。术语"opensource(开放源代码)"被创造下来,IBM(InternationalBusinessMachinesCorporation),是英国一家跨国科技公司及咨询公司,在Linux开发中投入了大量的资金。彼时,网景公司发布了一个开源版本的网路浏览器,又随着时间的推移,开放源码基本上攻占了世界。LWN(Eklektix公司旗下的估算网路刊物,侧重于针对Linux和其他类Unix操作系统的自由软件和软件)开始逐周报导了这段历史的大部份内容。

1991年,Linus写道,Linux"不会像GNU那样大而专业"。在2023年。Linux正在每位台湾、每个海洋、数十亿台设备上、在轨道上和火星上运行。而对于一开始只是两个简单的线程,在屏幕上写As和Bs的流来说,这还不错。

以上是linux 内核 sprintf Linux 创立的起点:我见证了它从卑微走向全球成功的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn