- 3
- 0
- 约5.6千字
- 约 6页
- 2018-06-27 发布于河南
- 举报
(Unix环境高级编程——第二版)学习心得
《apue2e》(Unix环境高级编程——第二版)学习心得
Unix编程 2010-12-14 20:46:14 阅读169 评论0 ??字号:大中小?订阅
总结:这是一本经典的书,对于Unix程序员如此,对于其它程序员也是相当有价值的。先给两张可以概括本书所讨论内容的两张图片:(第二部分再给出说明)第一部分:对本书总体结构的解析本书共分21章。个人认为核心章节为1~13章,其中1~2章为本书的入门简介与本书的特色所在,为何称作“特色所在”呢?因为本书始终都是在遵从那3个标准来进行编写的,即
ISO C
IEEE POSIX
The Single UNIX Specification
这三个标准,每下一行是上一行的超集,对于每一个Unix的c程序员来说都是最重要的编程标准。它决定了你代码的“高度”与“可用性”。第二章的一节还提到了“limits”即“限制”这个概念,这对于可移植性的代码很重要。3~5章,是关于“文件系统”和相关“I/O函数”的讨论,最重要的概念是“文件描述符”。这里面dup 和dup2 函数很值得”嚼味“,有兴趣可以看看我的另一篇文章”dup2(fd,0)和dup2(0,fd)一样吗?“6章,讨论了一些“系统文件”。7~9章,讨论了“进程”。个人认为下面这张图可以说是对程序的内存布局的典型情况作了很好图示。(见7.6节)10章,讨论了“信号”,它是一种软中断。同时,它为“异步通信”的实现提供了可能。11~12章,是相对于《apue》第一版新增的内容之一。对线程作了讨论。你可以认为“线程”就是一种特殊的“函数”,只不过它能够共享调用进程的资源,能够独立于调用进程(或其它线程)并行执行。当然线程也可以同步,也可以异步执行。还有很多其它有趣的线程特性,可以详细地阅读该书。13章,讨论了“守护进程”的概念与编写方法。至此,本书的核心内容基本讨论完毕。后面14~19章讨论了高级I/O,高级进程间通信,及终端和伪终端的概念。14章的高级I/O,主要留意I/O的“阻塞”和“非阻塞”两种不同形式及各自的应用场合。要特别注意,所谓的阻塞或非阻塞是由“文件”的O_NONBLOCK 标志(注意文件描述符起的作用)决定的,而不是I/O 函数决定的。另外,这个章节中给出了“锁”的概念,这是进程或线程同步的重要技术。15章讨论了进程间通信的种种方法,个人推荐“管道”和“FIFO”两种,至于“XSI IPC”则不建议使用,理由在书中也说得很清楚。16章讨论了“网络套接字”编程。本想自己画个图来说明,没有时间就以后再说吧。17章讨论了基于15章中所讨论的“流机制”和16章讨论的“套接字”的两种高级IPC,具体是哪两个,有兴趣自己去看书吧。前者没有什么可移植性,后者倒是很不错的概念。(后者很好体现了制定“套接字”的初衷:既可用于网络的通信,也可用于本机进程的通信)18章讨论了终端I/O。(晕!看过才知道,终端的属性也太多了吧?)19章讨论了“伪终端”,即“PTY”的概念和使用它的初衷。个人认为书中已经说得很透彻了。如果你明白了“主设备”和“从设备”的关系,及伪终端运行在从设备上的原理和用处,那么你的知识体系又扩大很多了。如果你愿意,也可以参考我的另一篇文章“linux中,tty、pty、pts等终端或伪终端的区别”20章讨论了如何在Unix中构建一个支持 并发访问的数据库。21章通过构建一个打印机的CS模型(客户-服务器)来整合前面大部分章节的知识,做一个应用示例。第二部分:本书重点内容讨论1.“标准”的重要性。一句话,没有第一部分所提到的3个标准,就不存在Unix编程了。(个人对“标准”的理解与重视)2.“内核”是什么?能为我们提供什么功能呢?再回过头来,看看一开始我给出的两张图片。第一张是内核在整个系统中所处的位置,我想说的是:内核是对系统所有硬件资源的“管理和组织者”,你可以说它是“管家”。它负责为上层的软件运行提供所需的硬件资源的分配和时间调度的分配等等。可以认为内核包含两大功能:一、驱动程序集合;二、调度系统。第二张是内核所包含的功能模块,也可以说是本书所讨论内容的概括。21个章节中后19个的内容都是对这5个模块的详细展开。3.文件系统的核心概念:“文件描述符”。内核对文件系统的管理都是基于“文件描述符”的。不管是创建文件,移动或复制文件,修改文件,删除文件都使用“文件描述符”来对某个想操作的文件进行引用和表示。4.区别一下信号,进程间通信,和进程间同步,及共享等概念的不同。信号,是一种软中断;它是异步通信的基础。所以它(异步通信)是进程间通信的一种方式(我们主要使用的signal调用,kill调用
您可能关注的文档
- 程泰GA2600数控车排屑车的改进.ppt
- 船舶压载舱涂层性能标准.ppt
- 草标文化2.ppt
- 蚕的一生变化.ppt
- 补充 加工中心(MC)编程_用户宏程序.ppt
- 肠内营养与早产儿喂养.ppt
- 草莓上线虫病害.ppt
- 词汇手册翻译F.ppt
- !!记者手记新闻真的无处不在.doc
- !(经典题型)第二单《我们周围的空气》单元测试.doc
- 散文题型03 理解分析词句(题型专练)(全国通用)(解析版)-2026年高考语文二轮复习讲练.docx
- 考前押题10 阅读理解之应用文——关注生活 学以致用(原卷版)(押题训练)2026年高考英语阅读理解突破策略及押题(全国通用).docx
- 清单04 综合性学习之语言表达(仿写邀请转述劝说) 活动策划(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 清单09 古诗文对比阅读之内容 情感 写法对比 语言 炼字 拓展探究(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 小说易错02 重点情节理解偏差(选择题)(易错专练)(全国通用)(原卷版)-2026年高考语文二轮复习讲练.docx
- 专题01 声现象(题型专练)(全国通用)(原卷版)2026年中考物理二轮复习讲练.docx
- 清单08 文言文(议论类 书信应用类)阅读之论点把握 文体特点(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 清单11 记叙文阅读之朗读设计 表达技巧 主旨情感 开放探究(知识 方法 能力清单)(解析版)-2026年中考语文二轮复习讲练(全国通用).docx
- 语言清单05 语法填空中的词类(五)无提示词--连词(全国通用)(原卷版)2026年高考英语二轮复习讲练.docx
- 第04讲 想象探索与科学精神(《西游记》《海底两万里》《昆虫记》全国通用(讲义)(解析版)2026年中考语文一轮复习讲练.docx
最近下载
- 2025云南农业大学后勤服务有限公司招聘32人备考题库带答案解析.docx VIP
- 松材线虫课件.pptx VIP
- 2023年洁净车间生产环境控制教材方案模板.pptx VIP
- 【PPT】品管圈(QCC)降低科室一次性耗材浪费率 .pptx
- 2026高中数学复习-专题19 立体几何初步(Ⅱ)(七大题型+模拟精练)(解析版).pdf VIP
- 2025年教师职称-山西-山西教师职称(基础知识、综合素质、小学体育)历年参考题典型考点含答案解析.docx VIP
- isilon Drive Support Package 驱动支持包 1.37 发布说明(英文).pdf VIP
- 企业消防安全知识培训.pptx
- 山东省阳谷县第二中学高中音乐:古老的声音教案.doc VIP
- 常用建筑材料图例整理.doc VIP
原创力文档

文档评论(0)