本书针对使用linux构建嵌入式系统的一个关键环节——图形用户界面(gui),首先讲述了linux编程的高级技巧,包括多进程、多线程等技术;然后通过实例重点讲述了窗口系统的基本知识与实现技巧,为读者开发自己的面向嵌入式linux的gui环境提供了一个参考实现范例。重点包括:lgui多窗口的设计与实现、lgui的消息管理、窗口与无效区的管理、设备上下文与图形设备接口的设计与实现等。
本书适用于使用linux构建嵌入式系统的软件工程师以及希望深入了解窗口系统实现原理的读者。
《精通嵌入式Linux编程:构建自己的GUI环境》是由北京航空航天大学出版社出版的。
《精通嵌入式Linux编程:构建自己的GUI环境》针对使用Linux构建嵌入式系统的一个关键环节——图形用户界面(GUI),首先讲述了Linux编程的高级技巧,包括多进程、多线程等技术;然后通过实例重点讲述了窗口系统的基本知识与实现技巧,为读者开发自己的面向嵌入式Linux的GUI环境提供了一个参考实现范例。重点包括:LGUI多窗口的设计与实现、LGUI的消息管理、窗口与无效区的管理、设备上下文与图形设备接口的设计与实现等。
插图:这时候就需要一个“技术部经理”出来说话,他来协调每个人发言的时间,以便每个人表达的信息都能为别人所了解。那么这个协调与被协调的关系算不算是一个客户机/服务器结构呢?一般意义上讲应该说不算,因为所谓客户机/服务器结构应该是:客户机发出请求,服务器进行处理,并将处理的结果返回到客户机。技术部开会的时候并不是每个工程师发请求到技术部经理,由技术部经理完成处理后返回信息到工程师。在这个系统中,技术部经理只是一个协调者的角色,而不是服务者的角色,所以并不是通常意义上讲的客户机/服务器结构。但是另一方面,客户端有胖瘦之分,客户端要求服务器端处理的事情可能很复杂,也可能很简单。在很复杂的情况下,客户端很少自己做事情,大部分事情都由服务器端完成;相反,客户端可能要求服务器做很少的事情,大部分事情由自己完成。无论何种情况,它们之间有一个请求与被请求的关系、协调与被协调的关系。所以,在这里不必过多讨论这是不是严格意义上的客户机/服务器结构,姑且认为协调者的角色就是服务器,被协调者的角色就是客户机。在多个进程同时运行的情况下,任何一个进程在对屏幕进行输出的时候,都需要了解当前屏幕上的哪些区域是町以输出的,哪些区域是不可以输出的。具体实现的时候,有两种方法:一是所有的输出都由一个服务进程来完成,由这个服务进程来确定当前对于哪些屏幕区域的输出请求是允许的,哪些是不允许的,这样就避免了多个进程对于屏幕区域的竞争;另一种方法就是其他进程只从服务进程那里请求并得到允许输出的区域,而具体的输出操作由自己完成。前一种方法面临的问题是需要在进程之间不停地传递大量数据。不同进程之间除非通过IPc,否则因为不同的进程空问不允许互相访问数据,大块的数据需要在进程之间传递,这是非常耗费资源的操作,这在嵌入式环境中更是不可取的。而后一种方法需要输出的进程只请求允许输出的屏幕区域,输出的操作由进程自己完成,相对而言.效率会有很大提高。而LGUI就是采取了这种方式。4.1.4 为什么要多进程从GUI的角度讲,多进程实际上是多个进程对于屏幕的输出管理。如果有很多进程在同时运行,但并没有屏幕输出的要求,就谈不上多进程的管理。LGUI是一个支持多进程、多线程的客户机/服务器系统。为什么要多进程?单个进程不是更简单吗?当然,并不是所有的嵌入式环境都要求多个进程同时运行,或者同时要求进行屏幕输出。例如,一个机顶盒的GUI系统,就不会这样复杂。但在一些复杂的嵌入式环境中,多进程是必需的,例如PDA等。不能要求用户在PDA中添加一项功能,就重新将系统编译一下。
《品牌创造增长》内容简介:怎样建立品牌?怎样挖掘用户的隐性需求?对用户而言,你的产品只是一个名字,还是一个品牌?打造一个知
《阅读理解高分6法:线索法》内容简介:阅读理解想要拿高分,文章读不透,学习再多答题技巧也是事倍功半!本书聚焦“文章如何读”“
《一级计算机基础及Photoshop应用》内容简介:本书依据教育部考试中心最新发布的《全国计算机等级考试大纲》以及编者多年对等级考试
EPLAN Electric P8教育版使用教程 本书特色 本书按照电气项目的设计流程和特点,讲述了eplan electric p8电气cae绘图及管理软件的...
《商业创意(全二册)》内容简介:《商业创意》 商业创意简单地说是可以实现商业价值的创意。商业创意的诞生通常是由企业或者相关机
本书内容包括:HSPA标准的研究进展和未来发展蓝图;HSPA对无线网络的影响、协议结构以及网元的功能和接口,并给出了无线资源控制
《学术家园(精)》内容简介:《学术家园》是《人民政协报》的品牌周刊,很好地体现了政协“学者云集,名家荟萃”的构成特点。今年
《博弈论:每个人都能成为决策高手》内容简介:这是一本关于博弈论的入门书。蒋文华认为一个高度联结的社会必然是一个充满博弈的社
深入剖析现代编译器运用的算法和技术强调代码优化和代码生成体现编译原理教学的最新理念本书旨在介绍编译器构造法中的艺术和科学
《商业银行操作风险量化分析》内容简介:本书以信度理论和贝叶斯网络为主要工具,研究了操作风险的高级计量法与预警机制,并针对中
,清华大学建筑学院教授,博士生导师,国家一级注册建筑师1978年考入清华大学建筑系,曾在日本学习和工作七年。长期致力于住宅精
《但问旗民:清代的法律与社会(精)》内容简介:《但问旗民:清代的法律与社会》是赖惠敏研究员继《乾隆皇帝的荷包》之后关于清史
本书全面而系统地介绍了安藤忠雄的作品,包括他从成名以来到现在的一些代表作以及他最新的一些作品。书中所用的图纸和资料都由安藤
就像报纸、杂志等媒体无处不在一样,电脑了已经被应用于日常生活的各种场合。这个远处不在的电脑世界已成为艺术表现的媒体,带着
《软件安全开发指南》内容简介:本书系统性地介绍了OWASP安全组织研究总结的应用安全验证标准,为软件开发过程中的安全控制措施开发
本书深入浅出介绍了人机交互系统的原理与应用,内容涉及电子原理基础、设备选型、建立集成电路、微处理编程、计算机通信、转换和
《神探夏洛克·1》内容简介:《神探夏洛克》是近年上映的英剧逸品,主演“卷福”(本尼迪克特康伯巴奇)“花生”(马丁弗瑞曼)凭借
PHOTOSHOP CS6从入门到精通-附赠1DVD.含教学视频与海量素材 本书特色 本书深入挖掘了photoshopcs6的核心工具、命令与功能,轻松解析色调...
机器人技术基础 内容简介 本书系统地介绍了机器人的基础理论和关键技术。主要内容包括:机器人的机构、位姿描述和齐次变换、操作臂运动学、操作臂的雅可比、操作臂动力学...
《网页美术设计原理及实战策略》是作者基于10余年美术设计和网页设计教学经验编写的关于网页美术设计原理的教材,其中涉及网页美