linux就是这个范儿之融于心而表于行(1)
原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处 、作者信息和本声明。否则将追究法律责
时间总是过得那么快,如流水一般哗啦啦的就淌走了一大堆!周遭事事沧桑变迁喧哗或耳语中流传的故事已渐模糊,转眼间2013就来了。泰坦尼克号撞冰山都100+年了,同名的电影也改成3D的了,只是你想看的全都给剪没啦。当你看到了这段文字,就去它大爷的世界末日吧!如果你是考古学家,我可以自豪的告诉你,我们那个年代电脑早就飞进了平常百姓家。
千万不要以为我在闲扯,Linux与泰坦尼克号这个倒霉蛋是有着千丝万缕的联系的。具体有什么联系,咱们按下不表,在后面的章节中还会有十分精彩的描述。
很多人会认为Linux是一个年轻的操作系统,至少我本人在很长一段时间内都是这么认为的。因为它总能紧跟时代潮流,别人有什么它有什么,USB、WIFI、SSD……
突然发现,原来岁月是最大的小偷,在我最不经意间,将我的很多东西都已经悄悄的偷走,青春、激情、自信……我使用Linux已经超过了十五年,而且到本书截稿时,Linux已经整整21周岁了。
对于计算机产业这个新技术日新月异的行当来说,拥有21年历史且在操作上没有什么变化的系统不能不算老旧。可是Linux并不是原创,亦或我们说Linux“抄袭”了别人也不算过分。而正是因为它“抄袭”的对象——Unix更是足够的Niubility的,所以Linux也被称之为类Unix系统。
Unix自1969年诞生至今,已经40多年的历史了。然而,其基本的操作方式和一些理论基础并没有太大改变。而且最终形成一个强大的Unix文化(本书后面的章节将做详细介绍)。Linux将这股文化深深的融入到了自己的内心深处,也使得它的很多行为表现与那个40年前所诞生的系统没有太大差别。
是的,融于心而表于行,这也正是本章的主题。Linux的用法实际上已经超越了其自身的生命周期,几乎可以说是演绎在现代科技世界中的一部穿越大戏。跟我回到你出生之前吧!先说明,接下来的所有内容都是基于文本命令行的,至于图形界面下如何操作,我们是不想侮辱大家的智商的。
2.1 多用户多任务分时操作系统
世界上第一台电脑是没有操作系统的,主要是因为太慢而运行不了。由于晶体管的发明和微程序概念的应用,使得电脑从机械装置变成了真正的电子产品。这样,系统管理工具和简化硬件操作流程的程序很快就出现了,这成为操作系统的滥觞。随着电脑速度的提升,充分利用计算资源这种“节能减排”的需求呼之欲出,很快就有了批处理操作系统。但是批处理问题很多,提交的任务不再受到控制,这显然会让很多人十分恼火。如何能够让人与电脑直接互动又可以“节能减排”,成为了那个年代的热门话题,那大约是在20世纪60年代初。
很快就有会有新证据证明人类是这个星球上最聪明的生物,很快有人(具体是谁搞不清了)提出了分时系统的概念:将大型电脑珍贵的时间资源适当分配在所有使用者的身上,让所有使用者都有独占整部机器的感觉。依据这个想法,通用电器、麻省理工学院和贝尔实验室合伙搞起了Multics项目,这是在当时看来是最靠谱的分时系统概念。只是由于太“靠谱”了(真正的多用户多任务分时操作系统),在当时的技术条件下去完成它实在是吃力,所以最终的命运很悲惨。但是有两个游戏爱好者,Multics项目的成员:Ken Thompson和Dennis Ritchie为了能够有电脑玩游戏,决定自己给一台闲置的电脑写个操作系统,于是Unix——一个实用的多用户多任务分时操作系统——就诞生了(就因为这个故事,我始终保持着经常打游戏的好习惯)。
我们熟知的Windows XP、Linux、Mac OS X等都是多用户多任务分时操作系统,可见这个概念一直延续到了今天。它们最显著的特点就是可以让多个人使用同一台电脑而切不能互相窥探对方的秘密,当你使用电脑的时候可以边听音乐边看新闻,同时还能跟朋友聊天,如果你觉得你的大脑还能处理得过来,你还能让这台电脑同时干更多的事情。其实这类操作系统我们完全可以只用“分时”二字简要概述下来。因为“分时”就像它最初的定义那样:将电脑的时间资源适当分配给所有使用者身上,让所有使用者有独占机器的感觉。但是如果把“使用者”进行抽象,就不仅可以代表人,还可以将任务也理解为电脑时间资源的使用者,那么“分时”就是多用户和多任务的基础和前提。所以,既然是“分时”的,一般都会支持多用户和多任务。
需要注意,我只是说一般都会支持多用户和多任务。为什么呢?因为对于一个分时系统,支持多任务是其与生俱来的本质,但是如果要支持多用户,则还需要很多附加的条件,最大的一个问题就是用户的身份问题。要确定哪些用户能够执行何种操作,这样才能保证系统运行稳定和可靠。只有有效的管理好用户的身份,才能被称之为是多用户的。Linux在这方面的能力是毋庸质疑的,从其诞生的那一天起就是多用户的,所以它拥有非常良好的用户身份确认机制。Windows其实也具备这样的能力,某些版本甚至做得比Linux做得还要好,只是大多数用户都没注意到这个问题。所以系统读过本书的人如果还需要继续使用Windows,那么请重新考虑你的Windows用户问题。
作为一个多用户操作系统,有些时候提供单用户模式是非常必要的。这个主要是用于系统在发生故障时,进行故障修复时使用的。所谓单用户模式,就是操作系统不去确认用户的身份,可以直接让用户进行各种操作。但是有的人可能会担心安全问题,这就像得病后需要吃药一样,都知道是药三分毒,可是病了还得吃,只能是两害相加取其轻。能够有办法找回数据在大多数时候比数据彻底丢了是更重要的事情。
linux就是这个范儿之融于心而表于行(1)的更多相关文章
- 《Linux就是这个范儿》
<Linux就是这个范儿> 基本信息 作者: 赵鑫磊 (加)Jie Zhang(张洁) 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115359360 上架时间:2 ...
- Linux就这个范儿 第10章 生死与共的兄弟
Linux就这个范儿 第10章 生死与共的兄弟 就说Linux系统的开机.必须经过加载BIOS.读取MBR.Boot Loader.加载内核.启动init进程并确定运行等级.执行初始化脚本.启动内核模 ...
- Linux就这个范儿 第18章 这里也是鼓乐笙箫 Linux读写内存数据的三种方式
Linux就这个范儿 第18章 这里也是鼓乐笙箫 Linux读写内存数据的三种方式 P703 Linux读写内存数据的三种方式 1.read ,write方式会在用户空间和内核空间不断拷贝数据, ...
- Linux就这个范儿 第19章 团结就是力量 LSB是Linux标准化基地(Linux Standards Base)的简称
Linux就这个范儿 第19章 团结就是力量 LSB是Linux标准化基地(Linux Standards Base)的简称 这个图片好可爱,它是LSB组织的图标.你肯定会问:“图标这么设计一定有说 ...
- Linux就这个范儿 第16章 谁都可以从头再来--从头开始编译一套Linux系统 nsswitch.conf配置文件
Linux就这个范儿 第16章 谁都可以从头再来--从头开始编译一套Linux系统 nsswitch.conf配置文件 朋友们,今天我对你们说,在此时此刻,我们虽然遭受种种困难和挫折,我仍然有一个梦 ...
- Linux就这个范儿 第15章 七种武器 linux 同步IO: sync、fsync与fdatasync Linux中的内存大页面huge page/large page David Cutler Linux读写内存数据的三种方式
Linux就这个范儿 第15章 七种武器 linux 同步IO: sync.fsync与fdatasync Linux中的内存大页面huge page/large page David Cut ...
- Linux就这个范儿 第14章 身在江湖
Linux就这个范儿 第14章 身在江湖 “有人的地方就有江湖”,如今的计算机世界就像一个“江湖”.且不说冠希哥有多么无奈,把微博当QQ的局长有多么失败,就说如此平凡的你我什么时候就成了任人摆布的羔羊 ...
- Linux就这个范儿 第13章 打通任督二脉
Linux就这个范儿 第13章 打通任督二脉 0111010110……你有没有想过,数据从看得见或看不见的线缆上飞来飞去,是怎么实现的呢?数据传输业务的未来又在哪里?在前面两章中我们学习了Linux网 ...
- Linux就这个范儿 第12章 一个网络一个世界
Linux就这个范儿 第12章 一个网络一个世界 与Linux有缘相识还得从一项开发任务说起.十八年前,我在Nucleus OS上开发无线网桥AP,需要加入STP生成树协议(SpanningTree ...
随机推荐
- 解决iframe缓存
网上能搜到很多此类的资料,但都是互相转载,不太起作用.这几天写个用到,用了不少的iframe效果.结果发现iframe有缓存的问题.网上提供了思路,即对iframe的href后添加随即get值,来逃避 ...
- Hibernate4.x之映射关系--一对一映射
Hibernate的1-1映射关系主要分为两类: 1.Hibernate基于外键映射的1对1关联关系 对于基于外键的1-1关联,其外键可以存放在任意一边,在需要存放外键一端,增加many-to-one ...
- jQuery.Validate验证库
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- linux 查看用户所在组(groups指令的使用) 含实例
经常将某个文件夹的权限赋给某个用户的时候,也需要配置该用户所在的组,因此,我们需要查看该用户有哪些组,我们可以使用如上命令查看用户所在组 [oracle@gl ~]$ vi /etc/group ro ...
- 4、什么构成了我们Android应用程序?(七大件)
一.应用程序四大组件 [Activity] Activity是Android应用程序的一个界面,可以通过这个界面查看联系人,打电话戒玩游戏. b. 一个应用程序通常包含多个Activity. c. A ...
- web.xml 配置的详解
http://my.oschina.net/u/1383439/blog/224448 http://blog.csdn.net/guihaijinfen/article/details/836383 ...
- tap/click on search button on softkeyboard
driver.sendKeyEvent(84);Appium says it successfully sent in the command but 'search' does not get ta ...
- LR 常见问题总结
问题1:Error: Two Way Communication Error: Function two_way_comm_post_message/two_way_comm_p ...
- STM32 串口功能 库函数 详解和DMA 串口高级运用(转载)
数据传输时要从支持那些相关的标准?传输的速度?什么时候开始?什么时候结束?传输的内容?怎样防止通信出错?数据量大的时候怎么弄?硬件怎么连接出发,当然对于stm32还要熟悉库函数的功能 具起来rs232 ...
- ADB 远程无线调试
由于自己购买的x4412 Android开发板存在一个问题,是无法同时链接USB线,和插入无线网卡.只能使用其中一个功能 需要复现一个DRM在线下载的功能,同时需要抓起一些日志信息,此处就想到了使用 ...