学位论文 > 优秀研究生学位论文题录展示

Linux桌面环境中GUI辅助管理工具的设计与实现

作 者: 卢春雷
导 师: 张家晨
学 校: 吉林大学
专 业: 软件工程
关键词: Linux GTK+ Python PyGTK D-Bus GNOME电源管理器 PoticyKit 辅助管理工具
分类号: TP391.41
类 型: 硕士论文
年 份: 2011年
下 载: 38次
引 用: 0次
阅 读: 论文下载
 

内容摘要


随着国内计算机应用的快速普及和信息化水平的提高,计算机的安全性也越来越受到社会各界的广泛关注。GNU/Linux作为服务器领域广泛采用的操作系统,有着高度的稳定性和安全性。同时作为一类重量级的开源应用,为广大企业节省了大量的成本,也为技术人员提供了良好的研究和试验平台。然而,在桌面领域,GNU/Linux系统的使用量却始终保持在一个较低的使用比例。之所以出现这种情况,除了缺乏足够数量和影响力的厂商的支持和大力推广以外,其本身设计的初衷所形成的过分注重于使用shell与内核进行交互、缺乏对普通用户体验的重视、图形化界面的应用软件开发过于缓慢以及能够满足本地化需求的应用程序缺乏等等,都是其在国内无法获得大众青睐的重要原因。在这种情况下,虽然在该平台上有许多GUI技术可以用来开发图形化界面的应用程序,但是由于语言隔阂,许多新的技术在产生的最初几年时间内无法在国内得到广泛的研究和使用,这为采用更好的技术开发本地化应用带来了不便。出于对Linux桌面环境中一些功能的需求,本文在Linux桌面环境中对GUI应用程序的技术作了广泛的研究,从Linux GUI实现的基础“X Window System"的运行机制开始,对GNOME桌面环境下广泛使用的GTK+技术作了一些探究,并结合其图形化界面的设计工具Glade UI Designer,以及正在被越来越多的程序开发人员所使用的Python语言,对基于图形化界面的系统辅助管理工具进行开发,设计了一个定时器的模块,用来帮助普通用户在设定时间之后实现对系统关机之类的操作;设计了一个系统助手模块,把一些基本的系统信息集成到一起,便于用户查看,此外,该模块还包含了一个清理多余软件包的功能。在上述工具的设计和实现过程中,采用了组织结构图、流程图、用例图、CRC cards来帮助完成对该辅助管理工具的功能方面的理解。同时为了使用户尽量避开对shell终端的操作,满足程序友好性的要求,采用了近几年广泛使用的D-Bus进程间通信机制来完成对定时器模块功能的实现。在对系统信息这部分功能的实现方面,使用了shell中的部分命令和Python中与系统管理相关的模块,以实现对系统信息的检索、过滤以及对shell命令的执行等。在软件包清理部分,为了方便地获得系统对这个特权操作的允许,采用了PolicyKit这种与类UNIX系统兼容的权限管理工具。由于该功能的实现也需要借助于D-Bus机制,因此就一些配置文件的建立、daemon的编写和调用端的实现进行了一些有意义的研究。对该程序在实现方面的不足来看,有以下几点需要在今后进行完善和改进:首先,定时器模块可以独立出来作为一个单独的应用程序,对该程序内部做出细节上的改进,并添加系统托盘等功能,并且使之在不同Linux发行版具有较好的移植性。其次,系统助手方面应该将功能进一步完善,添加对GNOME桌面环境的配置,如对gconf-editor所实现的功能进行集中和整合,使系统中一些不易为用户所察觉的设置能够直观地、集中式地得到表达;添加对网络方面的设置,使之能够更加方便的实现对MAC、IP等信息的修改;增加对一些常用软件包的安装。就目前已实现的功能来说,经过测试,运行良好,能够满足其设计要求。

全文目录


摘要  4-6
Abstract  6-10
第1章 绪论  10-13
  1.1 Linux桌面系统的使用现状  10-11
  1.2 开发Linux GUI系统辅助管理工具的必要性  11
  1.3 Linux GUI辅助管理工具的设计目标  11-12
  1.4 本文的章节设置  12-13
第2章 Linux GUI基础及相关技术  13-24
  2.1 X窗口系统  13-15
    2.1.1 运行机制  13-14
    2.1.2 X窗口管理器  14-15
  2.2 GTK+  15-17
    2.2.1 GTK+的用途  16
    2.2.2 GTK+中的函数库  16-17
    2.2.3 GTK+界面设计工具Glade UI Desi gner  17
  2.3 Python  17-19
    2.3.1 Python的特点  18
    2.3.2 Python的优势  18-19
    2.3.3 Python对GTK+的封装"PyGTK"  19
  2.4 Ecl ipse中PyGTK开发环境的搭建  19-24
第3章 Linux GUI辅助管理工具的功能及设计  24-36
  3.1 辅助管理工具的功能  24-25
    3.1.1 定时器模块  24
    3.1.2 系统助手模块  24-25
  3.2 辅助管理工具的设计  25-30
    3.2.1 定时器模块的流程图、类图与CRC card  25-28
    3.2.2 系统助手模块的类图  28-30
  3.3 Python模块与Linux Shell  30-31
    3.3.1 Python模块  30-31
    3.3.2 Linux Shell  31
  3.4 D-Bus与PolicyKit  31-36
    3.4.1 D-Bus  31-34
    3.4.2 PolicyKit  34-36
第4章 Linux GUI辅助管理工具的实现  36-47
  4.1 程序界面的构建  36-37
  4.2 定时器模块的实现  37-40
    4.2.1 控件的引入及设置  37-38
    4.2.2 时间的获取及计算  38
    4.2.3 D-Bus与GNOME电源管理  38-39
    4.2.4 函数之间的调用关系  39-40
  4.3 系统助手模块的实现  40-43
    4.3.1 配置文件的建立  40-41
    4.3.2 守护进程类的实现  41-42
    4.3.3 调用端类的编写与连接  42-43
  4.4 辅助管理工具的运行演示  43-47
    4.4.1 主程序  43-44
    4.4.2 定时器模块  44-45
    4.4.3 系统助手模块  45-47
第5章 总结与展望  47-49
  5.1 总结  47
  5.2 展望  47-49
参考文献  49-51
致谢  51

相似论文

  1. 基于ARM的TFT-LCD面板检测设备软件的研究,TN873.93
  2. 网位仪信号采集与处理平台的设计与实现,S951.2
  3. 基于TCP/IP协议的嵌入式图像传输系统接收终端的设计,TP368.1
  4. 基于嵌入式系统钻孔成像装置的研究,P634.3
  5. IP网络QoS技术研究,TP393.09
  6. 基于嵌入式Web技术的动态应变仪研究与实现,TP368.1
  7. 嵌入式多参数环境智能监测系统的设计与实现,TP274
  8. 数字型智能终端系统门口机的设计,TP368.1
  9. 基于嵌入式系统的水厂加氯智能控制系统,TU991.2
  10. 基于ARM的智能车载终端的设计,TP368.1
  11. 多功能火灾报警楼层显示器的设计与实现,TN873
  12. 基于Qt/E的嵌入式膜片钳系统设计,TP368.1
  13. 面向家庭的远程健康监护系统的设计与研究,TP311.52
  14. 一种改进型双光束分光光度计的设计,TH744.12
  15. 基于ARM和Linux的嵌入式汽车虚拟仪表系统的研究,U463.7
  16. 基于ARM9的焊接热循环手持设备的设计,TN305
  17. 基于PCI总线的双片SoC协作机制设计与实现,TN47
  18. 基于M-Bus的数据采集与传输系统,TP274.2
  19. 基于智能家居系统的音视频通信方案的研究与实现,TN919.8
  20. 一种基于嵌入式Linux的人体平衡监测系统的设计,TP274
  21. 基于DM6467的视频服务器设计与实现,TP393.05

中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机的应用 > 信息处理(信息加工) > 模式识别与装置 > 图像识别及其装置
© 2012 www.xueweilunwen.com