4 经济之旅之二:走马观花
来源:互联网 发布:网络试听证 编辑:程序博客网 时间:2024/05/01 18:53
人才市场关注的往往关注是一些“细枝末节”,企业这么做无可厚非。但如果我们一开始就追求细节,很容易落入圈套。“锦上添花”的事情可以做,但那也得把“绿叶”摆平之后才可以吧。“走马观花”让我们有机会把稀缺资源,“时间与脑力”,合理地集中分配,换句话说,“走马观花”是为了节省总的时间,追求特定“细节”,让我们“有优势的地方”先富起来。
好,我们准备“走马观花”一番了,看看都带什么。
装备
游客可以带些干粮,在自由活动时享用。出发前,广大游客最好将自己的经验与愿望回顾或罗列一下,调整一下预期,做好遇到“心上人”的心理准备。
目的
我们将快速游览"Linux"内核整个景区,看看都有哪些景区,
了解各个景区的都有哪些景点,景点的特色,旅游线路等,从而为我们今后的“路线选择”创造条件。
导游图
先观察一下专业人士“从飞机上”抓拍到的俯视图。从图上看,几大景区及旅游线路清晰的展现在我们的面前。
图4.1 Linux内核俯视图
我们先看看,都有哪些特色景区?
(1)红色旅游区。历史悠久,民风淳朴,项目较少,花费较少。
(2)蓝色旅游区。设施完整,景点较多,花费较高,属于推荐旅游项目。
(3)绿色旅游区。融合了传统与时尚元素,是“网络”人士的保留项目。
再看看,景区里又有哪些基础设施?
(a)资源监管中心。本俯视图只描绘了内存管理的一种情形,其实还有诸如中断之类的稀缺资源。由于几乎所有的设备都会利用内存,锁,端口,中断等稀缺资源,显示自己的存在,所以对中断等资源的分配及使用很早就实现了统一化及规范化。
(b)交通指挥枢纽。除非发生了意外(中断等),“任何人”做的任何事情,都受“交通中枢”的指挥,只是我们大多数情况下不知道或不用知道罢了。但进入“旅游景点”之后,与“别人”发生碰撞的几率大为增加。所以无论是解决问题还是避免问题,我们都需要时刻想一想“我们在什么路上,都遇到什么人,做了些什么”。
除了上述标志比较明显的基础设施之外,景区还为设备供应商提供下述优质服务
(i) 延时或队列等标准服务。 进入到这个景区的设备有上千种,为了让它们以“统一的形象”更快得发挥作用,景区特地准备了“定时器,任务片,任务队列,同步”等各种标准化服务,供设备定制化搭配用。
(ii) 协议或规范等套餐服务。越来越多的设备都遵循这种标准或那种协议,如PCI规范,USB协议等。这些规范或协议往往比较繁杂,景点将它们打包并标准化,以套餐或子系统的形式供设备使用。
环游线路
其实,光有“俯视图”还是不够的,因为我们并不知道选择什么样的路线,既可以节省我们的体力,又不遗漏掉什么。所以,专业人士还推荐了一些线路,供大家使用。例如,“Linux设备驱动程序”就推荐了这样的一条环游路线:
第1站) 红色旅游区。
大家可以在这可以见识一下,旅游区的风俗习惯。虽然景点不多,但也足以让我们了解“资源监管中心”等官僚机构都提供什么服务,服务的方式,我们也能见到使用“延时或队列”等标准服务的目的,流程和方法。
第2站)资源监管中心。
第一站只是“引子”而已,而更具体的一些差异化服务的特点,细节和方法,不近距离观察一番,很难有深刻的理解。在景点里活动,没有资源真是寸步难行,所以组织大家先参观这个机构。
第3站)交通指挥枢纽。
每个人都想心情舒畅的游完整个行程,但人员这么拥挤,资源这么有限,而你又不了解交通规则,让你不对社会造成伤害,确实很难。在“交通指挥枢纽”,我们也能够常常看到,各种警示牌(各种锁,同步机制)以及异常处理。
第4站)延时或队列等标准服务。
所有的设备都依赖它们,并把它们组合起来,实现自己的定制化服务。这些服务,像麦当劳等快餐巨头一样,都有自己的醒目标志,我们就可以利用这些标志,来对设备提供的服务进行识别和分类。
第5站)协议或规范等套餐服务。
大家共同追捧的东西,在社会上形成“潮流”,在数字世界里,就会形成“规范”。喜爱这些“潮流”或“规范”的人群可以是十几岁的少年,也可以是七八十岁的老太太,但他们的“语言”或者“举止”往往高度一致。“套餐服务”,就是在熟悉了“交通规则”的基础上,使用“资源”与“定制化服务了”,将“规范”包裹起来,以统一简单的形式,发放给大家使用。
第6站)蓝色与绿色旅游区部分景点。
作为“红色旅游”的补充,为了让大家有机会对Linux的整个生态有清晰完整的认识,特别追加了蓝色与绿色景区的部分景点供大家参观。
第7站)自由活动。
Linux内核的主要景点,该看的都已经看到了。或许有些人想把镜头拉的近一些,看得更仔细一些,或者还想看看别的什么东西,那就看个人喜好了,自助活动了。
在上述旅游区能看到什么景点呢?
1) 红色旅游区。
(景点1.1) 开发环境
特色: “百闻不如一见”,酸甜苦辣咸,“人生百味”尽在其中。
适宜人群: 老少咸宜,可以增长智慧,消磨时光...
要点描述: 开发环境的搭建.
开发工具的使用.
代码实践.
(景点1.2) 从应用发出请求,到驱动完成请求
特色: 对崇尚走“技术路线”的人士而言,过程比结果更加重要。
适宜人群: 追求技术细节,有一些开发经验。对应用开发者也适用。
要点描述: 系统调用的使用.
系统调用的实现流程.
字符设备驱动的执行。
(景点1.3) 驱动中的一些常用结构
特色: 其中展示了"Linux的"异域风情与习俗。
适宜人群: 驱动开发者,喜欢刨根问底的应用开发者。
要点描述:字符设备驱动开发实践.
驱动常用数据结构.
2)资源监管中心。
(景点2.1) 各种资源的申请,使用与回收
特色: 任何有关资源分配与使用,都应遵循一定的法制规范。
适宜人群: 驱动开发者,向高阶进发的应用开发者。
要点描述:各种内存的分配与使用.
端口等地分配与释放。
同步机制--锁的使用
中断的申请与释放。
DMA的分配与使用..
(景点2.2) 资源的管理
特色: “法制背后”的故事,往往比人们想象的复杂的多。看看数字世界为了实现“公平公正”这个宏伟目标,付出了
怎样的汗水。
适宜人群: 驱动开发者,算法爱好者。
要点描述:内存管理.
中断管理.
3)交通指挥枢纽。
(景点3.1) 进程的生死与调度
特色: 在数字世界里,我们的生生死死都经受的艰难险阻。
适宜人群: 驱动开发者,向高阶冲刺的应用开发者。
细节描述: 进程的结构.
进程的创建与死亡.
进程调度。
(景点3.2) 调度算法等细节
特色: “人物命运背后”的故事,往往比人们想象的坎坷的多。
适宜人群: 驱动开发者,算法爱好者。
细节描述: 各种调度算法.
4)延时或队列等标准服务。
(景点4.1) 中断处理以及延时,任务片,队列等标准服务。
特色: 在数字社会里,处处能够感受到社会的温暖,各种福利设施遍布各个角落。
适宜人群: 驱动开发者。
细节描述: 内核中的定时器.
任务片tasklet.
任务队列等延时处理。
内核中的控制路径(Control Path)
(景点4.2) 中断处理等背后的细节
特色: 社会福利固然好,但滥用也必然对整个社会带来意想不到的危害。
适宜人群: 驱动开发者。
细节描述:中断机制.
软中断管理.
任务队列
内核线程
5)协议或规范等套餐服务。
(景点5.1)设备模型与子系统
特色: 设备与子系统的关系说明了一个普遍真理,有着共同利益的帮派或者党派哪里都有。
在Linux内核中闯荡,不与帮派打交道,不了解帮会的特点,几乎不可能。
适宜人群: 驱动开发者,多一门手艺多一条路的实践者。
细节描述:设备模型.
PCI子系统.
USB子系统。
(景点5.2) 协议或规范,及其实现细节
特色: 原汁原味的协议或者规范说明,以及它们的实现细节。
适宜人群: 驱动开发者组成的帮派,党团人士。
细节描述: 网络协议.
PCI协议.
USB协议等。
6)蓝色与绿色旅游区部分景点。
(景点6.1)块设备
特色: Linux内核三座设备山头(字符设备,块设备与网络设备)中的一座。见识过块设备的人,
再古怪的抽象也就见怪不怪了。
适宜人群: 驱动开发者,高阶的应用开发者。
细节描述:快设备驱动的结构.
请求处理流程.
(景点6.2) 网络设备
特色: 网络金字塔的塔底,网络登山爱好者的起点。
适宜人群: 驱动开发者,网络爱好者。
细节描述:网络设备驱动的结构.
socket调用与封包处理流程.
7)自由活动。
尽管我们绕了一圈,也知道驱动的其实是在,"合理使用各种资源(#2),及各种福利设施(#4),排除各种干扰(#4,中断,定时器,Tasklet等),理性的把握自己的命运轨迹(#3),在帮规(#5,如果有)的指引下,在了解设备特性及内核习俗的基础上(#1,#6),充分展示设备的性能";但我们有时也希望把镜头推得更近些,观察地更仔细一些。
无论怎么"绕",这些线路的目的都在于,突然有这么一天,你不在看重是否掌握了某些知识,而更在乎是否已经习惯内核习俗,习惯自己去寻找解决问题的方法。
与去国外旅游一样,语言只是或许只是很小的考验,当地的风俗习惯才是我们难以逾越的心理障碍。
- 4 经济之旅之二:走马观花
- JUnit 之走马观花篇
- JUnit之走马观花篇
- 走马观花之TCP/IP
- 走马观花之TCP/IP
- JUnit之走马观花篇(转)
- 走马观花移山之道
- 4 经济之旅之一: 时间至上
- Entity Framework走马观花之把握全局
- EntityFramework走马观花之CRUD(上)
- EntityFramework走马观花之CRUD(中)
- EntityFramework走马观花之CRUD(下)
- Entity Framework走马观花之把握全局
- EntityFramework走马观花之CRUD(上)
- EntityFramework走马观花之CRUD(中)
- EntityFramework走马观花之CRUD(下)
- Entity Framework走马观花 之 把握全局
- Entity Framework走马观花之把握全局
- 通达OA开发 常用网址的一点小改动 你能看出来吗
- 利用Jsoup解析html,如何得到<img>标签的位置
- linux modem-switch
- CListCtrl 单击事件问题
- Servlet的多线程 和 Servlet线程安全
- 4 经济之旅之二:走马观花
- VC6.0 error LNK2001: unresolved external symbol _main解决办法
- 高效缓存Memcached 集成使用说明
- C语言对位进行操作(增删查改)
- MFC应用程序中指针的使用
- Dialogs
- 微软ASP.NET站点部署指南(8):部署Code-Only更新
- 【转】Android SDK版本与API Level对照表
- 回滚操作