Merge branch 'dingbo' into 'master'

Minor changes to CH3&CH10

修改了 Ch1-3-SystemSoftware.tex、Ch2-5-OperatingSystem.tex、fig2-5/cnt.png三个文件


See merge request !32
This commit is contained in:
HaoDan 2019-12-11 11:22:45 +08:00
commit 9d66b1bd82
3 changed files with 7 additions and 5 deletions

View File

@ -71,7 +71,7 @@
\end{enumerate}
\subsection{移动操作系统}
\subsection{智能终端操作系统}
进入21世纪新型计算模式不断出现计算技术表现出向两极发展的趋势一方面以“云”为核心强调通过资源集约化和按需服务方式推动信息技术实现社会化和专业化另一方面以“端”为核心强调信息技术的普适化使得计算服务如同水、电、空气一样随时随地可以获取而又不可见。需要指出的是“云”和“端”二者并非割裂的而是优势互补正在通过“云+端”等形式共同推动着计算技术的新一轮革命。
当前“云”上的系统软件形态主要以“平台即服务”基础设施等形式出现它们运行于经典操作系统如Linux之上可被视为中间件技术的发展参见\ref{internet-middleware}节)。“端”操作系统的代表则是已经广泛商用的移动操作系统\index{移动操作系统}典型实例包括Google的Android和Apple的iOS。此类操作系统在架构上与个人计算机操作系统并无本质区别但更强调对移动和手持环境的支持包括移动网络接入、各类传感器数据获取、电池管理、触摸屏交互等。与个人计算时代类似操作系统在移动计算软硬件生态链中同样具有核心基础地位特别是操作系统内置应用商店的出现在降低用户查找、获取和安装应用程序难度的同时也形成了较完善的商业模型极大推动了以操作系统为核心的软件生态链的成长。移动操作系统当前还表现出了与桌面系统一体化的发展趋势通过统一桌面和移动操作系统及其生态将有利于操作系统更好地发展与维护。例如谷歌继移动操作系统Android和轻量级桌面操作系统ChromeOS之后正在研制跨平台的Fuchsia操作系统。

View File

@ -57,7 +57,9 @@
因此,在开放的网络化环境下,更为妥当的资源管理和应用协同方式将是 “连接协调”,即通过按需聚合和动态协同来打破不同节点之间的壁垒,统一管理并优化利用计算、数据甚至物理世界各种资源,支持应用实体的分布式自主协同。换言之,操作系统将成为通过软件定义管理复杂计算系统的“元”级系统,面向单个计算机系统的“控制”功能则逐渐转移到面向多个计算机系统“连接协调”功能。这将动摇现代操作系统构造和运行的很多基本假设。虽然相关理念在中间件领域和网构软件等范型中已有了初步实践,但一系列共性机理层面上的问题仍有待解决,包括需要何种模型来协调跨域资源及其能力、如何在动态环境下维持相对稳定的“功能可编程”抽象、如何支撑软件实体通过扁平化架构达成共识、如何有效管理调度各种冲突及涌现现象等。
在机理突破基础上,“连接协调”需要何种类型的基础设施支撑,是操作系统领域另一重要挑战。近年来,以区块链\index{区块链}为代表的分布式共识\index{分布式共识}技术,特别是区块链从应用系统向运行平台蜕变的发展历程(参见\ref{blockchain-history}为这一方面的实践提供了一个可借鉴案例——区块链可以在相对开放环境下通过扁平化架构和“连接协调”机制在多种类型大规模分布式系统中构建群体的共同认知。例如IBM的面向区块链的分布式操作系统Hyperledger Fabric\cite{Androulaki:2018:HFD:3190508.3190538}可以利用区块链来支撑分布式应用运行,并且通过模块化的共识协议灵活适应不同的应用场景和信任模型。但是,当前区块链的实际部署仍集中在金融、物流等少数领域,要使其能够为更多应用领域赋能,一系列问题仍有待解决,包括共识算法效率以及如何在效率和扩展性、安全性之间权衡、如何实现不同区块链之间的互操作、如何在形成共识同时保护隐私、如何在开放环境下实现有效监管等。更进一步,如何“来自区块链、超越区块链”,借鉴区块链思想,为未来大规模网络化系统共同认知、协同决策、行为实施等环节实现连接协调提供手段支撑,是操作系统和运行平台领域需要探索的方向。
在机理突破基础上,“连接协调”需要何种类型的基础设施支撑,是操作系统领域另一重要挑战。近年来,以区块链\index{区块链}为代表的分布式共识\index{分布式共识}技术,特别是区块链从应用系统向运行平台蜕变的发展历程(参见\ref{blockchain-history}为这一方面的实践提供了一个可借鉴案例——区块链可以在相对开放环境下通过扁平化架构和“连接协调”机制在多种类型大规模分布式系统中构建群体的共同认知。例如IBM的面向区块链的分布式操作系统Hyperledger Fabric\cite{Androulaki:2018:HFD:3190508.3190538}可以利用区块链来支撑分布式应用运行,并且通过模块化的共识协议灵活适应不同的应用场景和信任模型。但是,当前区块链的实际部署仍集中在金融、物流等少数领域,要使其能够为更多应用领域赋能,一系列问题仍有待解决,包括共识算法效率以及如何在效率和扩展性、安全性之间权衡、如何实现不同区块链之间的互操作、如何在形成共识同时保护隐私、如何在开放环境下实现有效监管等。
更进一步,区块链及其上软件系统作为新一代分布式软件体系结构的探路者,在扩展操作系统运行平台外延与内涵的同时,在未来极有可能成为系统软件和软件生态发展的催化剂,围绕群体共识、可信计算等问题,催生分布式软件一个新的独立分支。因此,如何“来自区块链、超越区块链”,借鉴区块链思想,为未来大规模网络化系统共同认知、协同决策、行为实施等环节实现连接协调提供手段支撑,是操作系统和运行平台领域需要探索的方向。
\subsection{复杂软件系统适应演化的共性支撑}\label{os-evolution}
近年来,以人机物融合系统为背景,有研究者提出了信息产业的“昆虫纲悖论”:一方面,未来物联网设备和应用场景将会像昆虫一样繁多,带来空前巨大的市场;另一方面,由于每种场景都存在其个性化需求和特点,针对场景所开发的软件系统将缺乏可拷贝性,导致边际成本显著提高,反过来制约产业的发展。要打破这一悖论,关键在于软件系统不能静态绑定到特定场景,而应当具备灵活适应场景的能力,在其生命周期内能够持续演化来应对环境和用户需求的变化。
@ -98,7 +100,7 @@
\subsection{软硬协同的安全攻防对抗技术}\label{os-research3}
如何结合处理器和硬件平台的特点设计新型安全高效的操作系统结构是未来操作系统技术的另一主要研究内容。当前基于CPU的可信计算空间隔离和基于TPM芯片的可信计算技术为可信软件执行提供了硬件级的执行验证这些技术都从操作系统底层提供了有力的可信执行支持。未来操作系统安全研究将发展软硬协同的操作系统安全攻防对抗模式变被动响应为主动防护夯实信息系统的安全基础。具体而言需要突破软硬件高效协同的安全体系结构设计、安全防护模型和方法、跨域交互机理及优化方法和基于模糊测试的内核安全性测试等关键技术结合硬件平台提供的多层次特权防护、资源分区隔离等安全能力解决软硬协同的高安全操作系统设计中的核心问题。
\subsection{面向分布应用的资源虚拟化技术}\label{os-research4}
\subsection{面向分布计算环境的资源虚拟化技术}\label{os-research4}
虚拟化技术不仅仅能够在单台计算机上实现资源的有效隔离更重要的是在分布计算环境下能够实现大量资源的细粒度管理为弹性可伸缩的资源聚合奠定基础这也是为什么云计算高度依赖虚拟化技术的原因。当前“函数即服务”FaaSFunction as a Service、边缘计算等新型分布计算应用模式正在涌现操作系统在资源 虚拟化方面需要突破一系列理论和实践问题。首先,虚拟化技术需要能够在支持多租户隔离的前提下实现高密度的资源虚拟化。以在边缘计算场景为例,与集中式云数据中心不同,可能需要在边缘的十几个服务器上分别支持数千种不同的服务,当前已有的基于容器的轻量级虚拟化技术尚不能完全满足。其次,在无服务器计算和边缘计算等场景中,应用对资源的需求是高度动态变化的,这给虚拟化的性能提出了苛刻要求,需要探索新的轻量级虚拟化架构和优化机制。再次,部分云计算应用开始出现向微服务应用发展的趋势。这意味着软件体系结构进一步地解耦,单个镜像上运行的业务更加专一。当前提出了 Unikernel等机制来大幅度精简冗余模块来提高虚拟机的启动速度但虚拟化场景下的适用性和成熟度还需要进一步提升。最后在分布环境下计算资源之外的其它资源如网络等专用虚拟化技术需要进一步探索。
\subsection{跨节点的资源高效按需聚合技术}\label{os-research5}
@ -109,8 +111,8 @@
\subsection{多租户条件下的主动防御技术}\label{os-research6}
多租户将是未来运行平台的主流应用形态之一。更多的服务被整合在单一平台上这些服务中可能包括了来自不同租户的不同安全等级的信息必须根据用户需求对应用系统的硬件、软件、数据、网络、存储等不同层面资源实现安全隔离。同时为了提高资源利用效率运行平台根据资源使用情况进行动态调度这种动态变化的环境将显著增大了安全隔离的难度。为了提高服务运行性能以Docker为代表的轻量级虚拟化容器技术也被广泛应用相对于虚拟机的强隔离性容器技术则是以弱隔离性换取性能的提高。在应用虚拟化技术的过程中隔离性与性能之间的取舍、动态变化下虚拟计算资源的安全复用、Hypervisor虚拟机监视器层的虚拟机监管、虚拟机逃逸防护等都成为必须要面对的挑战。同时虚拟化技术还需要对软件定义网络在数据中心内部的网络安全管理提供支持通过虚拟网关等技术对虚拟化数据流进行安全监控这些虚拟设备能否安全使用都将对系统安全性产生深刻的影响。
\subsection{规模化应用中的群体共识形成技术}\label{os-research7}
以区块链为代表的共识机制将成为新一代操作系统和运行平台的组件之一,为分布式和去中心化应用形成群体共识提供支撑。要实现这一目标,需要从如下一些方面开展研究:区块链技术本身具有可扩展性、去中心化和安全性三者不可兼得的“三元悖论”难题,在区块链成为运行平台组件后,需要针对应用场景特点突破侧重点不同的共识算法,进而通过定制机制实现场景特化的三元平衡寻优;区块链技术在渗透至不同场景后,为了支持价值在不同行业与场景之间流动,支持不同行业与场景群体之间的协作交互,实现区块链的互操作性势在必行,需要针对公证人、侧链、原子交换、分布式私钥控制等为代表的跨链技术深入展开研究;为了保证共识形成,区块链中事务信息需要通过网络传播给大范围节点,需要不断完善链内数据产生、验证、存储和使用整个过程中的隐私保护机制;区块链的匿名性给网络监管机构带来了极大的挑战和威胁,当前对公有链的监管尚无有力技术手段,而如何在保护隐私的前提下实现监管,也是当前联盟链面临的重大挑战;最后,需要深入研究在应用层如何充分发挥区块链的优势和潜力,针对可信计算、共同认知、自主协同等不同场景探索其适用范围。
\subsection{基于区块链的新型分布架构运行支撑技术}\label{os-research7}
以区块链为基础的共识与信任机制可以为去中心化、扁平化的分布式应用架构提供支撑,具有驱动未来分布式软件乃至整个软件生态跃升式发展的潜力,将成为新一代操作系统和运行平台的组件之一(参见\cite{os-connection}节)。要实现这一目标,需要在如下一些方面开展研究:首先,区块链技术本身具有可扩展性、去中心化和安全性三者不可兼得的“三元悖论”难题,在区块链成为共性组件后,需要针对应用场景特点突破侧重点不同的共识算法,进而通过机制与策略的分离,实现场景定制的三元平衡寻优;其次,区块链技术在渗透至不同场景后,为了支持价值在不同行业与场景之间流动,支持不同行业与场景群体之间的协作交互,实现区块链的互操作性势在必行,需要针对公证人、侧链、原子交换、分布式私钥控制等为代表的跨链技术深入展开研究;再次,为了保证共识形成,区块链中事务信息需要通过网络传播给大范围节点,需要不断完善链内数据产生、验证、存储和使用整个过程中的隐私保护机制;第四,区块链的匿名性给网络监管机构带来了极大的挑战和威胁,当前对公有链的监管尚无有力技术手段,而如何在保护隐私的前提下实现监管,也是当前联盟链面临的重大挑战;最后,需要深入研究在应用层如何充分发挥区块链的优势和潜力,针对可信计算、共同认知、群体协同等不同场景探索其适用范围。
\subsection{物理和社会资源的抽象和管控技术}\label{os-research8}
操作系统 “资源虚拟化”的能力来自于其对资源的抽象、封装和调度。传统操作系统针对信息空间内部的资源,已经建立了进程/线程、内存页/虚拟内存、文件等相对稳定的抽象实体。未来,在人机物融合系统中,如何表达和管理各类高度异构、动态变化的物理和社会资源,是操作系统领域的开放问题。其中一个核心问题是:在认知、物理和信息空间三者之间,如何刻画、检验、保持、校正多模型结构之间定性与定量一致性,进而实现具有“数字孪生”的物理和社会空间资源的调度和管理。此外,未来操作系统的编程接口不仅涉及到计算资源的“软件定义”,可能包括各种可传感物体对象、智能无人系统等各类物理资源,甚至向其他具有“数字孪生”特性的经济、社会和生产生活资源,其接口形式、接口实现机理等都是开放的问题。

Binary file not shown.

Before

Width:  |  Height:  |  Size: 304 KiB

After

Width:  |  Height:  |  Size: 221 KiB