分类 观点 下的文章

自 20 世纪 90 年代初以来,Linux 桌面已从一个简单的窗口管理器发展为一个完整的桌面。让我们一起来回顾一下 Linux 桌面的历史。

我第一次安装 Linux 是在 1993 年。那时,安装这种操作系统没有太多的选择。早期,许多人只是从别人那里复制一个运行中的镜像。然后有人有了一个很好的想法,创建一个 Linux 的“发行版”,让你可以自定义要安装的软件。这就是 Softlanding Linux 系统(SLS),也是我首次接触 Linux。

当时我的 386 PC 虽然内存不多,但已经足够了。SLS 1.03 需要 2MB 的内存才能运行,如果要编译程序,则需要 4MB 的内存。如果要运行 X 窗口系统,则需要多达 8MB 的内存!而我的电脑正好有足够的内存来运行 X 窗口系统。

因为我是在命令行中成长的,所以图形化的用户界面对我来说并不重要,但它确实很方便,我可以在不同的窗口中运行应用程序,并在任务间轻松切换。

从我第一次尝试 Linux 开始,我就迷上了它。从那以后,我一直在台式机上使用 Linux。和许多人一样,我也曾有一段时间以双引导配置运行 Linux,这样我就可以跳回到 MS-DOS 和 Windows 来运行某些程序。直到 1998 年,我终于冒了个险,全面投身于 Linux 之中。

在过去的 26 年中,我看着 Linux 桌面逐渐成熟。在这段时间里,我还尝试了各种有趣的桌面环境,下面我来分享一下 Linux 桌面的历史。

X 和窗口管理器

Linux 上的第一个“桌面”还不是桌面。相反,它们是运行在 X 窗口系统上的“ 窗口管理器 window manager ”(WM)。X 提供了图形用户界面的基本构件,比如在屏幕上创建窗口,并提供键盘和鼠标输入。就其本身而言,X 的用处并不大。为了使 X 图形环境变得有用,你需要一种方法来管理会话中的所有窗口。这就出现了 窗口管理器 window manager 。运行 xterm 或 xclock 之类的 X 程序就会在一个窗口中打开该程序。窗口管理器可以跟踪窗口并进行基本的内部管理,例如让你可以来回移动窗口并将其最小化。其余的事情取决于你自己。你可以通过将程序名列在 ~/.xinitrc 文件中以在 X 开始时启动这些程序,但是通常,你会从 xterm 中运行新程序。

在 1993 年,最常见的窗口管理器是 TWM,它的历史可以追溯到 1988 年。TWM 相当简单,仅仅提供了基本的窗口管理功能。

 title=

SLS 1.05 上的 TWM,显示了 xterm、xclock 和 Emacs 编辑器

另一个早期的窗口管理器是 OpenLook 虚拟窗口管理器(OLVWM)。OpenLook 是 Sun 微系统公司在 20世纪 80 年代开发的图形用户界面,后来被移植到其它 Unix 平台。作为一个虚拟窗口管理器,OLVWM 支持多个工作区。

 title=

SLS 1.05 上的 OLVWM,显示了 xterm 和虚拟工作区选择器

当 Linux 开始流行起来的时候,没多久就有人创建出性能更流畅、界面更好的新窗口管理器。这些新的窗口管理器中首先出现的是虚拟窗口管理器 FVWM。FVWM 比 TWM 或 OLVWM 更具现代感。但是,我们仍然没有桌面。

 title=

SLS 1.05 上的 FVWM,显示了 xterm 和文件管理器

以现代的眼光来看,TWM 和 FVWM 可能看起来很朴素。但重要的是要想想当时其它图形环境是什么样子。 Windows 当时的版本看起来也相当简单。Windows 版本 1 到版本 3 使用了一个称为“程序管理器”的普通启动器。

 title=

Windows 3.11,显示程序管理器和记事本编辑器

1995 年 8 月,微软发布了 Windows 95,改变了现代 PC 桌面的格局。当然,我当时对此印象很深刻。我曾觉得 Windows 3.x 笨拙而丑陋,但 Windows 95 却流畅而漂亮。更重要的是,我们现在将 Windows 95 视为“桌面”。新的“桌面”隐喻是一个巨大的进步。你可以在桌面上放置图标——事实上,Windows 95 提供了两个默认的桌面图标,分别是“我的电脑”(用于打开文件管理器)和“回收站”(用于放置以后要删除的文件)。

但是,更重要的是,Windows 95 桌面的意味着整合。程序管理器不见了,取而代之的是屏幕底部的任务栏,可让你使用更简单的“开始”菜单启动新程序。任务栏是多功能的,还通过一系列的按钮显示了你正在运行的程序,而托盘显示了时间、扬声器音量和其它简单的控件。你可以在这个新桌面上右键单击任何对象, Windows 95 会为你提供一个上下文相关的菜单,其中又你可以执行的操作。

 title=

Windows 95,显示了记事本编辑器

与以前版本的 Windows 甚至其它 Linux 窗口管理器相比,Windows 95 的界面更加流畅并且易于使用。值得一提的是,Linux 开发人员创建了一个模仿 Windows 95 界面的 FVWM 的新版本。名为 FVWM95 的新窗口管理器仍然不是桌面,但它看起来非常漂亮。新的任务栏让你可以使用“开始”菜单启动新的 X 程序。任务栏还可以使用类似于 Windows 95 的按钮显示了正在运行的程序。

 title=

在 Red Hat Linux 5.2 上的 FVWM95,显示了 xterm 和一个带有 xterm 图标、文件管理器和其他程序的快速访问程序启动器

虽然 FVWM95 和其他窗口管理器都在改进,但核心问题仍然存在:Linux 并没有真正的桌面。它具有一堆窗口管理器,仅此而已。使用图形用户界面的 Linux 应用程序(基本上意味着它们是 X 应用程序)看起来形态各异且工作方式也不同。除了 X 窗口系统提供的简单的纯文本复制/粘贴功能外,你不能从一个应用程序复制和粘贴到另一个应用程序里。Linux 真正需要的是在其图形用户界面中进行彻底的重新打造,以创建它的第一个桌面。

Linux 桌面之初啼

在 1996 年,Matthias Ettrich 有感于 X 之下 Linux 应用程序体验不一致的困扰。他想使找个更易于使用的图形环境,而且更重要的是,他想让所有东西都“集成”在一起,就像真正的桌面一样。

Matthias 开始了 K 桌面环境 K Desktop Environment (KDE)的工作。那个 K 代表着 “Kool”(LCTT 译注:即 Cool)。但是 KDE 这个名字也意味着可以类似 通用桌面环境 Common Desktop Environment (CDE)的做法,而 CDE 是“大 Unix”世界的标准。尽管到了 1996 年,CDE 看起来已经有点过时了。CDE 基于 Motif 部件集,这也是 FVWM 所模仿的设计。KDE 1.0 于 1998 年 7 月完成,与 FVWM95 等普通窗口管理器相比,它有了明显改进。

 title=

K 桌面环境(KDE)版本 1.0。图片来源:Paul Brown / KDE

KDE 是 Linux 向前迈出的一大步。最终,Linux 有了一个真正的桌面,集成了应用程序和更多现代的桌面图标。KDE 的设计与 Windows 95 并无不同。屏幕底部有一个任务栏,它提供了相当于 Windows 95 的“开始”菜单以及一些应用程序的快捷键。KDE 还支持虚拟桌面,这些桌面被巧妙地标记为 “One”、“ Two”、“Three” 和 “Four”。正在运行的应用程序通过位于屏幕顶部单独的任务栏的按钮表示。

但并不是每个人都对 KDE 感到满意。为了将 GUI 从系统中抽象出来,KDE 使用了 Trolltech 的 Qt 工具套件库。不幸的是,Qt 并不是以自由软件的许可证进行分发的。Trolltech 允许 Qt 在自由软件应用程序中免费使用,但在商业或专有应用程序中要收取使用费。而且这种二分法与自由软件不符。这给 Linux 发行版带来了问题:它们应该包括 KDE 吗?还是默认使用 FVWM 这样老式但属于自由软件的图形用户界面?

面对这种情况,Miguel de Icaza 和 Federico Mena 于 1997 年开始开发新的 Linux 桌面上。这个新项目被称为 GNOME,即 GNU 网络对象模型环境 GNU Network Object Model Environment 的缩写。GNOME 旨在成为一个完全自由的软件,并使用了一个不同的工具套件库 —— 来自 GIMP 图像编辑器的 GTK。GTK 从字面上的意思 GIMP 工具套件 GIMP Tool Kit 。当 GNOME 1.0 终于在 1999 年发布时,Linux 又多了一个现代化的桌面环境。

 title=

GNOME 1.0 版。图片来源:GNOME 文档项目

有两个 Linux 桌面环境固然很棒,但“KDE 与 GNOME”之争仍持续了一段时间。到了 1999 年,Trolltech 以新的公共许可证 Q 公共许可证 Q Public License (QPL)重新发布了 Qt 库。但是,新许可证有其自身的包袱—-QPL 仅适用于 Qt 在开源软件项目中的使用,而不适用于商业项目。因此, 自由软件基金会 Free Software Foundation (FSF)认为 QPL 与 GNU 通用公共许可证 GNU General Public License (GNU GPL)不兼容。这个许可证问题一直持续到 2000 年 Trolltech 在 GNU GPL v2 下重新发布 Qt 库。

随着时间的发展

Linux 桌面继续走向成熟。KDE 和 GNOME 进行了一场友好的竞争,促使双方都在增加了新的功能,还互相交流了思想和观念。到了 2004 年,GNOME 和 KDE 都取得了长足的进步,但只是给用户界面带来了渐进式的变化。

KDE 2 和 3 继续依赖屏幕底部的任务栏概念,但并入了用于运行应用程序的按钮。KDE 最明显的变化之一是添加了 Konqueror 浏览器,该浏览器首次出现在 KDE 2 中。

 title= showing the Konqueror browser")

KDE 2.2.2(2001),显示了 Konqueror 浏览器。图片来源:Paul Brown / KDE

 title=

Fedora Core 2 上的 KDE 3.2.2(2004),显示了 Konqueror 文件管理器(使用 Fedora Core 2 主题)

GNOME 2 也使用了任务栏概念,但将任务栏一分为二:屏幕顶部的任务栏用于启动应用程序并响应桌面提示,屏幕底部的任务栏用于显示正在运行的应用程序。我把这两个任务栏称之为“你可以做的事情”(顶部)和“你正在做的事情”(底部)。除了精简的用户界面外,GNOME 还添加了由 Eazel 开发的更新过的文件管理器,名为 Nautilus。

 title=

Fedora Core 2 上的 GNOME 2.6.0(2004),显示了 Nautilus 文件管理器(使用 Fedora Core 2 主题)

随着时间的流逝,KDE 和 GNOME 走了不同的道路。两者都提供了功能丰富、健壮且现代化的桌面环境,但是却具有不同的用户界面目标。2011 年,GNOME 和 KDE 在桌面界面上出现了很大的偏差。KDE 4.6(2011 年 1 月)和 KDE 4.7(2011 年 7 月)提供了更传统的桌面感受,同时继续根植于许多用户熟悉的任务栏概念。当然,KDE 的底层发生很多变化,但是它仍然保留了熟悉的外观。

 title=

KDE 4.6,显示 Gwenview 图像查看器。图片来源:KDE

2011 年,GNOME 以一个新的桌面概念彻底改变了走向。GNOME 3 旨在创建一个更简单、更精简的桌面体验,使用户能够专注于自己的工作。任务栏消失了,取而代之的是屏幕顶部的黑色状态栏,其中包括音量和网络控件,显示了时间和电池状态,并允许用户通过重新设计过的菜单启动新程序。

菜单的变化最具最戏剧性。单击“活动”菜单或将鼠标移到“活动”的“热角”,所有打开的应用程序会显示为单独的窗口。用户还可以从“概述”中单击“应用程序”选项卡以启动新程序。“概述”还提供了一个内部集成的搜索功能。

 title=

GNOME 3.0,显示 GNOME 图片应用程序。图片来源:GNOME

 title=

GNOME 3.0,显示活动概述。图片来源:GNOME

你的桌面之选

拥有两个 Linux 桌面意味着用户有很大的选择余地。有些人喜欢 KDE,而另一些人喜欢 GNOME。没关系,选择最适合你的桌面就行。

可以肯定的是,KDE 和 GNOME 都有拥护者和批评者。例如,GNOME 因为放弃任务栏而改成“活动概述”而受到了不少批评。也许最著名的批评者是 Linus Torvalds,他在 2011 年大声斥责并抛弃了新的 GNOME,将其视为“邪恶的烂摊子”,然后在两年后又回到了 GNOME。

其他人也对 GNOME 3 提出了类似的批评,以至于一些开发人员复刻 GNOME 2 的源代码创建了 MATE 桌面。MATE(是 MATE 高级传统环境 MATE Advanced Traditional Environment 的递归缩写)延续了 GNOME 2 的传统任务栏界面。

无论如何,毫无疑问当今两个最受欢迎的 Linux 桌面是 KDE 和 GNOME。它们的当前版本非常成熟,功能也很丰富。KDE 5.16(2019)和 GNOME 3.32(2019)都试图简化和精简 Linux 桌面体验,但是方式有所不同。GNOME 3.32 继续致力于极简外观,删除所有分散用户注意力的用户界面元素,以便用户可以专注于其应用程序和工作。KDE 5.16 采用了更为熟悉的任务栏方法,但也增加了其他视觉上的改进和亮点,尤其是改进的小部件处理和图标。

 title=

KDE 5.16 Plasma。图片来源:KDE

 title=

GNOME 3.32。图片来源:GNOME

同时,你也不会完全失去它们之间的兼容性。每个主要的 Linux 发行版都提供了兼容性库,因此你可以在运行 GNOME 的同时来运行 KDE 应用程序。当你真正想使用的应用程序是为其他桌面环境编写的,这一点非常有用。你可以在 GNOME 上运行 KDE 应用程序,反之亦然。

我认为这种态势不会很快改变,这是一件好事。KDE 和 GNOME 之间的良性竞争使这两个阵营的开发人员可以避免故步自封。无论你使用 KDE 还是 GNOME,你都将拥有一个集成度很高的现代化桌面。而最重要的是,这意味着 Linux 拥有自由软件最好的特点:选择。


via: https://opensource.com/article/19/8/how-linux-desktop-grown

作者:Jim Hall 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

自 1991 年诞生以来,Linux 已经走了漫长的一段路,而这些事件标志着它的发展。

在 2018 年 8 月,Opensource.com 发布了一项包含七个选项的民意测验,询问读者:Linux 历史上最重要的时刻是什么?我觉得我需要扩大这个清单,并提出我认为的 10 个在塑造 Linux 历史上发挥了重要作用的时刻。

1、Linus 发布 Linux

Linus Torvalds 最初是在 1991 年将 Linux 当成一个业余爱好发布到世上的。结果这个业余爱好成了他的职业!

2、出现 Linux 发行版

1993 年,出现了几个 Linux 发行版,需要特别指出的有 DebianRed HatSlackware。这个时刻之所以重要是因为它们证明了 Linux 在市场认可度和开发水平方面的成就,使其能够在 1990 年代动荡的操作系统战争、浏览器战争和协议战争中生存下来。相反,那时许多成熟的、商业的和专有的产品并没有活过千禧年之交!

3、IBM 斥巨资投注 Linux

2000 年,IBM 宣布将在 Linux 上投资 10 亿美元。Richard Richtmyer 在他的 CNN Money 有关投资的文章 中写道:“这一声明强调了蓝色巨人对 Linux 的承诺,标志着将这个替代操作系统推向主流商业市场的重大进展。”

4、好莱坞接纳 Linux

在 2002 年,整个好莱坞电影业似乎都采用了 Linux。迪尼斯梦工厂工业光魔 都在那一年开始用 Linux 制作电影。

5、Linux 得到政府认可

2003 年,美国政府对 Linux 的接受是它的又一个重要时刻。红帽 Linux 被授予美国防部通用操作环境(COE)认证。这很重要,因为政府(特别是情报和军事机构)对计算机系统有非常严格的要求,以防止攻击和支持国家安全。这为其他机构使用 Linux 打开了大门。在那年晚些时候,美国国家气象局宣布,它将用运行 Linux 的新计算机代替过时的系统。

6、我管理的系统

这个“时刻”确实是我个人经历的集合。随着在 2000 年代我的职业发展,我发现自己管理的几种类型的系统和设备都运行着 Linux。我在 VMware ESX、F5 Big-IP、Check Point UTM Edge、Cisco ASA 和 PIX 这些地方发现了 Linux。这使我意识到 Linux 确实可行并且可以继续存在下去。

7、Ubuntu

2004 年,Mark Shuttleworth 创立了 Canonical,该公司基于 Debian 发行版提供了易于使用的 Linux 桌面:Ubuntu Linux。我认为 Ubuntu Linux 帮助扩展了桌面 Linux 安装基数。从休闲的家庭用户到专业软件开发人员,它使 Linux 出现在更多人面前。

8、Google 的 Linux

Google 发行了两种基于 Linux 内核的操作系统:2008 年中期的 Android 移动操作系统和 2011 年在 Chromebook 上运行的 Chrome OS。在那之后,已经售出了数百万部 Android 手机和 Chromebook。

9、云计算即 Linux

在过去这十年左右的时间里,云计算已经从互联网计算的宏伟愿景变成了我们如何个人和专业地使用计算机的全新方式。云计算领域中的主要参与者都是构建于 Linux 之上的,包括 Amazon Web Services(AWS)Google Cloud Services(GCS)Linode。即使在一些我们不能确信的地方(例如 Microsoft Azure),也很好地支持运行 Linux 工作负载。

10、我的汽车运行着 Linux

你的也一样!许多汽车制造商几年前开始引入 Linux。这导致了名为 汽车级 Linux(AGL) 的协作开源项目的形成。丰田和斯巴鲁等主要汽车制造商已经联合开发基于 Linux 的汽车娱乐、导航和引擎管理系统。

分享你的最爱

这是我从贯穿我的职业生涯的 Linux 文章和事件的档案库中提取出来的主观清单,因此可能还有其他更值得注意的时刻。请分享你的评论吧。


via: https://opensource.com/article/19/4/top-moments-linux-history

作者:Alan Formy-Duval 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

在新冠疫情爆发之际,涌现了数以千计的开源项目,今天我们来了解其中四个。

在当前紧张的疫情环境下,保持专注和积极性是一个很大的挑战。而研究开源社区如何应对这一次疫情爆发,对于我来说却成为了一种宣泄。

从今年一月底开始,整个开源社区已经贡献了数以千计关于冠状病毒或新冠病毒的开源软件仓库,其中涉及的内容包括但不限于数据集、模型、可视化、Web 应用、移动应用,且大多数都使用了 JavaScript 和 Python 编写。

之前我们分享过一些关于开源硬件创客们在帮助遏制冠状病毒传播方面做的贡献,现在将继续分享四个由开源社区作出的应对冠状病毒和新冠病毒的项目,这体现了开发者们和整个开源社区在当下对整个世界的影响力。

1. PennSignals:CHIME

 title=

新冠病毒流行病医院影响模型 COVID-19 Hospital Impact Model for Epidemics CHIME)是由宾夕法尼亚大学 Penn Medicine 机构的数据科学家们建立的开源在线应用,它可以让医院更好地了解本次新型冠状病毒对医院需求的影响。

医院的管理人员可以通过 CHIME 来大致预测未来几天和几周内将会有多少患者需要住院治疗,并推算 ICU 和呼吸机的需求量。只需要输入当前住院患者数以及一些相关的变量,就可以看到未来几天内需求的变化情况。

CHIME 主要使用 Python 开发,并通过 Pandas 这个开源库实现了大部分的数据转换和数值计算,最终得出相关的估计值。Pandas 的背后有一个强大的团队进行支持,它是在数据分析方面被广泛使用的 Python 库之一。和很多其它的开源项目一样,Pandas 团队的收入大部分来源于用户的资金支持

2. Locale.ai:实时新冠病毒可视化

 title=

实时显示世界各地病例数量分布的地图可以让我们直观了解新冠病毒的规模和扩散程度。Locale.ai 就开发了这样一个开源、可交互的新冠病毒已知病例可视化分布图,这个图会根据最新的可靠数据实时进行更新。

这个项目有趣的地方在于,它的数据是是通过 GitHub 用户 ExpDev07 创建的开源 API 进行检索的,这个 API 的数据来源是约翰·霍普金斯大学的开源数据集,而约翰·霍普金斯大学这份聚合了多个来源的数据集则是 GitHub 上新冠病毒相关的最受欢迎的项目。这就是开源项领域中分支带来的一大好处。

Locale.ai 的这个图表通过 Vue.js 开发。Vue.js 是一个在 Web 应用开发方面非常流行的框架,它是由尤雨溪创造并维护的。值得一提的是,尤雨溪是少数以全职参与开源项目维护的人之一。

3. BlankerL:DXY-COVID-19-Crawler

 title=

DXY-COVID-19-Crawler 建立于今年 1 月份,是开源社区对新冠病毒最早发起响应的项目之一。当时该病毒主要在中国范围内传播,中国医学界通过丁香园网站来进行病例的报告和跟踪。为了使这些疫情信息具有更高的可读性和易用性,GitHub 用户 BlankerL 开发了一个爬虫,系统地从丁香园网站获取数据,并通过 API 和数据仓库的方式对外公开。这些数据也被学术研究人员用于研究病毒传播趋势和制作相关的可视化图表。到目前为止,DXY-COVID-19-Crawler 这个项目已经获得了超过 1300 个星标和近 300 次的复刻。

BlankerL 使用 Python 和 Beautiful Soup 库开发了这个爬虫。Beautiful Soup 是 Python 开发者用于从页面 HTML DOM 中提取信息的库,它由 Leonard Richardson 维护,这位作者另外还全职担任软件架构师。

4. 东京新冠病毒工作组网站

 title=

世界各地很多城市都在网络上持续更新当地的新冠病毒信息。东京都政府则为此创建了一个综合性的网站,让东京当地居民、在东京设有办事处的公司以及到东京的游客了解最新情况,并采取相应的预防措施。

这个网站的不同之处在于它是由东京都政府开源的。这个项目受到了来自 180 多名用户的贡献,日本的长野市、千叶市、福冈市还对这个网站进行了改造。这个项目是城市公共建设更好地服务大众的有力示范。

这个开源网站也使用了很多开源技术。通过 Tidelift,我留意到项目中存在了 1365 个依赖项,而这都是由 38 个由开发者明确使用的直接依赖项所依赖的。也就是说,超过一千多个开源项目(包括 Nuxt.jsPrettierBabelAjv 等等)都为东京向市民共享信息提供了帮助。

 title=

其它项目

除此以外,还有很多应对新冠病毒的重要项目正在公开进行当中。在这次研究中,开源社区应对流行病以及利用开源技术开展工作的方式让我深受启发。接下来的一段时间都是应对疫情的关键时期,我们也可以继续在开源社区中寻找到更大的动力。

如果你也参与到了新冠病毒相关的开源项目当中,欢迎在评论区分享。


via: https://opensource.com/article/20/3/open-source-software-covid19

作者:Jeff Stern 选题:lujun9972 译者:HankChow 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

过去,我眼中的华为是神秘、大公司体制的代名词,但是,这一次 HDC.Cloud 华为开发者大会的参会体验和所见所闻,打破了我对于华为的认知,如今的华为与开放、创新等关键词紧密联系在一起。

一、引语

突如其来的全球性疫情的爆发,打乱了这个世界很多既定的事情。作为一个 IT “会虫”,我每年要参加很多重要的行业峰会,但如今的疫情形势,显然现场参会不再是一个好主意。在年前,我参加了华为的 HDC.Cloud 媒体预热会,近距离了解了原计划在春节后举办 HDC.Cloud,对这次计划中的大会充满了期待,也准备亲自去了解一些有趣的话题。

在目前看起来还是愈演愈烈的疫情之下,全球各类 IT 行业的峰会纷纷停摆,或从线下改为线上,或延期观望,甚至直接取消的也比比皆是。

而这次华为的 HDC.Cloud 也在调整之后,决定将原本预计参会规模达上万人的行业顶级峰会改为线上举办。说实话,在参会之前,我对线上会议能不能如以往般直面演讲者获得最新的重要信息还是有一定的疑虑的——不过事实上证明,至少在华为的 IT 基础设施加持之下,效果要比预期的好,只是心疼我滚烫的笔记本电脑。

作为中国的一家开源社区,华为的开源举措和战略是我最为关注的,因此,在这篇文章中,我将向大家分享我对华为在开源方面的观察和感受。

二、软件开源

可以说,以华为这些年来的表现来看,已经将开源和开放作为其主要的生态战略来推进,这在华为的很多宣传和会议上,尤其是这次的 HDC.Cloud 上更为显著。几乎在每个话题和演讲中,都会或多或少地提及开源和开放生态。

首先说开源软件,除了华为捐赠给 Apache 基金会的 ServiceCombCarbonDataMetaModel 等若干顶级项目之外,华为在 GitHub 上的几个企业账户中还有很多项目:

让我们再梳理下 openEuler 社区的几大里程碑事件:

  • 2019 年 9 月 18 日,华为宣布操作系统 、数据库等的开源计划,openEuler 开源社区上线(社区地址:https://openeuler.org/zh/)。
  • 2019 年 12 月 31 日,openEuler 源代码正式上线,至 3 月 25 日,下载 ISO 的累计次数:5479,贡献代码的总人数 220、总次数 5324。
  • 2020 年 3 月 27 日,openEuler 开源社区正式发布 openEuler 20.03 LTS(长期支持)版本。该版本是自开源社区上线以来的首个 LTS 版本。

当前,openEuler 社区秘书处、技术委员会、安全委员会等组织已开始运作,社区参与者申请并成立了 30 多个项目组。

这些其实并不出乎我们的预期,不过在这次会议上,大家之前关注颇多的 openEuler 这次披露了一个重要消息,它成功地和国内 4 家重要的操作系统厂家麒麟软件、普华基础软件、统信软件、中科院软件所等达成了合作,共同宣布基于 openEuler 的商用版本操作系统正式发布,以加速鲲鹏相关技术在各行业的落地和应用。

openEuler 社区后续将每两年发布一次 LTS 版本,每 6 个月发布一次社区创新版本,并提供 CVE 漏洞管理能力。 openEuler也将始终坚持 Upstream First 策略,所有能力第一时间向上游开源社区推送。

openEuler 20.03 LTS 版本基于华为长期的技术积累和产品实践,在稳定性、安全性上达到了业界领先水平,并通过软件全栈的技术优化,充分释放多样化计算平台算力。

这说明了什么?openEuler 不仅仅是一个普通的 Linux 发行版,而是作为上游发行版,以开放的姿态迎来了国内各大操作系统厂商的支持。这在我的印象中,还是国内第一次跨越一家一地的操作系统层面的大合作,其开放形态可见一斑,也映射出了大家对鲲鹏计算生态的看好。

三、硬件开放

除了软件的开源,华为硬件开放方面也取得了长足的进展,这体现在了华为为其通用计算处理器“鲲鹏”和人工智能处理器“昇腾”打造的开放生态上。

很多人知道开源软件,但是对硬件怎么开放不甚了然。随着互联网技术的发展,开源这个词已经逐渐被大众所接触和理解。以粗浅的解释来说,所谓开源软件就是将软件的源代码公开出来。有些人会疑问,那么硬件怎么开源呢?

开源硬件和非开源硬件有很多区别,但是开源硬件联盟(OSHWA)定义了一个大多数人同意的定义,如果你熟悉开源软件,这不会听上去太奇怪:“开源硬件(OSHW)是一个指有形的造物:机器、设备或者其它物理东西的术语——其设计向公众发布,任何人可以制造、修改、分发并使用那些造物。”

为了营造开放的计算生态,华为聚焦做好处理器、板卡和主板等底层基础硬件设施,并开发硬件设施的相关资源,使能合作伙伴优先发展自有品牌的计算产品整机。目前全球已经有黄河、长虹天宫、紫光恒越、同方、湘江等11家整机厂商基于鲲鹏主板推出自有品牌的服务器及PC产品。对于个人来说,我们可能很快就可以用上基于鲲鹏处理器的 PC 和服务器产品了。

多样化计算时代,计算产品能够有新的选择,得益于华为一直以来在技术研发方面的高度投入。从2004年华为开始投资研发第一颗嵌入式处理芯片以来,目前已总共投入超过2万名的工程师,在去年9月的华为全联接大会上,华为基于“鲲鹏+昇腾”双引擎正式发布了计算战略,以“一云两翼双引擎”的计算产业布局,致力于为世界提供最强算力。最终形成了以“鲲鹏+昇腾”为核心的基础芯片族,满足世界对通用计算和智能计算的最新需求。

三、开发者扶持

再次投入 2 亿美元的沃土计划 2.0

作为开源的土壤,开发者也是屡屡被华为提在口中的。在华为开发者大会 2020(Cloud)上,华为高调宣布“沃土计划 2.0”的进一步举措,将在 2020 年投入 2 亿美元推动鲲鹏计算产业发展,并公布面向高校、初创企业、开发人员及合作伙伴的扶持细则。

  • 高校教研扶持:面向高校,提供1亿人民币的扶持金额,包括人才培养,云资源及样机支持,同时华为与教育部签署3年协议投入 10 亿人民币,共同推进人才的培养。
  • 初创企业及开发人员扶持:面向初创企业及个体开发人员,以云资源及线下活动的方式发放 1 亿人民币的补助,每家初创公司最高可获得 75 万人民币的云券。
  • 合作伙伴发展扶持:面向合作伙伴,提供6亿人民币的扶持总额,其中 3 亿人民币一次性研发费用补贴,3 亿人民币的云资源。

华为云与计算 BG 总裁侯金龙在《与全球开发者共成长,共赢计算新时代》主题演讲时表示:“开发者是改变世界的重要力量,也是企业创新的引擎和产业生态的灵魂。华为去年发布了沃土计划 2.0,计划 5 年内发展 500 万开发者,目前华为云开发者已经增长到 160 万。”

华为云与计算 BG 总裁侯金龙在主题演讲

打造鲲鹏的开发工具平台

为了让每位开发者用上并用好鲲鹏,华为在大会上发布了 CloudIDE 开发环境服务、鲲鹏加速库和开发者社区。

站在鲲鹏开发者的角度,如果在本地做开发构建,则需要做交叉编译;而如果在鲲鹏环境做原生编译,则面临着和其它工作的割裂。而现在,有了支持鲲鹏原生开发环境的华为云 CloudIDE,这个痛点就迎刃而解。华为云 DevCloud 研发总监王亚伟介绍, CloudIDE 只需要几十秒时间就能快速创建鲲鹏原生的云端开发环境,开发者可以直接在浏览器内连接到云端实例,进行编码、调试、测试,10 分钟就能快速开发鲲鹏云原生应用。

作为华为云 DevCloud 开发平台组件之一,CloudIDE 是轻量化的基于 Web 的集成开发环境服务,支持鲲鹏原生和多语言,打通了开发态和运行态。目前,已有超过 40 万用户在 DevCloud 上开发了超过 50 万个项目。而且,2020 年 CloudIDE 对所有鲲鹏实例全年免费。

此外,华为还提供了鲲鹏加速库。它分为基础,压缩,加解密,存储,多媒体五大类,应用开发者可以在代码修改量不到1%的情况下,将性能提升大于 10% 甚至在加解密等场景下将性能提升超过 100%。

如今,鲲鹏开发者们还有了一个活跃的开发者社区,汇聚集了全栈软硬件知识、鲲鹏产业资讯、政策发布、认证查询等信息,华为还为社区提供全天候 7x24H 的专家在线服务。

四、结语

华为在计算产业的发展策略“硬件开放,软件开源,使能合作伙伴”,同时华为也是业界唯一一家同时拥有“CPU、NPU、存储控制、网络互连、智能管理”五大关键芯片的厂商。

对于华为来说,惟有以软件开源+硬件开放,才能发掘更大的潜能、释放更大的算力,为数字经济时代提供最具创新性的核心生产力。随着华为持续不断地提供各种资源,帮助广大开发者学习和使用鲲鹏,会帮助更多的伙伴逐步实现应用的迁移。

华为是国内难得的高研发投入企业,并不断推出开放的策略,对于整个产业中的我们每个人来说,都是一个重大的利好消息。学习、理解、利用华为所开放出来的这些技术,对于我们这些从业者来说,都是不可多得的好资料。也希望更多的企业能够向华为学习,从闭源、封闭,渐渐走向开放。

由于 COVID-19 的肆虐,IBM、谷歌、亚马逊、AT&T、思科、苹果等公司都争先恐后地为远程办公提供了技术上的支持,这为远程网络带来了不少的压力。

在新型冠状病毒广泛传播的大环境下,很多公司都要求员工留在家中远程办公,远程网络技术因此承受了更大的压力,一些带宽和安全方面的问题也接踵而至。

在过去的几十年当中,由于企业的蓬勃发展,远程办公的人数估计增加了 400 多万。而当前疫情流行的背景下,远程办公的需求激增,有望达到一个新的高峰。

一家 虚拟私有网络 Virtual Private Network (缩写:???)提供商 Atlas 的一份研究表明,在今年 3 月 9 日到 3 月 15 日之间,美国的虚拟私有网络使用量增加了 53%,并且还会继续提高。而在意大利这个疫情爆发比美国早两周的国家,过去一周内的虚拟私有网络使用量甚至增加了 112%。Atlas 虚拟私有网络的首席执行官 Rachel Welch 在一份声明中称,美国的虚拟私有网络使用量在 3 月底预估会达到 150% 的增幅。

部分企业正在尝试通过 一日测试 one-day test 来评估远程办公的可行性。据《芝加哥论坛报》的报道,摩根大通、晨星以及一家数据分析方面的初创公司 Arity 已经通过让员工在家办公一天来测试整个办公系统的稳定性。

在政府方面,美国国家海洋与大气管理局和 NASA 都已经进行或计划进行网络方面的压力测试,评估是否有足够的网络容量足以让上千名工作人员远程办公,以及远程办公可能造成的影响。而放眼整个美国,供职于美国政府部门的员工数量在 200 万左右。

为了避免蜂窝数据网络发生拥堵,美国联邦通信委员会已批准 T-mobile 临时访问已分配给其它运营商的 600MHz 频段,T-mobile 表示“将使用这个频段让美国人更方便地享受远程医疗、参与远程工作和学习,同时在保持‘物理距离’的情况下保持联系”。

但也有一些业内人士指出,在一些对蜂窝网络有较强依赖的的场景下,“最后一英里”的网络访问会变得非常拥堵。

网络情报公司 ThousandEyes 的主要产品是局域网和广域网性能分析的软件,该公司的产品经理 Alex Cruz Farmer 表示,网络瓶颈在于一些较为偏远的农村地区,因为那些地区的网络基础设施较为薄弱,主要通过微波或蜂窝网络来访问互联网。最大的挑战在于现有的解决方案所能提供的带宽远远不足。

Alex Cruz Farmer 还补充道,尽管持续时间不长,但现在的确已经出现一些由于运营商问题或网络负载增加导致的故障现象。

AT&T 表示目前已经留意到蜂窝网络使用量的变化,但网络容量并没有作出提高。

AT&T 在一份声明中称,在新冠病毒传播最严重的城市中,由于越来越多的人留在了家中远程办公,减少了通勤和人群聚集,很多特定位置和特定时段的蜂窝网络使用量峰值都明显降低了。他们还使用了一些工具对网络带宽进行了统计和监控,通过这些工具,他们可以更直观地了解网络使用情况的趋势,同时获取网络性能和网络容量方面的报告,进而管理整个通信网络。

Verison 表示,自从新型冠状病毒疫情爆发以来,尽管在家办公的用户数量大增,但使用的数据量并没有明显的上升。他们在一份声明中称:“Verison 的网络是为满足未来的需求设计建造的,面对各种需求量的增加或使用方式的改变,我们都有充分的准备。虽然这是一次前所未有的社会事件,整个局面也在不断发生改变,但随着不断了解实际需求的变化情况,我们随时可以对网络资源作出调整”。

Verison 一直在关注受影响最严重的地区的网络使用情况,并承诺将会与医院、医护人员、政府机构合作,制定网络资源使用的优先级,以满足他们的需求。Verison 还宣布计划在 2020 年将支出在 170 亿至 180 亿美元的基础上再提高 5 亿美元,以实现“加快 Verison 向 5G 过渡并在困难时期帮助支撑经济”的目标。

企业虚拟私有网络安全问题

对于企业来说,数据中心与远程用户之间的网络和安全问题解决起来绝非易事,尤其是使用虚拟私有网络进行远程访问时,来自用户所在住宅网络的访问几乎无法由企业控制。CIMI 公司总裁 Tom Nolle 认为,IT 部门有必要验证这些连接是否符合企业的标准(关于 Tom Nolle 更多关于在家办公的看法,可以查阅这里)。

Tom Nolle 认为像 ISP、DNS 和 Wi-Fi 这些常见的家用网络要素都应该作为适合远程办公网络业务认证的一部分。他发现 Google 的 DNS 服务比 ISP 提供的服务更能承受压力,OpenDNS 也是一个很好的选择,这说明用户可以考虑使用其中一种。

Tom Nolle 还说,家庭 Wi-Fi 网络的安全性也是一个问题,IT 部门应该要求远程办公的员工提交 Wi-Fi 配置的屏幕截图,以保证使用了正确的加密方式。之所以有这样的想法,是因为他觉得很多远程办公的员工都会绕过企业预设的一些安全措施。

DNS 软件公司 BlueCat 的首席战略官 Andrew Wertkin 表示,对一些刚刚开始在家远程办公的员工来说,适当提供相关指导是很有必要的。大部分员工从来没有尝试过在家远程办公,他们或许并不了解安全的重要性。如果员工访问公司网络的时候使用的是个人设备而不是公司设备,就更有可能出现问题。

而使用虚拟私有网络远程办公的人数激增也会为企业带来成本上的挑战。

“虚拟私有网络设备并不便宜,如果考虑到计算资源的成本和每个人的均摊成本,迁移到云上的虚拟环境会带来一笔不小的开支,这还不包括每个虚拟私有网络许可证价格的上升”,Alex Cruz Farmer 坦言。

在容量方面,随着远程访问量的增加,用于分配 IP 地址的 DHCP 服务也会承受巨大的压力。Andrew Wertkin 指出,如果进行远程连接的设备无法获取到网络地址,则是否具有足够的虚拟私有网络许可证并不重要。企业内部必须对这些风险进行测试,了解其中存在瓶颈的部分,并制定规避这些风险的策略。

按照这个思路,企业甚至需要验证数据中心可以用于公开的 SSL 套接字数量,否则也会面临数量不足的风险。

微软 Office 365 产品团队的高级程序经理 Paul Collinge 也表达了类似的担忧。他在一篇关于优化 Office 365 员工远程办公流量的博客中写道,当大量员工在同时接入企业网络时,会对诸如虚拟私有网络集中器、中央网络出口设备(例如代理、DLP)、中央互联网带宽、回程 MPLS 和 NAT 等网络要素产生巨大的压力。最终导致的结果是低下的性能、低下的生产力,以及员工们低下的使用体验。

Alex Cruz Farmer 提出,企业很可能需要增加网络上虚拟私有网络集中器的数量,这样就可以让远程用户分布在多个不同的虚拟私有网络端点上,避免产生拥堵。退而求其次,只能在防火墙上把某些端口放开,允许特定应用程序的公开访问,尽管这样有助于提高工作效率,但却降低了整体的安全性。

虚拟私有网络隧道分割技术有效吗?

业内人士对 隧道分割 tunneling split 有不同的看法。

BlueCat 的 Andrew Wertkin 认为,虚拟私有网络可以使用隧道分割技术,使得仅有需要访问企业内部网络的流量才通过虚拟私有网络隧道访问,其余流量则直接进入互联网。这意味着会有部分流量不受隧道和企业网络内部的安全控制,用户的计算机会暴露在互联网当中,进而导致企业的数据和网络面临安全风险。

尽管如此,微软在上周还是建议 IT 管理员使用隧道分割技术以缓解 Office 365 由于大量远程用户涌入导致的拥堵问题。微软在建议中提供了相关接入点的 URL 和 IP 地址列表,并引导 IT 人员如何按照这个方式将流量路由到 Office 365。

按照 Paul Collinge 的说法,虚拟私有网络客户端需要经过配置,才能将流量路由到已标识的 URL/IP/ 端口上,进而为全球的用户提供高性能的服务。

Alex Cruz Farmer 认为,在虚拟私有网络使用率上升之后,企业很有必要对网络安全进行一个全面的审查。对于仍然在使用传统网络安全架构的企业来说,应该开始考虑基于云端的网络安全方案了,这不仅可以提升远程办公的性能,还能减少企业对于广域网的使用量。

其它相关情况:

  • FCC 呼吁,宽带提供商应该适当放宽数据传输的限制,电话运营商应该适当免除用户的长途电话费,远程教育提供商应该合作为社会提供远程学习的机会,网络运营商应该优先考虑医院或医疗机构的网络连接需求。对此,AT&T 已经作出了相关的回应和行动。
  • 美国参议员 Mark R. Warner (D-VA) 和其他 17 名参议员致信了 AT&T、CenturyLink、Charter Communications、Comcast、Cox Communications、Sprint、T-Mobile、Verizon 这八家主要 ISP 的首席执行官,呼吁这些公司应该采取措施应对远程办公、在线教育、远程医疗、远程支持服务等方面需求激增带来的压力。这些参议员在信中呼吁,各公司应该降低可能对远程服务产生影响的限制和费用,同时还应该为受到疫情影响的学生提供免费或收费的宽带服务,否则学生在疫情期间无法接入网络进行在线学习。
  • 思科、微软、谷歌LogMeInSpectrum 等供应商都提供了一些免费工具,帮助用户在疫情爆发期间正常进行安全通信。

via: https://www.networkworld.com/article/3532440/coronavirus-challenges-remote-networking.html

作者:Michael Cooney 选题:lujun9972 译者:HankChow 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

对于软件定义的广域网(SD-WAN),“过去看起来困难的选择,知道了这些选择的结果后,现在看起来就很清晰了” 这一说法再合适不过了。总结过去的几年:云计算和数字化转型促使公司重新评估传统的 WAN 技术,该技术不再能够满足其不断增长的业务需求。从那时起,SD-WAN 成为一种有前途的新技术。

SD-WAN 旨在解决物理设备的流量管理问题,并支持从云进行基于软件的配置。许多最初的 SD-WAN 部署都因希望取代昂贵的多协议标签交换 (MPLS) 而得到推动。公司希望它可以神奇地解决他们所有的网络问题。但是在实践中,基本的 SD-WAN 解决方案远没有实现这一愿景。

快速发展到现在,围绕 SD-WAN 的炒作已经尘埃落定,并且早期的实施工作已经过去。现在是时候回顾一下我们在 2019 年学到的东西以及在 2020 年要改进的地方。所以,让我们开始吧。

1、这与节省成本无关

大多数公司选择 SD-WAN 作为 MPLS 的替代品,因为它可以降低 WAN 成本。但是,节省的成本会因 SD-WAN 的不同而异,因此不应将其用作部署该技术的主要驱动力。无论公司需要什么,公司都应该专注于提高网络敏捷性,例如实现更快的站点部署和减少配置时间。SD-WAN 的主要驱动力是使网络更高效。如果成功实现那么成本也会随之降低。

2、WAN 优化是必要的

说到效率,WAN 优化提高了应用程序和数据流量的性能。通过应用协议加速、重复数据消除、压缩和缓存等技术,WAN 优化可以增加带宽、减少延迟并减轻数据包丢失。最初的想法是 SD-WAN 可以完成对 WAN 优化的需求,但是我们现在知道某些应用程序需要更多的性能支持。这些技术相互补充,而不是相互替代。它们应该用来解决不同的问题。

3、安全性不应该事后考虑

SD-WAN 具有许多优点,其中之一就是使用宽带互联网快速发送企业应用程序流量。但是这种方法也带来了安全风险,因为它使用户及其本地网络暴露于不受信任的公共互联网中。从一开始,安全性就应该成为 SD-WAN 实施的一部分,而不是在事后。公司可以通过使用安全的云托管之类的服务,将安全性放在分支机构附近,从而实现所需的应用程序性能和保护。

4、可见性对于 SD-WAN 成功至关重要

在应用程序和数据流量中具有可见性,这使网络管理不再需要猜测。最好的起点是部署前阶段,在此阶段,公司可以在实施 SD-WAN 之前评估其现有功能以及缺少的功能。可见性以日常监控和警报的形式在部署后继续发挥重要作用。了解网络中正在发生的情况的公司会更好地准备应对性能问题,并可以利用这些知识来避免将来出现问题。

5、无线广域网尚未准备就绪

SD-WAN 可通过包括宽带和 4G/LTE 无线在内的任何传输将用户连接到应用程序。这就是移动互联越来越多地集成到 SD-WAN 解决方案中的原因。尽管公司渴望将 4G 用作潜在的传输替代方案(尤其是在偏远地区),但由此带来的按使用付费 4G 服务成本却很高。此外,由于延迟和带宽限制,4G 可能会出现问题。最好的方法是等待服务提供商部署具有更好的价格选择的 5G。今年我们将看到 5G 的推出,并更加关注无线 SD-WAN。

请务必观看以下 SD-WAN 视频系列:你应该知道的所有关于 SD-WAN 的知识


via: https://www.networkworld.com/article/3531315/2020-will-be-a-year-of-hindsight-for-sd-wan.html

作者:Zeus Kerravala 选题:lujun9972 译者:hkurj 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出