毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 计算机安全 >> 正文

基于zigbee的无线电子点菜系统 第3页

更新时间:2014-6-28:  来源:毕业论文

基于zigbee的无线电子点菜系统 第3页
                       图 2-2  Linux结构图

 靠近硬件的底层是内核,即Linux常驻内存部分。中间层是内核之外的Shell层,即操作系统的系统程序部分。最高层是应用层,即用户程序部分。内核是Linux操作系统的主要部分,它是实现进程管理、内存管理、文件系统、设备驱动和网络系统等功能,从而为核外的所有程序提供运行环境。Linux系统内核结构图如下:

                       图 2-3  Linux系统内核结构

本课题是在linux系统上开发的,linux内核是2.6版本的。与其他系统相比Linux系统具有它本身的特点:
1.与UNIX兼容。
2.自由软件和源码公开。
3.性能高和安全性强。
4.便于定制和再开发。
5.互操作性高。
6.全面的多任务和真正的32位操作系统。
现在市面上有很多linux的版本,例如Red Hat,红旗linux,Debian,SuSE linux,Ubuntu等等。在这里我的宿主机使用的版本是fedora,目标机(PXA270)上运行的操作系统是由博创公司提供的已经剪裁过的linux系统。
2.2.2 MiniGui简介
Minigui项目的最初目标是为基于Linux的实时嵌入式操作系统提供的一个轻量级的图形用户界面支持系统。发展到今天,Minigui已进入成熟和稳定阶段,并且所支持的操作系统已不仅仅限于Linux,它还可以再uClinux,uC/OS-II,eCos和VxWorks等系统上运行。
 Minigui为应用程序定义了一组轻量的窗口和图形设备接口,利用这些接口,每个应用程序可以建立多个主窗口,然后在这些主窗口中创建按钮、编辑框等控制。Minigui还为用户提供了丰富的图形功能,以显示各种各样的位图并在窗口中绘制复杂的图形。
 MiniGui和嵌入式系统的关系如下图 1-4:

                    图 1-4  MiniGui和嵌入式系统的关系图

基于MiniGui的应用程序一般通过ANSI C库以及MiniGui自身提供的API来实现自己的功能。作为操作系统和应用程序之间的中间件,MiniGui将低层操作系统及硬件平台差别隐藏起来,并对上层应用程序提供了一致的功能特性。例如完善的多窗口机制和消息传递机制,常用的控件类,各种图形文件的支持,以及多字符集合多字体支持等等。
 MiniGui的运行模式主要分以下三种:
 第一种 MiniGui-Thread 模式。该模式为多线程的应用模式,运行在MiniGui-Thread上的应用程序可以在不用的线程中建立多个窗口,但所有的窗口在同一个进程或者地址空间中运行。
 第二种 MiniGui-Lite模式。运行在MiniGui-Lite上的每一程序是单独的进程,每一个进程可以建立多个窗口。使用MiniGui-Lite模式时,需要有一个服务器进程(mginit),负责初始化一些输入设备,并通过UNIX DOMain套接字将输入设备的消息发送到前台的MiniGui-Lite客户进程。
 第三种 MiniGui-Standalone模式。该模式为独立进程的应用模式。此时MiniGui程序以独立进程的方式运行,既不需要多线程的支持,也不需要多进程的支持。这中运行模式适合于功能单一的应用场合。
 目前,流行的面向嵌入式系统的图形系统有MicoroWindows/NanoX、Qt/Embedded、MiniGUI、DirectFB、PicoGUI以及GTK+/FB等。它们中的大多数遵循LGPL条款发布,而MicoroWindows/NanoX遵循的是MGPL,Qt/Embedded采用QGPL条款发布。
MicroWindows/NanoX能够在没有任何操作系统或其他图形系统的支持下运行,它能对裸显示设备进行直接操作。这样,MicroWindows就显得十分小巧,便于移植到各种硬件和软件系统上。然而MicroWindows/NanoX的免费版本开发进展慢,而且缺乏全面专业的技术支持。
Qt/Embedded功能强大,但是,由于它是基于C++类库的,所以和其他GUI相比系统消耗资源较大,一般应用于手持式高端信息产品。
GTK+/FB与Qt/Embedded类似,跳过X层直接与FrameBuffer沟通,也具有Qt/Embedded的几项优点,但发展速度缓慢。
DirectFB是专注于Linux FrameBuffer加速的一个图形库,并试图建立一个兼容GTK的嵌入式GUI系统。
PicoGUI是一种新型的小巧的嵌入式图形系统。同X Windows系统一样具有一个弹性的客户服务端架构。PicoGUI将字体,位图,窗口小部件,以及其他应用程序需要的东西都直接建立在服务器上,与X Windows相比,虽然灵活性有所降低,但速度显著提升、体积大大缩小。
MiniGUI为实时嵌入式操作系统提供了非常完善的图形及用户界面支持。MiniGUI本身的可移植性设计,使得不论在哪个硬件平台,哪种操作系统上运行,MiniGUI均能为上层应用程序提供一致的应用程序编程接口(API)。MiniGUI小巧、灵活且对中文的支持性最好。所以在界面开发工具上选择了MiniGui。
2.2.3 Sqlite简介
1. SQLite总体简述
SQLite 是 D. Richard Hipp 用 C 语言编写的开源嵌入式数据库引擎。它是完全独立的,不具有外部依赖性。它是作为 PHP V4.3 中的一个选项引入的,构建在 PHP V5 中。SQLite 支持多数 SQL92 标准,可以在所有主要的操作系统上运行,并且支持大多数计算机语言。SQLite 还非常健壮。其创建者保守地估计 SQLite 可以处理每天负担多达 100,00 次点击率的 Web 站点,并且 SQLite 有时候可以处理 10 倍于上述数字的负载。
2. SQLite功能
SQLite 对 SQL92 标准的支持包括索引、限制、触发和查看。SQLite 不支持外键限制,但支持原子的、一致的、独立和持久 (ACID) 的事务。这意味着事务是原子的,因为它们要么完全执行,要么根本不执行。事务也是一致的,因为在不一致的状态中,该数据库从未被保留。事务还是独立的,所以,如果在同一时间在同一数据库上有两个执行操作的事务,那么这两个事务是互不干扰的。而且事务是持久性的,所以,该数据库能够在崩溃和断电时幸免于难,不会丢失数据或损坏。SQLite 通过数据库级上的独占性和共享锁定来实现独立事务处理。这意味着当多个进程和线程可以在同一时间从同一数据库读取数据,但只有一个可以写入数据。在某个进程或线程向数据库执行写入操作之前,必须获得独占锁定。在发出独占锁定后,其他的读或写操作将不会再发生。
SQLite 网站上记录了完整的 SQLite locking semantics。
3. SQLite内部结构
在内部,SQLite 由以下几个组件组成:SQL 编译器、内核、后端以及附件。SQLite 通过利用虚拟机和虚拟数据库引擎(VDBE),使调试、修改和扩展 SQLite 的内核变得更加方便。所有 SQL 语句都被编译成易读的、可以在 SQLite 虚拟机中执行的程序集。图2-5描述了SQLite的内部结构:
                       图 2-5  SQLite 的内部结构图

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]  ... 下一页  >> 

基于zigbee的无线电子点菜系统 第3页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。