统信UOS应用开发详解

978-7-115-59734-2
作者: 统信软件技术有限公司
译者:
编辑: 赵祥妮

图书目录:

详情

本书是统信 UOS 应用开发指南,包括 5 篇,共 16 章。背景知识篇介绍操作系统简史以及国产操作系统;应用开发篇是本书的核心,包括开发设计原则、开发环境与开发工具、Qt 开发框架、DTK 开发框架、DTK 插件开发、服务开发、调试与性能优化;发布与部署篇介绍包格式、上架部署;桌面应用开发实战篇介绍 6 个难度从初级、中级到高级的经典应用案例,以及系统接口案例;常见问题篇介绍内核与驱动、开发工具相关、常用资源,帮助读者进一步提升开发水平。 本书内容全面,理论与实践相结合,语言表达清晰、简洁,有利于读者参考学习。 本书适合统信 UOS 的开发人员阅读,有助于其全面掌握开发内容;也适合有志于参与统信生态构建的信创厂商、应用开发者阅读参考。

图书摘要

版权信息

书名:统信UOS应用开发详解

ISBN:978-7-115-59734-2

本书由人民邮电出版社发行数字版。版权所有,侵权必究。

您购买的人民邮电出版社电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。

我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。

如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。

版  权

著    统信软件技术有限公司

责任编辑 赵祥妮 俞 彬

人民邮电出版社出版发行  北京市丰台区成寿寺路11号

邮编 100164  电子邮件 315@ptpress.com.cn

网址 http://www.ptpress.com.cn

读者服务热线:(010)81055410

反盗版热线:(010)81055315

编委会

本书是统信UOS应用开发指南,包括5篇,共16章。背景知识篇介绍操作系统简史以及国产操作系统;应用开发篇是本书的核心,包括开发设计原则、开发环境与开发工具、Qt开发框架、DTK开发框架、DTK插件开发、服务开发、调试与性能优化;发布与部署篇介绍包格式、上架部署;桌面应用开发实战篇介绍6个难度从初级、中级到高级的经典应用案例,以及系统接口案例;常见问题篇介绍内核与驱动、开发工具相关、常用资源,帮助读者进一步提升开发水平。

本书内容全面,理论与实践相结合,语言表达清晰、简洁,有利于读者参考学习。

本书适合统信UOS的开发人员阅读,有助于其全面掌握开发内容;也适合有志于参与统信生态构建的信创厂商、应用开发者阅读参考。

《统信UOS应用开发详解》编委会

主编:

  刘闻欢

主编:

  张 磊 王耀华 秦 冰

参编人员(按姓氏音序排列)

  蔡同勋 陈 丹 陈 俊 陈 可 范朋程 方丽丽 高 冲 郭 辉

  韩亚飞 何鲁港 胡 峰 黄碧波 黄文兵 黄文辉 焦芬芳 赖洪圣

  李 鹤 李 琳 李 望 卢亚宁 吕培龙 马爱国 石 培 史维星

  宋文泰 孙建民 谭 峰 王少君 吴荣杰 闫博文 杨建民 叶青龙

  余 佳 张海东 张 爽 张 松 张 宪 赵成义 郑幼戈

推荐序

承载应用、连接硬件的操作系统,无疑是支撑信息技术运行和发展的基石,向自主操作系统迁移逐渐成为信息技术行业的共识。

生态是操作系统产业的核心。操作系统生态建设任重而道远,整体上可分为3个阶段。第一个阶段是满足关键行业的日常办公应用需求。目前中国操作系统生态已经完全满足了这个需求。第二个阶段是满足不同行业的多场景应用需求。这需要丰富的业务型软件、专用软件和外设硬件的支持。这也是当前生态建设的难点之一,目前我们就处于这个阶段。第三个阶段是进入广阔的消费者市场,真正满足普通用户的应用需求。统信软件技术有限公司(简称统信软件)正在向着这个方向努力。

在构建操作系统生态的道路上,我们需要“填坑补课”,填补生态建设中还没有做的特别好的方面,给开发者提供更强的生态吸引力。自成立以来,统信软件一直以“打造操作系统创新生态”为自己的使命。但也不得不承认有关统信UOS的应用开发技术资料相对匮乏,开发者在刚开始面对统信UOS时难免感觉无从下手。

应用开发人才是操作系统生态建设中必不可少的一环,人才培养的重要性不言而喻。因此,统信软件汇集众多一线开发人员的技术储备、心得体会,推出了这本《统信UOS应用开发详解》。本书具有以下特点。

1.从开发者角度来组织本书的内容。本书的内容源自统信UOS一线开发人员的多年积累,面向开发者,按照应用开发的流程进行组织,并整理了在开发过程中可能会遇到的内核与驱动问题、常用开发工具与常用资源。

2.详细解读开发工具DTK。DTK是统信软件基于Qt开发的一整套简单且实用的通用开发框架,提供了丰富的开发接口与支持工具,可满足日常图形应用、业务应用、系统定制应用的开发需求,提升开发效率,让开发者畅享跨平台、跨架构的开发体验。本书内容涵盖在开发过程中常用的DTK程序框架、图形控件、常用组件和设置界面,以及多种DTK插件的开发。

3.理论与实践相结合,提供可学习、可参考的典型开发案例。书里介绍了6个典型的开发案例,包括简易文本编辑器、计算器、相册、邮箱客户端、影院、音乐播放器,还介绍了设备访问、托盘图标等系统接口案例。这些案例来自真实运行在统信UOS上的应用,对开发者更有借鉴价值。

4.不仅注重讲解应用开发知识点,而且注重开发者全流程的技能培养。想要从零到一完成应用开发,除核心的Qt和DTK开发知识外,开发者还需要理解开发设计原则,能配置开发环境、选择合适的开发工具,会进行调试与性能调优,完成软件的打包、上架和部署。这个完整应用开发流程的各个环节在本书中都有介绍,读者可根据需要选择性阅读。

通过阅读本书,读者可对操作系统上的应用开发流程建立起清晰的认识,掌握在统信UOS上进行应用开发的必备知识与常用工具,动手实操应用的开发。对于有志于参与统信UOS操作系统生态构建的每一位开发者,无论是已经有经验的,还是刚接触应用开发的,或是刚接触统信UOS的,都希望本书能在大家的学习与开发道路上提供可参考的学习路线、较为明确的指导。

随着生态的日益完善,我国自己的操作系统产品将从关键领域走向千行百业和千家万户。我们也期待着与广大读者、用户、开发者、上下游厂商携手并肩,共同努力,加快这一天的到来。

石丰

统信软件技术有限公司 服务中心总经理

2022年10月

- 第1篇 背景知识 -

第1章 操作系统简史

操作系统用于管理计算机硬件、软件资源,并提供通用服务,是直接运行在计算机硬件上的基本系统软件。其他软件都必须在操作系统的支持下才能运行。操作系统可划分为批处理操作系统、分时操作系统等类型。实际上,发展到现在,分时操作系统、实时操作系统、个人操作系统、网络操作系统、分布式操作系统在不同的场景下都被广泛使用。本章将对操作系统的发展历史进行简要介绍。

1.1 人工时代

在电子管计算机时代,计算机是没有系统软件的,只能在少数领域中得到运用,人们用机器语言编程。编写的程序是用纸带(或卡片)来表示的。用户先把纸带装到计算机上,然后启动输入机把程序和数据送入计算机,接着通过计算机控制台开关启动程序运行,计算完毕,输出机输出计算结果,用户卸下并取走纸带,如图1-1所示。

图1-1 人工时代的计算机使用流程

可以看出,这种方式效率很低,CPU有效运行时间极短,因为要等待大量的人工操作完成。而且用户独占机器,程序运行过程中计算机无法和程序员进行交互。为解决上述问题,人们开始研制不同的操作系统来适应计算机的发展。

1.2 批处理操作系统

批处理操作系统是加载在计算机上的一个系统软件,在它的控制下,计算机能够自动、成批地处理一个或多个用户的作业(包括程序、数据和命令)。

1.2.1 联机批处理操作系统

首先出现的是联机批处理操作系统,即作业的输入输出(Input/Output,I/O)由CPU来处理。批处理是指用户将批量作业流提交给操作系统后就不再干预,由操作系统控制它们自动运行,如图1-2所示。这种采用批处理作业技术的操作系统称为批处理操作系统。批处理操作系统分为单道批处理操作系统和多道批处理操作系统。批处理操作系统不具有交互性,它是人们为了提高CPU的利用率而设计出的一种操作系统。

图1-2 联机批处理操作系统

1.2.2 脱机批处理操作系统

脱机批处理操作系统是人们为了缓解人机矛盾、主机与外围设备(简称外设)的矛盾,以及提高CPU利用率而设计出的操作系统。这种操作系统的显著特征是:增加一台不与主机直接相连而专门用于与I/O打交道的卫星机,如图1-3所示。

图1-3 脱机批处理操作系统

卫星机的功能是:从输入机读取用户作业并放到输入磁带上,从输出磁带读取执行结果并传给输出机。这样,主机不直接与慢速的I/O打交道,而是与速度相对较快的磁带联系,可有效缓解主机与外设的矛盾。主机与卫星机可并行工作,二者分工明确,也可以充分发挥主机的高速计算能力。脱机批处理操作系统在20世纪60年代应用十分广泛,它极大地缓解了人机矛盾及主机与外设的矛盾,是现代操作系统的原型。1964年,IBM(International Business Machines,国际商业机器)公司发布了System/360(S/360)系统,对应的主机操作系统为OS/360。OS/360支持多道程序,最多可同时运行15道程序。为了便于管理,OS/360把CPU存储器划分为多个(最多15个)分区,每个程序在一个分区中运行。

1.3 分时操作系统

分时操作系统使得一台计算机可采用时间片轮转的方式,同时为几个、几十个甚至几百个终端用户服务。分时操作系统把计算机与许多终端用户连接起来,将系统处理机时间与内存空间按一定的时间间隔划分为时间片,轮流地切换给各终端用户的程序使用。由于时间间隔很短,每个终端用户会感觉自己独占了计算机。分时操作系统的特点是可有效提高资源的使用率。例如UNIX操作系统就采用剥夺式动态优先的CPU调度,有力地支持分时操作。典型的分时操作系统例子是UNIX和Linux操作系统。其可以同时连接多个终端并且每隔一段时间重新扫描进程、重新分配进程的优先级,还可动态分配系统资源。

1.3.1 UNIX操作系统的诞生

计算机操作系统的鼻祖是Multics(Multiplexed Information and Computing System,多路信息和计算系统)操作系统,以下简称M系统。M系统是1964年美国贝尔实验室、麻省理工学院及通用电气公司共同研发的,最初的目的是开发出一套安装在大型主机上多人多工的操作系统。因为当时的计算机一次只能接受一个任务,多人的任务需要排队执行。后来,原M系统设计成员肯尼思·汤普森(Kenneth Thompson)想把一款名为《太空旅游》的游戏移植到他们实验室的一台机器上而开发了一套软件。该套软件参考M系统的思路设计,但是功能单一,实验室的人戏称此软件为UNICS(UNiplexed Information and Computing System,单路信息和计算系统)。由于当时的UNICS每次移植到一个新的机器上时,都需要重复在机器上处理,且需针对不同的机器设备进行额外的编程处理,就是驱动都要程序员写、程序员配,因此那个时候系统的传播受限于硬件和使用者的能力,只能供极少部分人使用。

1971年,肯尼思·汤普森 和丹尼斯·里奇(Dennis Ritchie)为了使当时的UNICS具有更好的移植性、适用于不同的硬件设施,创造了C语言。他们于1973年,用C语言重新改写并编译UNICS的核心,将其正式命名为UNIX,形成了UNIX的初代版本。该版本由于使用了高级语言——C语言,减轻了对底层硬件依赖的问题,从而可以广泛地在各种机器上使用。初代的UNIX采用了200多条程序命令,虽然内核很小,但是功能极为精简、强悍。当时原本需要用100~1000行代码才能实现的程序,在UNIX中使用不超过10条命令就可实现。它极高的效率使它在美国AT&T公司内得以快速传播。可以设想一下,本来要一天才能做完的工作,用当时的UNIX几分钟就能搞定,这种“神器”能不快速传播吗?

计算机软件的发展历程是一个持续优化、提升效率的过程。UNICS的发明是为了将复杂的任务简单化。为了简化软件和硬件的关联处理而重新创建的一种新语言(C语言),也帮助我们实现了软件和硬件的分离,为现代操作系统(UNIX)的发展打下了坚实的基础。需要指出的是,当时的UNIX属于AT&T公司的贝尔实验室,但该公司和学术界院校(美国加利福尼亚大学伯克利分校)合作开发,使得UNIX在各大高校快速传播。1977年,加利福尼亚大学伯克利分校的比尔·乔伊(Bill Joy)在取得了UNIX的核心源码后,着手将其修改成适合自己机器的版本,同时增加了很多功能软件与编译工具,最终将它命名为BSD(Berkeley Software Distribution,伯克利软件套件)。BSD是UNIX很重要的一个分支,苹果公司(后简称苹果)的操作系统实际源自此分支。1979年,AT&T公司出于商业方面的考量,将UNIX的版权收回。因此,AT&T公司在1979年发行的第7版UNIX中,特别提到了 “不可对学生提供源码”的严格限制。这导致后来学术界自力更生,安德鲁·塔嫩鲍姆(Andrew Tanenbaum)教授参照UNIX的功能,写出了Minix系统,用于教授操作系统的相关教程。该系统在1986年完成开发并发布,相关图书也于次年出版。这是后来大名鼎鼎的林纳斯·托瓦兹(Linus Torvalds)得以构建Linux初代系统的基础。

1.3.2 可视化操作系统的演进

在1984年以前,几乎所有的操作系统都是基于企业或高校科研机构的大型机来设计和使用的,还没有达到普通人能用的地步。当时,大部分的计算机操作系统是基于命令行终端的,没有图形化的操作界面。这样的操作系统只能被极少部分的高级专业人员和学术界的师生使用。但到了1984年,一切都发生了变化。这时,操作系统的发展发生了哪些变化呢?具体如下。

VisiCorp公司的第一款可视化操作系统Visi On发布。

苹果的第一款可视化操作系统macOS 1.0发布。

微软公司(后简称微软)推出Windows 1.0(1985年)。

日本NEC公司(日本电气股份有限公司)基于ITRON/86规范,第一个实现了ITRON操作系统。

几乎是不约而同的,世界上几个重要的操作系统厂商都在同一时间段内发布了操作系统的商用版本,且都具有图形化界面。而这4个操作系统经过近40年的演进,几乎影响了我们现代生活的方方面面。苹果的macOS实际来源于UNIX(FreeBSD版本),是UNIX阵营向普通消费者市场进军的主力,图形化的界面和应用降低了系统和计算机的使用门槛。

微软之前一直使用MS-DOS命令行的系统,在看到苹果的可视化界面后,紧接着开发出Windows系统,以抢占普通消费者市场,由此开启了苹果和微软两大公司30多年的激烈竞争。

1.3.3 开源Linux的诞生与演进

从20世纪80年代中后期开始,大量基于可视化操作界面的操作系统问世后,操作系统真正普及开来。不过,可视化操作系统是直接装在机器上的,它在降低了用户使用门槛的同时,也封闭了内在复杂的软件设计。普通的学院派老师、学生难以看到其被隐藏的具体设计。由此,开源的操作系统Linux出现了。

1991年,在芬兰赫尔辛基上大学的林纳斯·托瓦兹参照UNIX和Minix,重写了一个初始的Linux系统,并于1991年10月5日发布了0.01版。1993年,100余名程序员参与了Linux内核代码的编写、修改工作,其中核心组由5人组成,此时Linux 0.99的代码大约有10万行,用户数大约有10万。由于全世界Linux爱好者、使用者的参与,发展到Linux 4.9.2时,Linux内核源码就超过了1800万行。2019年,Linux新版内核发布,该内核有大约2500万行代码。有别于UNIX的闭源(代码不可获得),Linux系统遵循开源协议,意味着任何人都可以获取和编辑代码,Linux也因此获得了极大的关注和应用推广。

第2章 国产操作系统

对计算机而言,操作系统是其最基本也是最重要的基础性系统软件之一。本章分析国产操作系统的必要性,并对国产操作系统统信UOS进行了简要介绍。

2.1 国产操作系统的必要性

为什么要发展国产操作系统?我们不妨从一系列事件谈起。

2013年,美国的“棱镜”计划被曝光,国际舆论一片哗然。这项计划从2007年就已经开始,从欧洲到拉丁美洲,从传统盟友到合作伙伴,从国家元首通话到日常会议记录,美国惊人规模的海外监听计划令世人震惊。

2017年5月12日,WannaCry蠕虫病毒通过MS17-010漏洞在全球范围内大爆发,感染了大量的计算机。该蠕虫病毒感染计算机后会向计算机中植入敲诈者病毒,导致计算机大量文件被加密。受害者计算机被黑客锁定后,会提示需支付价值相当于300美元(约合人民币2157元)的比特币才可解锁。WannaCry主要利用了微软“视窗”系统的漏洞,以获得自动传播的能力,能够在数小时内感染一个系统内的全部计算机。

2017年11月,Intel公司(英特尔公司,后简称Intel)被曝出ME事件,证实了Intel的处理器内部存在一套完全独立的系统,它由一个或多个核以及内存、时钟、总线、用于加密引擎的保留内存组成,甚至拥有独立的操作系统以及应用,可读取主系统的内存,可以通过网络控制器联网。这套系统可以在计算机休眠甚至关机的状态下运行。只要Intel想,ME可以在用户不知道的情况下将用户的计算机完全控制。它可以控制计算机开机、关机,读取所有开放文件,检查所有已运行的程序,追踪用户的键盘、鼠标动作,甚至能截屏。全球数亿个处理器背后的每个用户都被监控着。如果处理器被国家安全相关部门使用,或被应用在军事上,那就更加危险,因为机密有可能被他人窃取,或是关键设备被他人控制。

2018年4月17日,美国商务部宣布,禁止美国公司向中兴通讯股份有限公司销售零部件、商品、软件和技术7年,直到2025年3月13日。

上述事件总结起来说明两个问题:一是CPU或者操作系统受制于人,便没有自主权;二是信息安全没有办法保证,在国家安全上就没有办法建立最后的防火墙。CPU、操作系统都来自他人之手,网络安全更无从谈起。

如果我们没有自己的操作系统,桌面操作系统只能被微软等垄断,嵌入式操作系统基本也是国外产品“一统天下”,这会成为政府、金融、国防信息系统的安全隐患。电子政务系统方面尤其需注意,电子政务系统是供政府和公民使用的信息交流平台,其中既有公用的信息,又有需要严格保密的非公开信息。开放性、虚拟性、网络化,这些特点决定了电子政务系统对安全性有非常严格的要求,而没有一个拥有完全自主知识产权的操作系统,要想保证电子政务系统的安全几乎是不可能的。此外像Windows这样的操作系统中存在着很多的漏洞和陷门,不断引起世界性的“冲击波”和“震荡波”等安全事件,这也给我们敲响了警钟。

近几年,Linux的发展为我们发展自己的操作系统提供了良好的机遇。Linux是一个源码开放的“自由软件”,任何人都可以利用这些源码进行二次开发。这样我们就可以基于Linux内核去解决安全问题。这样的操作系统才能放心使用。统信UOS就是在这样的背景下孕育出来的,已发展为国内乃至国际上知名的操作系统。

2.2 国产操作系统统信UOS

统信UOS是由统信软件技术有限公司(后简称统信软件)开发的一款基于Linux内核的操作系统,支持龙芯、飞腾、兆芯、海光、鲲鹏等芯片平台的笔记本计算机、台式计算机、一体机、工作站以及服务器。统信UOS的第一个版本在2020年1月发布。统信UOS虽然很年轻,但它实际上有着很深的技术底蕴。统信UOS由深度操作系统发展而来。所以从某个角度来说,统信UOS的发展史实际上就是深度操作系统的发展史。

Deepin,原名Linux Deepin,其致力于为全球用户提供美观易用、安全可靠的Linux发行版,中文名为深度操作系统。Linux Deepin的前身是Hiweed Linux项目,Hiweed Linux项目曾经短暂地暂停开发,在重启Hiweed Linux项目的时候,Hiweed Linux更名为Linux Deepin,并且成为深度社区下的一个子模块,后来不断发展,从深度社区中独立出来,成为今天的项目。深度操作系统中基于Qt技术开发了深度桌面环境和深度控制中心,并且开发了一系列面向日常使用的深度特色应用,如深度商店、深度截图、深度音乐、深度影院等。深度操作系统非常注重易用的用户体验和美观的设计。对于大多数用户来说,它易于安装和使用,能够很好地代替Windows系统进行工作与娱乐。统信UOS研发历程简介如下。

2004年,其前身Hiweed Linux是中国第一个基于Debian的本地化版本,同时出现了社区研发团队。

2008年,正式更名为Linux Deepin,深度操作系统第一个版本发布。

2011年,武汉深之度科技有限公司(简称深度科技)成立,并组建了专职研发团队对其进行支持。

2012年,进入全球发行版排行榜前100名,获得第七届中日韩开源软件竞赛的“技术优胜奖”。

2013年,进入全球发行版排行榜前50名,对外提供商业服务。

2014年,更名为Deepin,进入全球发行版排行榜前20名,北京运营中心成立,通过软件企业认定与ISO 9001认证,与多家上下游国产软件厂商达成战略合作,多项作品获得软件著作权认证,获得中国开源软件推进联盟“2014年度开源优秀项目奖”,获得数千万规模的战略投资,建立起国内唯一拥有员工过百人的专注于桌面Linux发行版的团队。

2015年,通过中华人民共和国工业和信息化部(简称工信部)国产操作系统适配测试,研发上线中国第一台基于国产操作系统的ATM设备,加入Linux基金会,获得第十九届中国国际软件博览会“创新奖”,获得2015年中国信息安全大会“国产化迁移最佳解决方案奖”和“自主可控操作系统最佳产品奖”,建立华东、华南、东北、西北分支机构。

2016年,和网易云音乐联合正式发布国内第一个支持Linux平台的在线音乐应用,公司获得CMMI3认证证书。

2017年,加入工信部安全可靠技术和产业联盟,进入全球发行版排行榜前10名。

2019年,统信软件技术有限公司成立。

2020年,统信UOS 1010发布。

目前,国内已经出现非常活跃的国产操作系统社区,深度操作系统累计下载达5000多万次,有40种不同语言的版本,用户遍及全球40多个国家和地区,是全球开源操作系统排行榜上排名最高的中国操作系统产品。以深度操作系统为基础,国内领先的操作系统厂家于2019年联合成立了统信软件。统信软件是以“打造操作系统创新生态”为使命的中国基础软件公司。统信软件成立后,依靠强大的开发团队,陆续推出1010、1030、1040和1050版本。

统信UOS基于深度操作系统,在深度操作系统的桌面开发环境的基础上,进行了多生态的适配和开发。对于统信UOS来说,DDE(Deepin Desktop Environment,深度桌面环境)是整个系统的根基,能通过其华丽的桌面效果和较好的用户体验吸引广大的社区用户使用。

2.2.1 DDE

统信UOS桌面操作系统架构如图2-1所示。DDE在内核和X Server之上有一系列的程序,用户登录后就可以流畅地使用桌面、任务栏、开始菜单、文件操作和系统设置。DDE符合中国人的使用习惯,很多地方的交互设计细节要比其他桌面环境做得更加精致和简洁,主要面向开箱即用的非技术型用户。

图2-1 统信UOS桌面操作系统架构

统信UOS桌面操作系统从技术剖面(如图2-1所示)看,从下到上主要分为以下几层。

内核驱动:主要保障硬件的基本功能和兼容性,Linux发行版的内核驱动层大同小异,区别在于内核补丁集不一样,或者集成的驱动和固件数量不同。

显示服务:从内核引导到plymouth(俗称“开机动画”)后,如果见到登录并输入密码的界面,则说明X Server已经运行。简单地理解,X Server就是Linux系统中掌握着绘制图形界面权力的“天神”,大多数程序绘制图形都和X Server有关联。同时X Server也是事件输入(比如键盘、鼠标输入)输出(比如显示器输出)的抽象层,开发者可以不考虑底层驱动和显卡驱动细节,直接使用X11/XCB的API(Application Program Interface,应用程序接口)进行应用开发,只不过很多开发者使用GTK+/Qt等在X11/XCB更上层的API上进行应用开发。

显示管理:简单地理解就是登录界面提示用户输入密码的地方。

资源管理:由一系列的底层守护程序来监控硬件的状态,并汇报给上层的桌面环境和应用进行进一步操作,常见的资源管理器包括网络、音频、磁盘管理等。

桌面环境:主要包括桌面环境服务和后台守护进程的DDE服务,对外提供图形开发工具包(DTK)、二进制接口、D-Bus API的DDE API,和DDE UI(User Interface,用户界面)几个部分。

应用:主要包括统信软件开发的系列应用,即合作开发的国内应用、Android应用、Windows应用和网页应用。应用商店主要提供系统的软件安装、卸载、升级等服务,保证用户可以安全、方便地进行软件管理,同时提供商店的评论和评分等功能。

简单来说,桌面操作系统的设计和实现就是对所有底层抽象的硬件、库和各种各样的状态进行管理,最后通过界面的方式和合理的交互设计与用户进行交互,让用户可以自然、流畅地使用各种应用完成自己的工作。在统信UOS桌面环境的后台守护进程基础之上,桌面环境会对外提供API层,包括图形开发工具包、二进制接口和D-Bus API,供桌面环境和应用直接调用,而不需要用户自己重新开发,其中D-Bus API通过D-Bus在应用中调用特定的接口时动态唤醒(默认不常驻内存)。任何语言编写的应用用户都可以轻松调用。

2.2.2 统信UOS生态环境

操作系统的生态建设成果可体现为应用商店中丰富的应用。应用商店实际上是统信UOS的应用管理工具。在这里,用户可以搜索想要使用的应用,这些应用都是经过统信UOS适配中心验证过的,用户可以一键安装使用,不需要自己编译、安装,所有应用都默认打包好放到应用仓库中。用户也不需要考虑依赖的问题,装完即用。除了支持统信软件自己开发的应用和第三方认证的应用,应用商店还支持50多款Windows应用,通过内置的Android runtime支持200多款Android应用,通过统信软件和Intel合作开发的deepin-xwalk直接支持HTMl5应用。应用商店为统信UOS生态的入口。随着统信UOS的普及、壮大,越来越多的应用将会加入统信UOS生态中。

相关图书

操作系统抢分攻略 真题分类分级详解
操作系统抢分攻略 真题分类分级详解
统信UOS操作系统使用教程 (第2版)
统信UOS操作系统使用教程 (第2版)
统信UOS应用开发实战教程
统信UOS应用开发实战教程
统信UOS应用开发进阶教程
统信UOS应用开发进阶教程
龙芯应用开发标准教程
龙芯应用开发标准教程
FreeBSD操作系统设计与实现(第2版)英文版
FreeBSD操作系统设计与实现(第2版)英文版

相关文章

相关课程