本书针对使用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中添加一项功能,就重新将系统编译一下。
在线阅读本书NowinitsFourthEdition,thisunrivaled,seminalworkcontinuesitslongtraditionof...
内容简介:怎样才能将访问者转化为顾客?本书提供了一些切实可行的建议,比如如何说服访问者作出购买决定,如何避免用户因信息过
《用管理驱动销售》内容简介:本书从组织发展和战略达成的角度阐述了如何展开全面的、系统的销售管理工作,旨在帮助企业打造具有自
SolidWorks快速入门教程 本书特色 本书是学习SolidWorks2016中文版的快速入门与提高教程,内容包括SolidWorks2016功能概述、软件...
《隔屏相遇:如何做好网络心理咨询》内容简介:本书在新冠肺炎疫情的大背景下,网络心理咨询很好地解决了“日益增长的心理咨询需求
《漫画分镜头表现教程(第3版)》内容简介:本书共分5章,分别讲解分镜头概述、漫画分镜头表现、四格漫画分镜头表现、特殊分镜头技
《生活英语口语100主题》内容简介:互联网+时代,你最需要的英语学习书!新东方、英孚等资深外教诚恳推荐,生活英语完全收录,让你
内容提要为加快我国电信发展的现代化步伐,必须尽可能采用高新电信技术和设备。与传统的PDH网相比,SDH网能更好地满足电信网朝着
C++ Primer Plus-(第6版)-中文版 本书特色 一本经久不衰的c++畅销经典教程;**本支持c++11新标准的程序设计图书。它被誉为“开发人员学习...
《著作权合理使用制度研究(第三版)》内容简介:合理使用是现代著作权法中的一项重要制度,在著作权研究中被美、日学者称为世界性
《小池大鱼》内容简介:不是每个企业都可以成为行业龙头。一些聪明的企业,会在细分市场做垂度和深度,做小池塘里的大鱼,进而成为
《别害怕糖尿病》内容简介:《别害怕糖尿病》收集了作者在临床实践中与患者沟通时的常见问题。从糖尿病的诊断谈到治疗,从“三分治
《行业专网规划设计手册》内容简介:本书首先介绍了专网的概念与目前国内外专网的建设现状。在专线电路的建设中根据承载业务对网络
《我们为什么需要历史唯物主义》内容简介:在人类的思想长河中,历史唯物主义已经走过了100多年的历程。100多年来,历史唯物主义是
ArcGIS制图和空间分析基础实验教程 内容简介 本书以arcgis9.3desktop软件为例,引导读者由浅入深地掌握gis软件操作技巧。通过基础实验...
《江村经济》内容简介:《江村经济》原稿出自费孝通1938年向英国伦敦经济学院人类学系提交的博士论文,1939年由Routhledge出版社列
《跨界协同育人共同体:思与行的融合》内容简介:上海中医药大学自2015年7成立“跨界协同育人共同体——服务学生成长导师团”。导师
本书是国内第一本“面向原因式”(Why-OrientedBook)、全面系统介绍FlashActionScript3的书籍。全书共分为5个部分。第一部分:A
内容简介:打造现代布局的专业技术本书远非只是介绍基础知识,它不仅全面细致地讲解布局与效果,而且展望了HTML5和CSS3的未来。业
《数字信号处理学习指导与题解》是高两全等编著的《数字信号处理:原理、实现及应用》的配套用书。主要内容包括:(1)各章重点、难