1. Linux的核心原型是1991年由托瓦兹(Linus Torvalds)写出来的。早期的Linux是针对386来开发的,Torvalds在写出Linux的时候,其实该核心仅能『驱劢386所有的硬件』而已。
2. 在2006年以前,苹果计算机公司是请IBM公司帮忙开发硬件(所谓的Power CPU),在2006年以后,苹果计算机转而请Intel设计其硬件架构,亦即其硬件架构已经转为x86系统, 因此在2006年以后癿苹果计算机若使用x86架构时,其硬件则『可能』可以安装Windows操作系统了。
3. Unix的历史:1960年代初期麻省理工学院(MIT)发展了所谓的: 『兼容分时系统(Compatible Time-Sharing System, CTSS)』, 它可以让大型主机通过提供数个终端机(terminal)以联机进入主机,来利用主机的资源进行运算工作。为了更加强化大型主机的功能,以让主机的资源可以提供更多使用者来利用,所以在1965年前后, 由贝尔实验室(Bell)、麻省理工学院(MIT)及通用电器公司(GE)共同发起了Multics计划, Multics计划的目的是想要让大型主机可以达成提供300个以上的终端机联机使用。(http://www.multicians.org/)在认为Multics计划不可能成功以后,贝尔研究室就退出该计划。不过,原本参与Multics计划的人员Thompson因为自己的需要(移植一套名为『太空旅游』的游戏),在DEC(Digital Equipment Corporation)公司推出的PDP-7上,以汇编语言(Assembler)写出了一组核心程序(Unics),同时包括一些核心工具程序, 以及一个小小的文件系统。那个系统就是Unix的原型。后来Thompson与Ritchie合作想将Unics改以高级语言来撰写。后来Dennis Ritchie将B语言重新改写成C语言,再以C语言重新改写与编译Unics的核心, 最后正名与发行出Unix的正式版本。
4. BSD的诞生:柏克利大学的Bill Joy在取得了Unix的核心原代码后,着手修改成适合自己机器的版本, 并且同时增加了很多工具软件与编译程序,最终将它命名为Berkeley Software Distribution (BSD)。Bill Joy也是『Sun』这家公司的创办者! Sun公司即是以BSD发展的核心进行自己的商业Unix版本的发展的。 (后来可以安装在x86硬件架构上面FreeBSD即是BSD改版而来!)
5. System V & Minix:1979 年时,AT&T推出 System V 第七版 Unix,这一版最重要的特色是可以支持x86架构的个人计算机系统。不过AT&T由于商业的考虑,特别提到了 『不可对学生提供原代码』的严格限制。于是在大学教授Unix的Andrew Tanenbaum教授在1984年完成了支持x86架构的操作系统核心程序Minix的撰写,Minix与Unix兼容,主要用在教育用递上面。
6. GNU计划与FSF基金会:Richard Mathew Stallman 发起了GNU计划, 这个计划的目的是:建立一个自由、开放癿Unix操作系统(Free Unix)。但是撰写一个操作系统太复杂,Stallman就决定先写可以在Unix上面运行的小程序。于是Stallman撰写了C语言的编译程序(那就是现在相当有名的GNU C Compiler(gcc))、Emacs编辑器 (具有程序语法检查功能)、更多可以被调用的C函式库(GNU C library),以及可以被使用来操作操作系统的基本接口BASH shell。Stallman 借由Emacs以磁带(tape)出售,赚了一点钱 ,进而开始全力撰写其他软件。并且成立自由软件基金会(FSF, Free Software Foundation),请更多工程师与志愿者撰写软件。(https://www.fsf.org/resources)
7. GPL:1985年,为了避免GNU所开发的自由软件被其他人所利用而成为专利软件, 所以他与律师草拟了有名的通用公共许可证(General Public License, GPL), 并且称呼他为copyleft(相对于专利软件的copyright!)。(http://www.gnu.org)一个软件挂上了GPL版权宣告之后,他自然就成了自由软件!这个软件就具有以下的特点:
-- 取得软件与原始码:你可以根据自己的需求来执行这个自由软件;
-- 复制:你可以自由地复制该软件;
-- 修改:你可以将取得的原始码进行程序修改工作,使之适合你的需要;
-- 再发行:你可以将你修改过的程序,再度地自由发行,而不会与原先的撰写者冲突;
-- 回馈:你应将你修改过的程序代码开放出来反馈社区!
-- 严禁:你所修改的任何一个自由软件都不应该也不能这样:
-- 修改授权:你不能将一个GPL授权的自由软件,在你修改后而将他取消GPL授权~
-- 单纯贩卖:你不能单纯地贩卖自由软件。
自由软件是可以贩卖的,不过,不可仅贩卖该软件,应同时搭配售后服务与相关手册。很多Linux开发商都是在贩卖『售后朋务』。所以,他们所使用的自由软件, 都可以在他们的网站上面下载!(当然,每个厂商他们自己开发癿工具软件就不是GPL癿授权软件了!) 但是,如果你购买他们的Linux光盘,他们会提供相关癿手册说明文件, 同时也会提供你数年产等的咨询、售后朋务、软件升级与其他协力工作等等的附加价值。
7. Linux诞生:到了1991年,芬兰的赫尔辛基大学的Linus Torvalds在BBS上面贴了一则消息, 宣称他以bash, gcc等工具写了一个小小的核心程序,这个核心程序可以在Intel的386机器上面运作。他是在参考Minix的设计理念与程序原代码,然后仔细研究出386个人计算机的性能优化的基础上, 使用GNU的自由软件将核心程序代码与386紧紧的结合在一起,最终写出他所需要的核心程序Linux的。为了让所有的软件都可以在Linux上执行,托瓦兹参考了标准的POSIX规范。POSIX是可携式操作系统接口(Portable Operating System Interface)的缩写,重点在规范核心与应用程序之间的接口, 这是由美国电器与电子工程师学会(IEEE)所发布的一项标准。
8. 为了因应随时都有程序代码加入癿状态,Linux便逐渐发展成具有模块的功能,亦即是将某些功能独立出于核心外,在需要的时候才加载到核心中。如此一来, 如果有新的硬件驱动程序或者其他协议的程序代码进来时,就可以模块化,不用重新编译与修改核心程序,大大地增加了Linux核心的可维护能力。
9. Linux的核心版本(http://www.kernel.org)编号规范发生过几次变革(http://en.wikipedia.org/wiki/Linux_kernel#Version_numbering),在1.0 到 2.6.0之间,版本号一般为A.B.C,A为kernel版本,一般只有非常大的代码变动才会变化。B为major版本,偶数为稳定版本,供用户使用,奇数为开发版本,供kernel开发者添加新功能代码。C为minor版本,用于小的feature、bugfix、security patch的发布。但在2.6.0之后,便不再区分稳定版本和开发版本,版本格式为2.6.X.Y,一有feature完成就发布新的minor版本,最后一位作为patch或fix版本。到了linux发布20周年纪念日(2011/05/29),版本变成了3.0(并无大的代码改动)。之后就以3.X.Y的形式命名版本,X为新feautre发布版本,Y为fix或patch版本。
10. Linux的出现让GNU计划放下了心里的一块大石头,因为GNU一直以来就是缺乏了核心程序, 导致他们的GNU自由软件只能在其他的Unix上面跑。Linux实在很不错,让GNU软件大多以Linux为主要操作系统来进行开发。为了让使用者能够接触到Linux,很多商业公司或非营利团体, 就将Linux Kernel(含tools)与可运行的软件整合起来,加上自己具有创意的工具程序,我们称之为Linux distribution。
11. Linux distributions主要分为两大系统,一种是使用RPM方式安装软件的系统,包括Red Hat, Fedora, SuSE等都是这类; 一种则是使用Debian的dpkg方式安装软件的系统,包括Debian, Ubuntu, B2D等等。以下列出几个主要的Linux distributions发行者网址:
-- Red Hat: http://www.redhat.com
-- Fedora: http://fedoraproject.org/
-- Mandriva: http://www.mandriva.com
-- Novell SuSE: http://www.novell.com/linux/
-- Debian: http://www.debian.org/
-- Slackware: http://www.slackware.com/
-- Gentoo: http://www.gentoo.org/
-- Ubuntu: http://www.ubuntu.com/
-- CentOS: http://www.centos.org/
-- OpenSuSE: http://software.opensuse.org/
12. 对于没有额外的硬盘或是没有额外的主机的朋友来说,KNOPPIX这个可以利用光盘开机而进入Linux操作系统的Live CD 是一个不错的选择!你只要下载了KNOPPIX的映象,然后将他刻录成为CD, 放入你主机的光驱,并在BIOS内设定光盘为第一个开机选项,就可以使用Linux系统了。(http://www.knoppix.net/)
13. 软件授权模式:
-- GNU General Public License: http://www.gnu.org/licenses/licenses.html#GPL 目前有version 2, version 3两种版本。
-- Berkeley Software Distribution (BSD): http://en.wikipedia.org/wiki/BSD_license 这个授权模式其实与GPL很类似, 而其精神也与Open Source相呼应。
-- Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0 这个软件的发布方式也是使用Open source的。只是在apache的授权中规定, 如果想要重新发布此软件时(如果你有修改过该软件),软件的名称依旧需要定名为Apache才行。
-- Freeware: http://en.wikipedia.org/wiki/Freeware 不同于Free software,Freeware为『免费软件』而非『自由软件』虽然它是免费的软件,但是不见得要公布其原始码, 就看发布者的意见了。
-- Shareware: http://en.wikipedia.org/wiki/Shareware 共享软件园与免费软件有点类似的是,Shareware在使用初期,它也是免费的,但是, 到了所谓的『试用期限』之后,你就必须要选择『付费后继续使用』或者『将它移除』。这些共享软件都会自行撰写失效程序,让你在试用期限之后就无法使用该软件。
相关推荐
【第一章:Linux简介】 在这一章中,你会学习到Linux的历史、哲学以及它在全球范围内的广泛应用。了解Linux的开源特性,以及与Windows和Mac OS等其他操作系统相比的优势。此外,还会介绍主流的Linux发行版,如...
第一章 Linux 基础知识
Linux教案第一章Linux概述 .pdf
1第一章Linux命令.md
Linux课件第一章。不错哦。好东西就要分享下。
第一章_LINUX编译与调试.ppt
第一章 认识Linux
Kali Linux网络扫描教程第一章
第一章Linux之常见命令是入门基础,学会常见的命令才能进一步深入学习。
### 第一章 Linux网络操作 #### 1.1 Linux网络操作系统概述 Linux作为一种开源的操作系统,在全球范围内得到了广泛的应用和发展。对于计算机科学和技术领域的学生来说,掌握Linux的基础知识及其网络应用至关重要。...
操作系统(OS)是现代计算机系统中最基本和最重要的系统软件,是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩展。操作系统的主要作用是管理好硬件设备,并为用户和应用程序提供一个简单的接口,以便于使用...
第一章配套资源
以下是根据第一章“绪论”和第二章“内存寻址”的内容,对相关知识点的深入解析。 ### 第一章 绪论 1. **Linux内核历史**:Linux由林纳斯·托瓦兹于1991年创建,起初是一个个人项目,后来发展成为一个全球性的开源...
linux课件,第一章讲linux的基本知识,适合于完全新手的学习课件,值得推荐
Linux教程第三版孟庆昌课后习题答案第一章 本资源摘要信息是根据 Linux 教程第三版孟庆昌课后习题答案第一章所生成的知识点,涵盖了 Linux 操作系统的基本概念、操作系统的定义、Linux 系统的主要特点、核心版本和...
《第一章 走进 Linux》 操作系统,这个看似神秘的“上帝”,在我们的日常生活中扮演着至关重要的角色。它是计算机的灵魂,是连接硬件与用户的桥梁。当我们打开电脑,无论是工作、娱乐还是学习,操作系统都在背后...
Linux,一种自由和开放源代码的类UNIX操作系统,由林纳斯·托瓦兹于1991年首次发布。它基于POSIX和UNIX标准,具有高度的稳定性和可靠性,被广泛应用于服务器、超级计算机、嵌入式设备以及个人电脑等领域。Linux的...
1991年,林纳斯·托瓦兹发布了Linux内核的第一个版本,标志着Linux操作系统的诞生。Linux内核是开源的,可以在多种硬件平台上运行,因此与GNU软件结合,形成了完整的GNU/Linux系统。 Linux发行版是将Linux内核与一...
linux入门第一章,入门必须掌握的命令大全,初学者必备。