• 回答数

    8

  • 浏览数

    188

东宫洗马
首页 > 工程师考试 > 驱动工程师考试试题

8个回答 默认排序
  • 默认排序
  • 按时间排序

彷徨爱情

已采纳

无根之木不活,无基之楼不立,无论是学习哪个领域知识,基础是重中之重。针对学习linux驱动,我们来仔细谈谈:个人认为C语言和数据结构就是重中之重!Linux系统最优秀的地方就在于内核。无论是进程调度,内存管理,还是数据的组织形式,而这些算法的基础就是一个高效而精简的数据结构,红黑树也好,内核链表也好,看不懂C语言,搞不清数据结构,基本上谈不上做驱动。基础不扎实不要谈上层建筑,资源不全面就不要谈合作,很简单的道理。假设楼主的C语言和数据结构都是勉强过关的(分得清指针函数函数指针,能够熟练自定义链表并进行增删改查等链表或树的算法重组)。我们来谈下一个阶段,让我们对类Unix系统的基本操作有一个基本的了解,打开文件,切换路经,更改个密码,填个用户什么的。接下来我们来谈驱动,做驱动就得有做驱动的样子,不知道楼主之前玩过裸板51或者AVR没有,如果没有,尽快搞通,资源很多,跟着人家把电平配一遍,来个矩阵键盘,组个跑马灯,有成就感的同时也打下了硬件基础,好处大大滴。基于操作系统的驱动,即必须了解内核对驱动程序的管理方法,怎样划分一个具体的设备,是字符型?块设备?还是别的什么,或者从总线的角度来划分一个设备,i2c也好,USB也罢,还是数据地址控制这么一个三总线形式,都是有必要掌握的东西。上升到应用,任何一个实践项目中很难会有一个板子让你从零开始写驱动,百分之九十九是拿来改,这就是一个熟练的过程,做到一定多的东西,就会下意识地觉得,这个地方可能会有问题,我需要留意一下。总结一下,驱动工程师其实也是一种硬件翻译型工程师,其任务就是看懂手册上的表格,然后体现在代码里面。客观地说,我们这个行业门槛较高,队友较少,不过等到真正入门之后,那种成就感是无与伦比的。

驱动工程师考试试题

339 评论(8)

多多121015

二级建造师考试科目中,科目一《建设工程施工管理》和科目二《建设工程法规及相关知识》都是客观题,即全是选择题,答案以填涂答题卡为准;科目三《专业工程管理与实务》包括客观题(选择题40分)和主观题(案例分析80分,在试卷上笔答)下面找到一套2011年二级建造师《施工管理》试卷,试着做一下吧!明天上战场,祝你考出好成绩!一、单项选择题(共70题,每题1分,每题的备选项中,只有1个最符合题意)1、甲单位拟新建一电教中心,经设计招标,由乙设计院承担该项目设计任务。下列目标中,不属于乙设计院项目管理目标的是( )。A.项目投资目标B.设计进度目标C.施工质量目标D.设计成本目标2、某建设工程项目施工总承包管理模式,其中的二次装饰装修工程由建设单位发包给乙单位。在施工中,乙单位应该直接接受( )的工作指令。A.建设单位B.设计单位C.施工总承包管理企业D.施工承包企业3、采用项目结构图对建设工程项目进行分解时,项目结构的分解应与整个建设工程实施的部署相结合,并与将采用的( )结合。A.组织结构B.工程流程C.职能结构D.合同结构4、建设工程施工管理中的组织结构图反映的是( )。A.一个项目管理班子中各组成部门之间的逻辑关系B.一个项目中各组成部分之间的组织关系C.一个项目管理班子中各组成部门之间的组织关系D.一个项目中各组成部分之间的逻辑关系5、根据《建设工程工程量清单计价规范》(GB50500-2008),投标人所填报的分部分项工程的综合单价中不包括( )。A.规费B.利润C.管理费D.直接工程费6、编制施工管理任务分工表,涉及到的事项有:①确定工作部门或个人的工作任务;②项目管理任务分解;③编制任务分工表。正确的编制程序是( )。A.①②③B.②①③C.③②①D.②③①7、关于工作流程与工作流程图的说法,正确的是( )A.业主方与项目各参与广播工作流程任务是一致的。B.工作流程组织的任务就是编制组织结构图C.工作流程图可以用来描述工作流程组织D.工作流程图中用双向箭线表示工作间的逻辑关系。。。。。 68、根据《建设工程施工合同(示汇文本)》(GF-99-0201),如果干扰事件对建设工程的影响持续时间长,承包人应按监理工程师要求的合理间隔提交( )。A.索赔意向通知B.中间索赔依据C.中间索赔报告D.索赔声明69、项目专业技术负责人组织相关人员对桩基础工程进行验收后,应由( )签署验收意见及验收结论,并签字盖章。A.施工企业施工员B.专业监理工程师C.项目专业技术负责人D.建设单位参加验收的人员70、关于施工文件档案管理的说法,正确的是( )。A.工程分包企业应将本单位形成的工程文件整理、立卷后及时移交建设单位B.由多个单位工程组成的建设项目,工程文件按一个建设工程立卷C.施工企业应当在工程竣工验收前,将形成的有关工程档案向建设单位移交D.工程文件可采用纯蓝墨水书写二、多项选择题(共25题,每题2分,每题的备选项中,有2个或2个以上符合题意,至少有1个错项,错选,本题不得分;少选,所选的每个选项得分)71、下列项目管理工作中,属于施工方项目管理任务的有( )。A.施工质量控制B.施工成本控制C.施工进度控制D.分包单位人员管理E.施工安全管理72、关于施工管理职能分工的说法,正确的有( )。A.管理职能的分工表和岗位责任描述的作用是完全相同的B.不同的管理职能可由不同的职能部门承担C.项目各参与方都应编制各自的管理职能分工表D.管理职能分工表既可用于企业管理,也可用于项目管理E.管理职能分工表只反应项目经理和项目技术负责人的工作任务73、分部(分项)工程施工组织设计的主要内容有( )。A.建设项目的工程概况B.施工方法的选择C.施工机械的选择D.劳动力需求量计划E.安全施工措施74、根据《建设工程项目管理规范》(GB/T50326-2006),施工企业项目经理在承担项目施工管理过程中,应具有的权限有( )。A.参与项目招标、投标和合同签订B.制定内部计酬办法C.参与组建项目经理部D.选择建立单位E.选择分包人75、下列施工企业对施工机械使用费的控制措施中,正确的有( )。A.尽量减少因安排不当引起的机械闲置B.加强机械的现场调度,避免窝工C.尽量选择新开发的新型机械设备D.加强机械的维修保养E.做好机上人员与辅助生产人员的协调和配合76、建设工程施工质量不符合要求时,正确的处理方法有( )。A.经返工重做或更换器具、设备的检验批,应重新进行验收B.经有资质的检测单位检测鉴定达到设计要求的检验批,应予以验收C.经有资质的检测单位检测鉴定达不到设计要求,但经原设计单位核算认可能满足结构安全和使用功能的检验批,可予以验收D.经返修或加固的分项、分部工程,虽然改变外形尺寸但仍能满足安全使用要求,可按技术处理方案和协商文件进行验收E.经返修或加固处理仍不鞥满足安全使用要求的分部工程,经鉴定后降低安全等级使用。。。。。。95、关于施工安全管理任务的说法,正确的有( )A.施工平面图设计是施工安全管理计划的主要内容B.施工班组应设置兼职的安全员C.施工安全管理控制主要以施工活动中的人力、物力和环境为对象D.创造安全文明示范工地是施工安全管理目标实施的主要内容之一E.所有施工项目均应制定单项安全技术方案和措施

303 评论(12)

花花的老妈

一、单项选择题

1.【题干】水准测量采用高差法时,待定点的高程是通过()。

A.调整水准仪调试得出

B.计算得出

C.水准尺度直接读出

D.微调补偿器得出

【答案】B

2.【题干】吊装工程专项方案专家论证会应由()组织。

A.建设单位

B.设计单位

C.监理单位

D.施工总承包单位

【答案】D

3.为验证拟定的焊件工艺的正确性所进行的试验过程及结果评价是()。

A.焊接作业卡

B.焊接工艺评定

C.焊接质量证明文件

D.焊接作业规程

【标准答案】B

【解析】本题考查的是焊接工艺的选择与评定。焊接工艺评定为验证所拟定的焊接焊接工艺的正确性而进行的试验过程及结果评价。参见教材P29.

4.【题干】设备基础的质量因素中,影响安装精度的主要是()。

A.浇注方式和时间

B.沉降和强度

C.表面积和平整度

D.温度和湿度

【答案】B

5.【题干】汽轮机低压外下缸组合式,气缸找中心的基准目前多采用()。

A.激光法

B.拉钢丝法

C.假轴法

D.转子法

【答案】B

6.根据压力容器安装许可规则,下列说法正确的是()。

A.分片到货的球罐安装,属于压力容器安装许可管理范围

B.只取得GC1级压力管道安装许可资质的单位,不可以从事压力容器安装工作

C.取得A2级制造许可的单位,可安装高压容器,不得安装超高压容器

D.压力容器安装前,应向设区的市的特种设备安全监督管理部门书面告知

【标准答案】D

【解析】压力容器在安装前,安装施工单位应当向直辖市或者设区的市的特种设备安全监督管理部门书面告知。参见教材P73.

7.【题干】自动化仪表的取源部件安装,做法正确的是()。

A.在工艺管道的防腐、衬里、吹扫后开孔和焊接

B.同一管段上的压力取源部件安装在温度取源部件下游侧

C.温度取源部件在管道上垂直安装时,应与管道轴线垂直相交

D.温度取源部件应近邻阀门出口侧安装

【答案】C

8.【题干】金属表面防腐前预处理要求,正确的是()。

A.基体表面温度应高于露点3℃以上

B.相对温度上升到60%时,应停止除锈作业

C.海砂作为喷射材料进行除锈作业

D.金属表面应除锈彻底,打磨光滑

【答案】A

9.炉窑砌砖中断或返工时,中断或返工拆除时应做成()

A.平齐一致直槎

B.梯形斜槎

C.一角直槎

D.马形斜槎2015二建答案

【标准答案】B

【解析】本题考查的是耐火砖砌筑的主要技术要求。砌砖中断或返工拆除时,应做成梯形斜槎。参见教材P100.

10.【题干】明敷管道横干管穿越防火分区隔墙时,管道穿越墙体的两侧应隔墙设置防火套管的长度,可用的是()。

【答案】D

11.【题干】避雷器安装的检查要求,正确的是()。

A.避雷器应拆开检查

B.避雷器额定电压与电压相等

C.避雷器磨片的上下盖不能取下

D.避雷器计件的应小于1mm

【答案】B

12.【题干】通风系统按空气动力不同分为()和机械通风。

A.工业通风

B.换气通风

C.自然通风

D.全面通风

【答案】C

13.【题干】在有强磁场干扰的区域,模拟信号传输电缆应采用()。

A.多股线

B.屏蔽线

C.双绞线

D.平行线

【答案】B

14.【题干】属于消防工程避难设施的是()。

A.应急照明装置

B.手动报警按钮

C.自动喷淋设施

D.感火探测器

【答案】A

15.【题干】曳引式电梯设备进场验收合格后,在驱动主机安装的工序是()。

A.土建交换检验

B.导轨安装

C.对重安装

D.安全部件安装

【答案】A

16.施工企业使用的A类计量器具包括计量标准器具和用于()的工作计量器具。

A.工艺控制

B.量值传递

C.质量检测

D.物资管理

【标准答案-建设工程教育网】B

【建设工程教育网-解析】本题考查的是分类管理计量器具。A类计量器具范围:施工企业计量标准器具和用于量值传递的工作计量器具。参见教材P277.

17.【题干】下列有关用电计量装置的规定。说法正确的是()。

A.用电计量装置设计应征得检定机构的认可

B.用电计量装置必须装在供电设施的产权分界处

C.用电计量装置属于非强制检定范畴

D.现场校验后的用电计量装置应加封

【答案】D

18.【题干】满路烘炉,电炉和试超转完成的,理由()验收。

A.施工单位质量部门

B.事业单位施工管理部门

C.制造单位质量部门

D.所在监督监管部门

【答案】C

19.【题干】工业自动化仪表安装分项工程应被仪表质检安装()进行划分。

A.施工程序

B.施工方法

C.实验要求

D.试验程序

【答案】B

20.【题干】室外排水管道安装工序是()。

A.分项工程

B.分部工程

C.子单位工程

D.单位工程

【答案】A

二、多选题

21.【题干】下列关于控制电缆的说法,正确的是()。

A.芯线胶的一胶在10mm2以下

B.芯线材质多采用钢导体

C.芯线的绞合主要采用对绞线

D.允许的工作温度为95℃

E.绝缘层材质可采用聚乙烯

【答案】AE

22.按压缩气体的方式分类,属于速度型的压缩机有()

A.轴流式

B.螺杆式

C.转子式

D.离心式

E.混流式

【标准答案】ADE

【解析】本题考查的是压缩机的分类和性能。速度型压缩机可分为轴流式、离心式、混流式。参见教材P11.

23.【题干】下列关于垫铁设置的说法,符合规范要求的()。

A.每个地螺栓旁边至少应有一组垫铁

B.垫铁不得设置在底座主要承受力部位

C.设备底座接缝处的两侧各设置一组垫铁

D.每组垫铁的块数不宜超过5块

E.设备调平后,垫铁应与设备底座点焊牢固

【答案】ACD

24.【题干】封闭母线安装程序中,外科焊接前的工序有()。

A.绝缘子安装

B.找正固定

C.导体焊接

D.电气试验

E.与设备连接

【答案】BC

25.【题干】下列工业管道水冲洗实施要点,正确的有()。

A.冲水流速不得低于

B.排水时不得形成负压

C.排出口的水色和透明度与入口水目测一致

D.使用洁净水连续进行冲洗

E.水中氢离子含量不得超过30ppm

【答案】ABCD

26.【题干】保温棉的进场复检指标有()。

A.密度

B.绝热结构

C.含水率

D.几何形状

E.导热系数

【答案】ACE

27.【题干】对金属管道做钝化处理。可采用左右的()溶液。

A.重铬酸

B.氢氧化钠

C.重铬酸钠

D.磷酸三钠

E.重铬酸钾

【答案】ACE

28.下列工序,属于成套电气照明灯具的施工工序有()

A.灯具检查

B.灯具组装

C.灯具安装

D.灯具接线

E.灯具送电

【标准答案】ABCD

【解析】本题考查的是建筑电气工程施工程序。照明灯具的施工程序:灯具开箱检查→灯具组装→灯具安装接线→送电前的检查→送电运行。参见教材P111.

29.【题干】下列装置,属于蒸气压缩式制冷机组组成部分的有()。

A.蒸发器

B.发生器

C.膨胀阀

D.冷凝器

E.分水器

【答案】ACD

30.【题干】机电工程注册建造师执业的机电安装工程不包括()。

A.净化工程

B.煤气工程

C.动力工程

D.建材工程

E.制氧工程

【答案】AC

三、案例分析题

(一)

背景资料

某安装公司总包氨氢压缩分厂全部机电安装工程,其中氨氢压缩机为XX式。工作压力为32Mpa,电机与压缩机本体分两件进场,现场用齿式联轴器XXXX系统的XXX随机组订货,现场组装试验。

开工前,安装公司决定压缩机系统的机械设备、电气自动化、管道等XXX单位自行变换,防腐保温及其他非主体工程分包给具有相应资质的分包XXX安装公司对分包工程从技术、质量、安全、进度、工程款支付等进行施工XXXX。

施工前,施工方案编制人员向施工作业人员作了分项、专利工程的施工XXXX,由于交底内容全面、重点突出、可操作性强,故施工中效果明显,工程进XXX。

试运行阶段,一台压缩机振动较大,经复查土建无施工质量问题,基XXXXXX质量全部合格;复查安装记录:垫铁设置合理且按规定定位焊接XXXXXXXX符合质量要求,测量仪器精度合格,各种环境因素对安装无影响。

XXXX进一步认真复查并处理。

问题:

1.【题干】压缩机系统的管道,按压力分应属于哪一类?应进行哪些试验?

【答案】10—100Mp 高压管道

设计压力大于1Mp 流体管道阀门进行 壳体压力试验,密封性试验

管道系统实验(压力试验,泄漏性试验,真空度实验)

2.【题干】对分包工程管理的主要依据有哪些?

【答案】对分包工程施工管理的主要依据是

工程总承包合同;分包合同;承包工程施工中采用的国家、行业标准

有关法律法规及规范、规程、规章制度;总承包方及监理单位的指令。

经总包批准的分包工程的《施工组织设计》或《施工方案》

3.【题干】施工方案交底主要包括哪些内容?

【答案】1.施工范围、工程量、工作量和施工进度要求;

2.施工图纸的解说;

3.施工方案措施;

4.操作工艺和保证安全质量安全的措施;

5.工艺质量标准和评定方法

6.技术检验和检查验收要求

7.增产节约指标和措施

8.技术记录内容和要求

4.【题干】从资料中分析可能引起压缩机振动较大的原因是什么?哪个单位对此承担责任?

【答案】原因可能是:电机及压缩机底座的纵横中心线和标高,联轴器的径向,和轴向的同心度,产生偏差。

应由安装公司(总包)承担责任,因为总包对工程质量负总责。如果分包有责任,总包可以在此后对其追偿。

(二)

背景资料

某成品燃料油外输项目,由4台5000m3成品汽油罐,两台10000m3消防罐X输泵和工作压力为的外输管道及相应的配套系统组成。

具备相应资质的A公司为施工总承包单位,A公司拟将外输管道及配套系统X任务分配给GC2资质的B专业公司。业主认为不妥。随后A公司征得业主同意X,土建施工分包给具有相应资质的C公司,其余工程由A公司自行完成。

A公司在进行罐内环焊缝碳弧气创清根作业时,采用的安全措施有:36V安全X源作为罐内照明电源:3台气刨机分别有3个开关控制,并共用一个总漏电保护开关X打开罐体的透光孔,入孔和清扫孔,用自然对流方式通风,经安全检查,存在不X安全规定之处。

管道试压前,项目部全面检查了管道系统;试验范围内的管道已按图纸要求X焊缝已XX合格并涂好了底漆;膨胀节已设置了临时约束装置;一块 级精度XX力表已经校验合格待用;待试压管道与其他系统已用盲板隔离。项目部在上述检查XX出现了几个问题,并出具了整改书,要求作用队整改。

由于业主负责的施工图设计滞后,造成C公司工期延误20天,窝工损失XX万元人民币,C公司向A公司提请工期和费用索赔。A公司以征地由业主负责,XX公司应向业主索赔为由,拒绝了C公司的索赔申请。

问题:

1.【题干】说明A公司拟将管道系统分包给B单位不妥的理由。

【答案】主体工程禁止分包

该管道因输送甲类可燃液体(汽油)为GC1级,B公司不具备此资质

2.【题干】指出罐内清根作业中不符合安全规定之处,并阐述正确的做法。

【答案】密闭空间作业1.电压应为36v照明电源

共用一个总漏电保护开关

自然对流方式通风

(三)

背景资料

某安装工程公司承包了一套燃油加热炉安装工程,包括加热炉、燃油供应系统、钢结构、工艺管道、电气动力与照明、自动控制、辅助系统等。

燃油泵的进口管道焊缝要求100%射线检测,因阀门和法兰未到货,迟迟未能焊接,为了不影响单机试运行的进度要求,阀门和法兰到达施工现场后,安装工程公司项目部马上安排施工人员进行管道和法兰的施焊,阀门同时安装就位。

安装工程公司项目部总工程师组织编写了加热炉、燃油泵等动力设备的单机试运行方案,报建设单位进行了审批,按照试运行方案,安装工程公司项目部组织了单机试运行和联动试运行。

安装工程公司项目部向建设单位提交的竣工工程施工记录资料有:图纸会审记录、设计变更单、隐蔽工程验收记录;焊缝的无损检测记录;质量事故处理报告及记录。建设单位认为:安装工程公司项目部提交的施工记录资料不全,要求安装工程公司项目部完善、补充。安装工程公司项目部全部整改补充后,建设单位同意该工程组织竣工验收。

问题:

1.【题干】阀门在安装前应检查哪些内容?

【答案】一、文件性查验

查验质量证明文件,阀门上应有制造厂铭牌,铭牌和阀体上应有制造厂名称、阀门型号、公称压力、公称通径等标识

二、外观检查

三、实验

阀门进行壳体压力试验,密封性试验

2.【题干】指出安装工程公司项目部组织试运行的不妥之处,并予以纠正。

【答案】1.安装工程公司项目部马上安排施工人员进行管道和法兰的施焊,阀门同时安装就位

2.单机试运行方案,报建设单位进行了审批,按照试运行方案,安装工程公司项目部组织了单机试运行和联动试运行。

3.【题干】工艺管道工程质量验收记录填写的主要内容有哪些?

【答案】施工技术资料,产品证明,施工资料,验收时抽查记录,分批工程质量验收

4.【题干】安装工程公司项目部应补充哪些竣工工程施工记录资料?

【答案】各检验批、各分项、子分部、分部工程质量验收记录。

通管、管道压力试验、系统测试,各种材料试验。

(四)

背景资料

某电力工程公司项目部承接了商务楼的10kV变配电工程施工项目,工程主要设备布置见10kV变配电设备布置图(图4),变配电设备运行状态通过监控柜实施智能监控。

项目部依据验收规范和施工图编制了变配电工程的施工方案,设备二次搬运及安装程序是:高压开关柜→变压器→低压配电柜→计量、监控柜。方案中,项目部将高压开关柜等基础框架安装的水平度偏差设置为B级质量控制点,电力变压器等高压电器XX交接试验设置为A级质量控制点,保证变配电设备施工质量达到验收规范要求。

进场后,因设计单位变更高压系统设计,造成高压开关柜比其他设备晚到现场XXX。项目部改变了设备的二次搬运及安装程序:变压器→低电压配电柜 →计量、监控柜→高压开关柜。施工中,变配电设备检查、安装、绝缘测试、耐压试验及试运行符合设计要求,变配电设备系统检测满足智能监控要求,工程验收合格,项目部及时整理施工记录等技术资料,将10kV变配电工竣工档案移交给商务楼项目建设单位。

图4 10kV变配电设备布置图

356 评论(10)

pony080808

在学习之前一直对驱动开发非常的陌生,感觉有点神秘。不知道驱动开发和普通的程序开发究竟有什么不同;它的基本框架又是什么样的;他的开发环境有什么特殊的地方;以及怎么写编写一个简单的字符设备驱动前编译加载,下面我就对这些问题一个一个的介绍。

一、驱动的基本框架

1.  那么究竟什么是驱动程序,它有什么用呢:

l     驱动是硬件设备与应用程序之间的一个中间软件层

l 它使得某个特定硬件能够响应一个定义良好的内部编程接口,同时完全隐蔽了设备的工作细节

l     用户通过一组与具体设备无关的标准化的调用来完成相应的操作

l 驱动程序的任务就是把这些标准化的系统调用映射到具体设备对于实际硬件的特定操作上

l     驱动程序是内核的一部分,可以使用中断、DMA等操作

l     驱动程序在用户态和内核态之间传递数据

2.  Linux驱动的基本框架

3.  Linux下设备驱动程序的一般可以分为以下三类

1)        字符设备

a)         所有能够象字节流一样访问的设备都通过字符设备来实现

b)        它们被映射为文件系统中的节点,通常在/dev/目录下面

c)        一般要包含open read write close等系统调用的实现

2)        块设备

d)        通常是指诸如磁盘、内存、Flash等可以容纳文件系统的存储设备。

e)         块设备也是通过文件系统来访问,与字符设备的区别是:内核管理数据的方式不同

f)         它允许象字符设备一样以字节流的方式来访问,也可一次传递任意多的字节。

3)        网络接口设备

g)        通常它指的是硬件设备,但有时也可能是一个软件设备(如回环接口loopback),它们由内核中网络子系统驱动,负责发送和接收数据包。

h)        它们的数据传送往往不是面向流的,因此很难将它们映射到一个文件系统的节点上。

二、怎么搭建一个驱动的开发环境

因为驱动是要编译进内核,在启动内核时就会驱动此硬件设备;或者编译生成一个.o文件, 当应用程序需要时再动态加载进内核空间运行。因此编译任何一个驱动程序都要链接到内核的源码树。所以搭建环境的第一步当然是建内核源码树

1.       怎么建内核源码树

a) 首先看你的系统有没有源码树,在你的/lib/ modules目录下会有内核信息,比如我当前的系统里有两个版本:

#ls /lib/ modules

  

查看其源码位置:

## ll /lib/modules/

lrwxrwxrwx 1 root root 27 2008-04-28 19:19 /lib/modules/ -> /root/xkli/

发现build是一个链接文件,其所对应的目录就是源码树的目录。但现在这里目标目录已经是无效的了。所以得自己重新下载

b)下载并编译源码树

有很多网站上可以下载,但官方网址是:

下载完后当然就是解压编译了

# tar –xzvf

#cd

## make menuconfig (配置内核各选项,如果没有配置就无法下一步编译,这里可以不要改任何东西)

#make

如果编译没有出错。那么恭喜你。你的开发环境已经搭建好了

三、了解驱动的基本知识

1.         设备号

1)        什么是设备号呢?我们进系统根据现有的设备来讲解就清楚了:

#ls -l /dev/

crwxrwxrwx 1 root root     1,   3 2009-05-11 16:36 null

crw------- 1 root root     4,   0 2009-05-11 16:35 systty

crw-rw-rw- 1 root tty      5,   0 2009-05-11 16:36 tty

crw-rw---- 1 root tty      4,   0 2009-05-11 16:35 tty0

在日期前面的两个数(如第一列就是1,3)就是表示的设备号,第一个是主设备号,第二个是从设备号

2)        设备号有什么用呢?

l 传统上, 主编号标识设备相连的驱动. 例如, /dev/null 和 /dev/zero 都由驱动 1 来管理, 而虚拟控制台和串口终端都由驱动 4 管理

l 次编号被内核用来决定引用哪个设备. 依据你的驱动是如何编写的自己区别

3)        设备号结构类型以及申请方式

l   在内核中, dev_t 类型(在 中定义)用来持有设备编号, 对于  内核, dev_t 是 32 位的量, 12 位用作主编号, 20 位用作次编号.

l   能获得一个 dev_t 的主或者次编号方式:

MAJOR(dev_t dev); //主要

MINOR(dev_t dev);//次要

l   但是如果你有主次编号, 需要将其转换为一个 dev_t, 使用: MKDEV(int major, int minor);

4)        怎么在程序中分配和释放设备号

在建立一个字符驱动时需要做的第一件事是获取一个或多个设备编号来使用. 可以达到此功能的函数有两个:

l       一个是你自己事先知道设备号的

register_chrdev_region, 在 中声明:

int register_chrdev_region(dev_t first, unsigned int count, char *name);

first 是你要分配的起始设备编号. first 的次编号部分常常是 0,count 是你请求的连续设备编号的总数. name 是应当连接到这个编号范围的设备的名子; 它会出现在 /proc/devices 和 sysfs 中.

l       第二个是动态动态分配设备编号

int alloc_chrdev_region(dev_t *dev, unsigned int firstminor, unsigned int count, char *name);

使用这个函数, dev 是一个只输出的参数, 它在函数成功完成时持有你的分配范围的第一个数. fisetminor 应当是请求的第一个要用的次编号; 它常常是 0. count 和 name 参数如同给 request_chrdev_region 的一样.

5)        设备编号的释放使用

不管你是采用哪些方式分配的设备号。使用之后肯定是要释放的,其方式如下:

void unregister_chrdev_region(dev_t first, unsigned int count);

6)

2.         驱动程序的二个最重要数据结构

1)         file_operation

倒如字符设备scull的一般定义如下:struct file_operations scull_fops = {.owner =  THIS_MODULE,  .llseek =  scull_llseek,  .read =  scull_read,  .write =  scull_write,  .ioctl =  scull_ioctl,  .open =  scull_open,  .release =  scull_release,  };

file_operation也称为设备驱动程序接口

定义在 , 是一个函数指针的集合. 每个打开文件(内部用一个 file 结构来代表)与它自身的函数集合相关连( 通过包含一个称为 f_op 的成员, 它指向一个 file_operations 结构). 这些操作大部分负责实现系统调用, 因此, 命名为 open, read, 等等

2)         File

定义位于include/

struct file结构与驱动相关的成员

l         mode_t f_mode      标识文件的读写权限

l         loff_t f_pos           当前读写位置

l         unsigned int_f_flag 文件标志,主要进行阻塞/非阻塞型操作时检查

l         struct file_operation * f_op  文件操作的结构指针

l         void * private_data 驱动程序一般将它指向已经分配的数据

l         struct dentry* f_dentry  文件对应的目录项结构

3.         字符设备注册

1)        内核在内部使用类型 struct cdev 的结构来代表字符设备. 在内核调用你的设备操作前, 必须编写分配并注册一个或几个这些结构. 有 2 种方法来分配和初始化一个这些结构.

l             如果你想在运行时获得一个独立的 cdev 结构,可以这样使用:

struct cdev *my_cdev = cdev_alloc();

my_cdev->ops = &my_fops;

l             如果想将 cdev 结构嵌入一个你自己的设备特定的结构; 你应当初始化你已经分配的结构, 使用:

void cdev_init(struct cdev *cdev, struct file_operations *fops);

2)        一旦 cdev 结构建立, 最后的步骤是把它告诉内核, 调用:

int cdev_add(struct cdev *dev, dev_t num, unsigned int count);

说明:dev 是 cdev 结构, num 是这个设备响应的第一个设备号, count 是应当关联到设备的设备号的数目. 常常 count 是 1, 但是有多个设备号对应于一个特定的设备的情形.

3)        为从系统去除一个字符设备, 调用:

void cdev_del(struct cdev *dev);

4.         open 和 release

239 评论(8)

永远在路上ing

二级建造师考试共设3科,分别是《建设工程施工管理》、《建设工程法规及相关知识》和《专业工程管理与实务》。《建设工程施工管理》和《建设工程法规及相关知识》2个科目的试题题型均为客观题, 考生答题时在答题卡上用2B铅笔填涂作答。《专业工程管理与实务》科目的试题题型分为主观题和客观题。客观题部分用2B铅笔在答题卡上填涂作答,主观题部分用黑色钢笔或签字笔在专用答题卡上作答。考试题型科目名称 考试时间 题型题量 建设工程法规及相关知识 2小时 单选60个,多选20个 建设工程施工管理 3小时 单选70个,多选25个 专业工程管理与实务 3小时 单选20个,多选10个,案例分析4个

185 评论(8)

洛雪吟风

熟悉硬件工作原理,添加linux驱动部分的代码,最终能让应用层访问硬件,熟练程度当然是非常熟练了。

182 评论(10)

幻影墨斗鱼

可以读读内核源码,比如说minix。你看的那本书还不错,还有一本“设备驱动程序”,好像是电力出版社的。另外你可以搞两台虚拟机试着做做东西,写程序经验和感觉都很重要。个人感觉书还是要纸质的书,确实如此,网上下的东西,看起来总觉得力不从心。我个人的感觉是有兴趣内核源码要研究一下,很有帮助。另外有时候写东西对概念的理解很重要,VC其实也不错,因为现在会VC的人越来越少了,我曾经做过一段时间,那是n年前的事情了,因为一直做Linux和JAVA,现在已经彻底丢了,我们是做设备的,LInux,windows都需要做驱动,我们一直招这种人招不到,即使招到也是做应用的。

123 评论(10)

大哈哈a呦呦

我空间里有历年真题可以看下

269 评论(12)

相关问答