欢迎光临中国图书网 请 | 注册

精嵌入式Linux编程

作者:李玉东
出版社:北京航空航天大学出版社出版时间:2010-05-01
开本: 16开 页数: 209
读者评分:5分1条评论
中 图 价:¥24.1(8.6折) 定价:¥28.0 登录后可看到会员价
加入购物车 收藏
运费6元,满69元免运费
本类五星书更多>
买过本商品的人还买了

精嵌入式Linux编程 版权信息

精嵌入式Linux编程 本书特色

《精通嵌入式Linux编程:构建自己的GUI环境》是由北京航空航天大学出版社出版的。

精嵌入式Linux编程 内容简介

本书针对使用linux构建嵌入式系统的一个关键环节——图形用户界面(gui),首先讲述了linux编程的高级技巧,包括多进程、多线程等技术;然后通过实例重点讲述了窗口系统的基本知识与实现技巧,为读者开发自己的面向嵌入式linux的gui环境提供了一个参考实现范例。重点包括:lgui多窗口的设计与实现、lgui的消息管理、窗口与无效区的管理、设备上下文与图形设备接口的设计与实现等。
  本书适用于使用linux构建嵌入式系统的软件工程师以及希望深入了解窗口系统实现原理的读者。

精嵌入式Linux编程 目录

第1章 概论
 1.1 嵌入式系统的基本概念
 1.2 嵌入式系统的特征
 1.3 选择linux构建嵌入式系统
 1.4 gui在嵌入式linux系统中的地位及要求
 1.5 用户界面概况
  1.5.1 用户界面的历史
  1.5.2 图形用户界面的特征
  1.5.3 图形用户界面系统的结构模型
  1.5.4 用户界面的发展:gui+新人机交互技术
 1.6 linux图形环境及桌面平台简介
  1.7 各种嵌入式 linux上的图形库与gui系统介绍
  1.7.1 qt/embedded
  1.7.2 microwindows/nanox
  1.7.3 minigui
  1.7.4 opengui
  1.7.5 gtk+
 1.8 linux系统中的多语言问题
 1.9 一个嵌入式linuxgui系统开发的实例
  1.9.1 开发gui系统主要考虑的问题
  1.9.2 后续讲解的实例
第2章 linux基本编程知识
 2.1 编译器的使用
 2.2 函数库的使用
 2.3 makefile
 2.4 gdb
 2.5 建立交叉编译环境
  2.5.1 什么是交叉编译环境
  2.5.2 交叉编译的基本概念
  2.5.3 建立arm_linux交叉编译环境
 2.6 linux下常见的图形库编程简介
  2.6.1 qt
  2.6.2 gtk+
第3章 linux高级程序设计简介
 3.1 linux ipc介绍
  3.1.1 信号
  3.1.2 管道
  3.1.3 消息队列
  3.1.4 信号量
  3.1.5 共享内存
  3.1.6 domain socket
 3.2 linux多线程编程介绍
  3.2.1 创建线程
  3.2.2 线程的退出与取消
  3.2.3 线程退出时的同步问题
  3.2.4 线程清理函数
  3.2.5 线程取消状态
  3.2.6 线程同步
  3.2.7 第三方函数库
  3.3 framebuffer编程简介
第4章 基本体系结构
 4.1 基础知识
  4.1.1 嵌入式linux的gui到底有什么用
  4.1.2 如何定义基本体系结构
  4.1.3 为什么用客户机/服务器结构
  4.1.4 为什么要多进程
  4.1.5 为什么要多线程
 4.2 体系结构综述
  4.2.1 客户机与服务器之间的通信通道
  4.2.2 客户机需要与服务器交换什么信息
  4.2.3 服务器对客户机进程的管理
 4.3 进程创建与进程的管理
第5章 多窗口的设计与实现
第6章 gui中的消息管理
第7章 窗口输出及无效区的管理
第8章 dc与gdi的设计与实现
第9章 控件实现
第10章 定制gui对图像的支持
第11章 字库及输入法的实现
第12章 gui的移植
第13章 lgui应用开发模式
第14章 gui系统的效率问题
后记——lgui开发的一些体会
参考文献
展开全部

精嵌入式Linux编程 节选

《精通嵌入式Linux编程:构建自己的GUI环境》针对使用Linux构建嵌入式系统的一个关键环节——图形用户界面(GUI),首先讲述了Linux编程的高级技巧,包括多进程、多线程等技术;然后通过实例重点讲述了窗口系统的基本知识与实现技巧,为读者开发自己的面向嵌入式Linux的GUI环境提供了一个参考实现范例。重点包括:LGUI多窗口的设计与实现、LGUI的消息管理、窗口与无效区的管理、设备上下文与图形设备接口的设计与实现等。

精嵌入式Linux编程 相关资料

插图:这时候就需要一个“技术部经理”出来说话,他来协调每个人发言的时间,以便每个人表达的信息都能为别人所了解。那么这个协调与被协调的关系算不算是一个客户机/服务器结构呢?一般意义上讲应该说不算,因为所谓客户机/服务器结构应该是:客户机发出请求,服务器进行处理,并将处理的结果返回到客户机。技术部开会的时候并不是每个工程师发请求到技术部经理,由技术部经理完成处理后返回信息到工程师。在这个系统中,技术部经理只是一个协调者的角色,而不是服务者的角色,所以并不是通常意义上讲的客户机/服务器结构。但是另一方面,客户端有胖瘦之分,客户端要求服务器端处理的事情可能很复杂,也可能很简单。在很复杂的情况下,客户端很少自己做事情,大部分事情都由服务器端完成;相反,客户端可能要求服务器做很少的事情,大部分事情由自己完成。无论何种情况,它们之间有一个请求与被请求的关系、协调与被协调的关系。所以,在这里不必过多讨论这是不是严格意义上的客户机/服务器结构,姑且认为协调者的角色就是服务器,被协调者的角色就是客户机。在多个进程同时运行的情况下,任何一个进程在对屏幕进行输出的时候,都需要了解当前屏幕上的哪些区域是町以输出的,哪些区域是不可以输出的。具体实现的时候,有两种方法:一是所有的输出都由一个服务进程来完成,由这个服务进程来确定当前对于哪些屏幕区域的输出请求是允许的,哪些是不允许的,这样就避免了多个进程对于屏幕区域的竞争;另一种方法就是其他进程只从服务进程那里请求并得到允许输出的区域,而具体的输出操作由自己完成。前一种方法面临的问题是需要在进程之间不停地传递大量数据。不同进程之间除非通过IPc,否则因为不同的进程空问不允许互相访问数据,大块的数据需要在进程之间传递,这是非常耗费资源的操作,这在嵌入式环境中更是不可取的。而后一种方法需要输出的进程只请求允许输出的屏幕区域,输出的操作由进程自己完成,相对而言.效率会有很大提高。而LGUI就是采取了这种方式。4.1.4 为什么要多进程从GUI的角度讲,多进程实际上是多个进程对于屏幕的输出管理。如果有很多进程在同时运行,但并没有屏幕输出的要求,就谈不上多进程的管理。LGUI是一个支持多进程、多线程的客户机/服务器系统。为什么要多进程?单个进程不是更简单吗?当然,并不是所有的嵌入式环境都要求多个进程同时运行,或者同时要求进行屏幕输出。例如,一个机顶盒的GUI系统,就不会这样复杂。但在一些复杂的嵌入式环境中,多进程是必需的,例如PDA等。不能要求用户在PDA中添加一项功能,就重新将系统编译一下。

商品评论(1条)
  • 主题:书名其实是《构建自己的gui环境-精通嵌入式linux编程》

    利用嵌入式linux来构建应用于便携式终端产品的系统多,软件方面主要有两个环节:一是linux内核(包括驱动)的移植;二是gui层与应用层软件的设计。本书基于后一个环节展开。嵌入式linux的最大问题是其gui没有统一标准。作者认为对嵌入式产品个性化用户界面才是合适的。本书特点:针对性强,只针对gui这个环节讨论技术问题,讨论其如何在嵌入式linux上实现。其次是精炼,不求面面俱到,注重讲清楚一个问题。

    2018/12/17 16:48:23
    读者:wey***(购买过本书)
书友推荐
编辑推荐
返回顶部
中国图书网
在线客服