1.Unix的前身是由贝尔实验室(Bell lab.)的Ken Thompson利用汇编语言写成的, 后来在1971-1973年间由Dennis Ritchie以C程序语言进行改写,才称为Unix。

2.1977年由Bill Joy释出BSD (Berkeley Software Distribution),这些称为Unix-like的操作系统.

3.1984年由Andrew Tanenbaum制作出Minix操作系统,该系统可以提供原始码以及软件.

4.1984年由Richard Stallman提倡GNU计划,倡导自由软件(Free software),强调其软件可以自由获得,修改,再发行。

GNU 是 GNU's Not Unix
的缩写, 意思是说, GNU 并不是 Unix 啊!那麼 GNU 又是什麼呢? 就是 GNU's Not Unix 嘛.

(这是个无穷递归~~)

5. 1991
年 由 芬 兰 大 学 生 Linus Torvalds 开 发 出 Linux 操 作 系 统 . Linux 成 功 主 要 在 于 : Minix(Unix), GNU, Internet, POSIX 及虚拟团队的产生。

6.Linux本身就是个操作系统,其开发网站在http://www.kernel.org,我们亦称Linux操作系
统最核心的数据为内核Kernel.

7.目前Linux核心的发展分为两种版本,分别是稳定版本偶数版,如2.6.X,适合商业和家
用环境使用; 一种是发展中版本如2.5.X 版,适合开发特殊功能的环境.

8.Linux名字的来历是Torvalds第一次在FTP上放出的内核源码所属文件夹的名字.(囧~)Thompson写Unix只是为了移植一套名为“太空旅游”的游戏.(Oh,My
GOD~~)

9.Linux
distributions的组成含有:『Linux Kernel + Free Software + Documentations(Tools) + 可完全安装的程序』所制成的一套完整的系统.

10. 目前Linux的最新稳定版3.10.4
日期:2013-07-28.  最新的发展中版本 3.11-rc3 日期:2013-07-29.

11.Linux的吉祥物是一只企鹅,名字叫Tux.

12.你在你的主机上面安装了一张网络卡,但是开机之后,系统却无法使用,你确定网络卡是好的,那么可能的问题出在哪里?该如何解决?

答:因为所有的硬件都没有问题,所以,可能出问题的地方在于系统的核心(kernel)
不支持这张网络卡。解决的方法,(1)到网络卡的开发商网站,(2)下载支持你主机操作系统的驱动程序, (3)安装网卡驱动程序后,就可以使用了。

13.我在一部主机上面安装Windows操作系统时,并且安装了显示适配器的驱动程序,他是没有问题的。但是安装Linux时,却无法完整的显示整个X
Window。请问,我可不可以将Windows上面的显示适配器驱动程序拿来安装在Linux上?

答:不行!因为核心不同,针对硬件所写的驱动程序也会不相同,编译程序也不同,当然,驱动程序也无法在两个操作系统间兼容。
这也是为何开发商在他们的网站上面,都会同时提供许多不同操作系统的驱动程序之故。

14.一个操作系统至少要能够完整的控制整个硬件,请问,操作系统应该要控制硬件的哪些单元?

答:根据硬件的运作,以及数据在主机上面的运算情况与写入/读取情况,我们知道至少要能够控制:
(1)input/output control, (2)device control, (3)process management, (4)file management. 等等!

15.Linux本身仅是一个核心与相关的核心工具而已,不过,他已经可以驱动所有的硬件,
所以,可以算是一个很阳春的操作系统了。经过其他应用程序的开发之后,被整合成为Linux distribitions。请问众多的distributions之间,有何异同?

答:相同:(1)同样使用
http://www.kernel.org 所释出的核心; (2)支持同样的标准,如 FHS、LSB 等; (3)使用几乎相同的自由软件 (例如 GNU 里面的 gcc/glibc/vi/apache/bind/sendmail... ); (4)几乎相同的操作接口 (例如均使用 bash/KDE/GNOME 等等)。
不同:使用的 kernel 与各软件的版本可能会不同;各开发商加入的应用工具不同,使用的套件管理模式不同(dpkg 与 RPM)

16.何谓多人 ( Multi-user ) 多任务 ( Multitask )?

答:Multiuser 指的是 Linux 允许多人同时连上主机之外,每个用户皆有其各人的使用环境,并且可以同时使用系统的资源!
Multitask 指的是多任务环境,在 Linux 系统下, CPU 与其他例如网络资源可以同时进行多项工作, Linux 最大的特色之一即在于其多任务时,资源分配较为平均!

17.简单说明 GNU General Public License ( GPL ) 与 Open Source 的精神:

答:1. GPL 的授权之软件,乃为自由软件(Free software),任何人皆可拥有他; 2. 开发 GPL 的团体(或商业企业)可以经由该软件的服务来取得服务的费用; 3. 经过 GPL 授权的软件,其属于 Open source 的情况,所以应该公布其原始码; 4. 任何人皆可修改经由 GPL 授权过的软件,使符合自己的需求; 5. 经过修改过后 Open
source 应该回馈给 Linux 社群。

18.什么是 POSIX ?为何说 Linux 使用 POSIX 对于发展有很好的影响?

答:POSIX 是一种标准规范,主要针对在 Unix 操作系统上面跑的程序来进行规范。 若你的操作系统符合 POSIX ,则符合 POSIX 的程序就可以在你的操作系统上面运作。 Linux 由于支持 POSIX ,因此很多 Unix 上的程序可以直接在 Linux 上运作, 因此程序的移植相当简易!也让大家容易转换平台,提升 Linux 的使用率。

19.简单说明 Linux 成功的因素?

答:1. 藉由 Minix 操作系统开发的 Unix like ,没有版权的纠纷;
2. 藉助于 GNU 计划所提供的各项工具软件, gcc/bash 等;
3. 藉由 Internet 广为流传;
4. 藉由支持 POSIX 标准,让核心能够适合所有软件的开发;
5. 托瓦兹强调务实,虚拟团队的自然形成!

《鸟哥的Linux私房菜》读书笔记二的更多相关文章

  1. 深入理解Java虚拟机 -- 读书笔记(1):JVM运行时数据区域

    深入理解Java虚拟机 -- 读书笔记:JVM运行时数据区域 本文转载:http://blog.csdn.net/jubincn/article/details/8607790 本系列为<深入理 ...

  2. 【Todo】深入理解Java虚拟机 读书笔记

    有一个在线系列地址 <深入理解Java虚拟机:JVM高级特性与最佳实践(第2版)> http://book.2cto.com/201306/25426.html 已经下载了这本书(60多M ...

  3. 深入理解Java虚拟机读书笔记5----虚拟机字节码执行引擎

    五 虚拟机字节码执行引擎   1 运行时栈帧结构     ---栈帧是用于支持虚拟机进行方法调用和方法执行的数据结构,是虚拟机运行时数据区中的虚拟机栈的栈元素.     ---栈帧中存储了方法的局部变 ...

  4. 深入理解Java虚拟机--阅读笔记二

    垃圾收集器与内存分配策略 一.判断对象是否已死 1.垃圾收集器在对堆进行回收前,要先判断对象是否已死.而判断的算法有引用计数算法和可达性分析算法: 2.引用计数算法是给对象添加引用计数器,有地方引用就 ...

  5. 深入理解Java虚拟机读书笔记8----Java内存模型与线程

    八 Java内存模型与线程   1 Java内存模型     ---主要目标:定义程序中各个变量的访问规则,即在虚拟机中将变量存储到内存和从内存中取出变量这样的底层细节.     ---此处的变量和J ...

  6. 深入理解Java虚拟机读书笔记7----晚期(运行期)优化

    七 晚期(运行期)优化 1 即时编译器(JIT编译器)     ---当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码”,包括被多次调用的方法和被多次执行的循环体.     ...

  7. 深入理解Java虚拟机读书笔记4----虚拟机类加载机制

    四 虚拟机类加载机制 1 类加载机制     ---概念:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验.转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型.     -- ...

  8. 深入理解Java虚拟机读书笔记3----类文件结构

    三 类文件结构 1 Java虚拟机的两种中立特性     · 平台无关性     · 语言无关性     实现平台无关性和语言无关性的基础是虚拟机和字节码存储格式(Class文件).   2 Clas ...

  9. 深入理解Java虚拟机读书笔记1----Java内存区域与HotSpot虚拟机对象

    一 Java内存区域与HotSpot虚拟机对象 1 Java技术体系.JDK.JRE?     Java技术体系包括:         · Java程序设计语言:         · 各种硬件平台上的 ...

  10. 深入理解java虚拟机读书笔记--java内存区域和管理

    第二章:Java内存区域和内存溢出异常 2.2运行时数据区域 运行时数据区分为方法区,堆,虚拟机栈,本地方法栈,程序计数器 方法区和堆是线程共享的区域 虚拟机栈,本地方法栈,程序计数器是数据隔离的数据 ...

随机推荐

  1. react环境搭建

    react-webpack文件夹是开发目录,在此目录下执行命令,假设你已经正确安装了 nodejs 一:参照教程搭建环境 https://github.com/newtriks/generator-r ...

  2. C# HTTP 请求

    public class HttpHelper { /// <summary> /// 创建GET方式的HTTP请求 /// </summary> public static ...

  3. C#微信公众号开发 -- (二)验证成为开发者

    接下来就是验证成为开发者了.先来看一下验证的界面及需要填写的信息 在接口配置信息中填写需要处理验证信息的页面或者一般性处理文件,这里以aspx页面为例 URl中的格式为:http://XXX.com/ ...

  4. DataContext 数据在F5刷新频繁,会出现数据读取错误

    DataContext 数据在F5刷新频繁,会出现数据读取错误 DataContext是 Linq to sql数据模型的底层数据库对象所有LInq数据表对象都是由它派生的, 只要建立一个数据库操作, ...

  5. V$SESSION_LONGOPS

    对大部分DBA来说,V$SESSION_LONGOPS视图都不会陌生,以前在面试的时候,也有一些企业会问到如何查询数据库中运行时间比较长的SQL,就可以通过这个视图来查看.V$SESSION_LONG ...

  6. 记录关于使用ADO.NET 连接池连接Oracle时Session信息不更新的坑

    最近的一个项目中,由于界面查询的数据量比较大,关联的表比较多,有些数据查出来需要临时保存起来供后面的查询使用,于是想到了用oracle的临时表来实现这个需求.大家都知道,oracle的临时表有两种:事 ...

  7. jquery动态添加/删除 tr/td

    <head runat="server"> <title></title> <!--easyui --> <link rel= ...

  8. 【BZOJ3884】【降幂大法】上帝与集合的正确用法

    Description 根据一些书上的记载,上帝的一次失败的创世经历是这样的: 第一天, 上帝创造了一个世界的基本元素,称做“元”. 第二天, 上帝创造了一个新的元素,称作“α”.“α”被定义为“元” ...

  9. CentOS 5.4 制作 Python 2.6 RPM 包的方法

    不知道什么原因,CentOS 5.4 了,默认的Python的版本还是2.4的. 但是Python在CentOS里面的又非常的重要,可是 2.4版本的Python有很多的模块没有,最新的Python ...

  10. linux 文件操作编程

    Linux中所有的设备和文件的操作都使用文件描述符来进行. 文件描述符是一个非负的整数,它是一个索引值,指向内核中每个进程打开的记录表. 当打开一个文件或者创建一个新文件时,内核就向进程返回一个文件描 ...