《嵌入式系统开发》课程设计基于QT的数码相框设计和实现(3)

2019-03-10 21:46

基于QT的数码相框设计与实现

2.4.2 linux内核系统体系结构

Linux 内核主要由5个模块构成,它们分别是:进程调度模块、内存管理模块、文件系统模块、进程间通信模块和网络接口模块。

进程调度模块用来负责控制进程对CPU资源的使用。所采取的调度策略是各进程能够公平合理地访问CPU,同时保证内核能及时地执行硬件操作。内存管理模块用于确保所有进程能够安全地共享机器主内存区,同时,内存管理模块还支持虚拟内存管理方式,使得Linux支持进程使用比实际内存空间更多的内存容量。并可以利用文件系统把暂时不用的内存数据块交换到外部存储设备上去,当需要时再交换回来。文件系统模块用于支持对外部设备的驱动和存储。虚拟文件系统模块通过向所有的外部存储设备提供一个通用的文件接口,隐藏了各种硬件设备的不同细节。从而提供并支持与其他操作系统兼容的多种文件系统格式。进程间通信模块子系统用于支持多种进程间的信息交换方式。网络接口模块提供对多种网络通信标准的访问并支持许多网络硬件。

本章小结:嵌入式软件包括与硬件相关的底层软件、操作系统、图形界面、通讯协议、数据库系统、标准化浏览器和应用软件等。总体看来,嵌入式系统具有便利灵活、性能价格比高、嵌入性强等特点,而嵌入式Linux由于它的开源性、内核的健壮性和稳定性、可裁减性、成为了嵌入式操作系统的新宠。

- 7 -

基于QT的数码相框设计与实现

3. 嵌入式Linux系统GUI设计分析

嵌入式系统的图形用户界面GUI是嵌入式系统与人与计算机之间传递、交换信息的媒介和对话接口,是计算机的重要组成部分,用户界面的发展经历了命令语言界面、菜单界面、图形用户界面和直接操作界面等过程。

3.1 图形用户界面概述

所谓GUI(Graphics User Interface)就是图形用户界面,是指计算机与其使用者之间的对话接口,是计算机系统的重要组成部分。

一个图形用户界面系统通常由三个基本层次组成,即显示模型、窗口模型和用户模型。用户模型包含了显示和交互的主要特征。图3-1给出了图形用户界面系统的结构。

桌面管理系统 用户模型 窗口模型 显示模型 操作系统 硬件平台 图3-1 图形用户界面系统的结构

当前嵌入式Linux系统迫切需要轻量级的GUI,幸运的是,不少厂家和开放源码组织已经提供了这样的GUI,如Qt/Embedded,Microwindows,MiniGUI等。尽管已具备了基本的轻量级GUI系统,但由于Flash磁盘空间、内存资源和功耗的限制,嵌入式Linux系统上的GUI应用软件设计很大程序上不同于桌面系统应用软件的开发。比如,应用程序的用户界面就需要精心定制,来方便用户在较小尺寸的屏幕上输入输出;又如,嵌入式系统上的应用程序一般不允许崩溃,所以必须采取安全有效的内存管理策略保证程序的可靠性。

- 8 -

基于QT的数码相框设计与实现

3.2 嵌入式系统的GUI简介

嵌入式GUI就是在嵌入式系统中为特定的硬件设备或环境而设计的图形用户界面系统。所以嵌入式GUI不但要有GUI的特征,在实际应用中,嵌入式系统对它来说还有如下的基本要求:占用资源少,高性能,高可靠性,可配置

下面,我们将简要介绍一种常见的嵌入式系统的GUI——QT/Embedded: Qt是Trolltech 公司的一个产品,是一个多平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所有功能。Qt是完全面向对象的很容易扩展,并且允许真正地组件编程。 自从1996年早些时候,Qt进入商业领域,它已经成为全世界范围内数千种成功的应用程序的基础。Qt也是流行的Linux桌面环境KDE 的基础,KDE是所有主要的Linux发行版的一个标准组件。

Qt/Embedded 是 Trolltech 公司的另一个产品,虽然走Open Source开发路线,采用GPL授权,但商业用的要付费。Qt/Embedded是Qt的嵌入式Linux端口,是完整的自包含C++GUI和基于Linux的嵌入式平台开发工具。大范围的Qt/Embedded API可用于多种开发项目。Qt/Embedded可以开发市场上多种类型的产品和设备,从消费电器(移动电话、联网板和set top盒)到工业控制设备(如医学成像设备、移动信息系统等)。这套环境提供的API和Qt/Windows 与Qt/X11相同,但不需要使用到X11,取而代之的提供从硬件接口、绘图程序库和完整的GUI工具。Qt/Embedded 对存储内存的需求约在800kB到3MB(Intel 下x86)。其另一个特点就是跨平台,用Qt API开发出来的应用程序,可以在不同的操作系统和视窗系统上执行。

- 9 -

基于QT的数码相框设计与实现

3.3 GUI的组成

桌面:在启动时显示,也是界面中最底层,有时也指代包括窗口、文件浏览器在内的“桌面环境”。

视窗:应用程序为使用数据而在图形用户界面中设置的基本单元。应用程序和数据在窗口内实现一体化。

单一文件界面:在窗口中,一个数据在一个窗口内完成的方式。在这种情况下,数据和显示窗口的数量是一样的。若要在其他应用程序的窗口使用数据,将相应生成新的窗口。因此窗口数量多,管理复杂。

多文件界面:在一个窗口之内进行多个数据管理的方式。这种情况下,窗口的管理简单化,但是操作变为双重管理。

标签:多文件界面的数据管理方式中使用的一种界面,将数据的标题在窗口中并排,通过选择标签标题显示必要的数据,这样使得接入数据方式变得更为便捷。

上述中,多文件界面主要是微软视窗系统采用。而在其他环境中,通常多是单文件界面,所以无所谓单一/多文件界面的称呼问题。

菜单:将系统可以执行的命令以阶层的方式显示出来的一个界面。一般置于画面的最上方或者最下方,应用程序能使用的所有命令几乎全部都能放入。

即时菜单(又称功能表):与应用程序准备好的层次菜单不同,在菜单栏以外的地方,通过鼠标的第二按钮调出的菜单称为“即时菜单”。

图标:显示在管理数据的应用程序中的数据,或者显示应用程序本身。 按钮:菜单中,利用程度高的命令用图形表示出来,配置在应用程序中,成为按钮。

- 10 -

基于QT的数码相框设计与实现

3.4 Qt/Embedded分析

Qt/Embedded是Troll tech公司开发的面向嵌入式系统的Qt版本,Qt是KDE等项目使用的GUI支持库,许多基于Qt的X Window程序可以非常方便地移植到Qt/Embedded上。Qt/Embedded是Server/Client(客户端/服务器)结构,在底层摒弃了X lib,仅采用frame buffer作为底层图形接口,它是为高端嵌入式图形领域的应用而设计的。

3.4.1 Qt/Embedded的工作模式

Qt/Embedded的窗口系统具有自己的一种客户端/服务器体系结构,其窗口系统体系结构如下

图3- 所示,在一个典型的Qt/Embedded窗口系统中一般包括一个或多个客户端进程,一个服务器进程,然而Qt/Embedded的客户/服务器模型与一般泛指的客户/服务器模型概念又不完全一样,在Qt/Embedded中,客户端和服务器都是Qt/Embedded应用程序,并不是位于不同机器上的应用程序,服务器和客户端不是独立分别运行在不同的机器上的,而和客户端应用程序在同一机器上运行。

提供GUI服务 客户进程 服务器进程

Qt/Embedded库 键盘设备 鼠标设备 显示存储设备 - 11 -


《嵌入式系统开发》课程设计基于QT的数码相框设计和实现(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:昌平区2018年高三年级第二次统一练习

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: