首页 > xxx Grils >使世界重新启动更新
2018
02-02

使世界重新启动更新


这是个人计算机用户的烦恼:您已更新您的操作系统,现在您需要重新启动。这是这样的,电脑可以切换到修改后的源代码。

但是,想象一下,必须更新和重新启动在大型公司和组织中运行的数百台或数千台计算机:计算机和在线服务关闭有时会浪费大量时间和金钱,有时会花费数小时。为了避免宕机,组织通常会等待低流量时段的更新 - 但这会使服务器过时或容易受到网络攻击。

2008年,Jeff Arnold '07,MEng '08和一群麻省理工学院计算机科学家和工程师一起,开始通过开发和商业化软件Ksplice来解决这个问题,该软件自动应用补丁(安全更新或错误修复)到操作系统,而不需要重新启动。

根据阿诺德获奖的MIT硕士论文,这款新颖的软件比较旧代码和更新代码之间的变化,并将这些变化实施到运行的Linux内核 - 一个操作系统的核心数据处理组件。从本质上讲,它只能通过关闭操作系统来实现。该软件还采用了新颖的技术,不需要程序员干预代码(无Ksplice的情况下执行更新的商标),从而降低了成本和出错的风险,Arnold说。 “Arnold说:”目标是让管理员获得更新,同时消除用户的成本和停机时间。

Arnold在2009年麻省理工10万美元创业大赛中获胜,与Waseem Daher '07,MEng '08,Tim Abbott '07,SM '08和Anders Kaseorg '08共同创立了Ksplice公司。剑桥将其作为商业产品推出。阿诺德担任公司首席执行官。

在仅仅18个月的时间里,Ksplice累积了700多个客户 - 在10万多台服务器上运行软件的独立公司,政府机构和财富500强公司。然后,这家创业公司向技术巨人甲骨文(Oracle)出售了一笔未披露的数额,该公司现在向其甲骨文Linux客户(其中包括全球银行,零售公司和电信公司)提供该软件。 (在购买之后,Ksplice团队加入了甲骨文,帮助该公司将软件集成到其产品中。)

截止到今天,Ksplice只运行在Linux操作系统上。但Daher说,代码的编写方式应该使其“可能扩展到其他产品”,如Mac和Windows操作系统。

以对象为中心

更新运行内核的过程称为“热更新”或“热修补”,并且早于Ksplice。但Ksplice的新颖之处在于,它使用目标代码(计算机可以理解的二进制文件)来构建热补丁,而不是由程序员(如C ++或Java)编写和修改为文本的源代码和计算机指令。

在没有Ksplice的情况下热修补程序需要程序员构建替换源代码或手动检查代码以创建更新。程序员可能还需要解决代码中的不明确性 - 比如,当两个或多个软件组件具有相同的名称时,在计算机内存中选择正确的位置。

然而,Ksplice使用Arnold发明的两种新技术来修补目标代码。第一种称为“pre-post差异化”的方法是,在补丁(“pre”)之前创建目标代码,在补丁(post)中修改目标代码。然后比较“pre”和“post”代码,以确定哪些代码已被修改,提取已更改的代码,并将代码放入自己更新的目标文件中,以便将其插入正在运行的内核中。本质上,它修改了由修补程序修改的功能,并指向这些功能的重定位,更新版本。

第二种称为“运行预匹配”的技术通过使用自定义计算来比较“预”代码与最终运行的内核(“运行”代码)来计算模糊代码在计算机内存中的地址。例如,通过在“前”和“运行”代码之间来回切换, 检查“预”代码的元数据值,它获得足够的信息来标识需要重定位到正在运行的内核中的某个位置的代码。

此技术也是一种安全措施,因为如果在“预”代码和“运行”代码之间发现任何意外的对象代码差异,进程将中止修补程序。

Ksplice首席运营官Daher说,尽管今天的计算机技术在几年之内有风险,但Ksplice(现在5岁)仍然是一种新颖的产品。他说:“这种情况依然强劲。

Ksplice的来源

Ksplice的根源追溯到2006年,当时阿诺德负责实施安全更新,为麻省理工学院的学生信息处理委员会,在一个工作日抵达。在服务器被大量使用的时候,为了避免宕机,他推迟到周末才安装更新。不幸的是,这种等待导致了网络攻击,需要重新安装所有的系统软件。

“这就是激发我去思考这个问题的原因:你不能马上把服务器拿下来,不能等到有机会更新,可能是一周,一个月或一年,一些公司,“阿诺德说。 “在系统运行时,我们需要更好的技术来解决这个不可能更新的问题”。

在Arnold的计算机科学与工程专业Charles A. Piper教授Frans Kaashoek的指导下,他开始为他的毕业生开发Ksplice论文获得2008年度查尔斯·詹尼弗·约翰逊论文奖的第二名。

从那里获得奖学金和麻省理工学院10万美元的竞赛资助的Ksplice,阿诺德组建了一个团队来帮助开发这项技术。随着公司的发展,Arnold和Daher接手:他们处理客户,销售,市场和会计 - “严格计算机科学背景的人挑战,”Daher说。

为求帮助,他们转向了麻省理工学院创业指导服务(VMS),“这有助于指导,指导我们申请赠款,并以正确的方式思考业务”,比如了解客户和市场, Daher说。 “

”我们成功的关键在于我们拥有良好的导师和顾问网络,许多人都是麻省理工学院社区的一员。 “听到他们的战争故事,并接受他们面临的一些挑战,这是非常有价值的。”

“阿诺德补充说:”麻省理工学院是Ksplice故事的一部分。

Arnold和Daher现在正在剑桥商业中心的另一家软件公司工作,他们说,他们仍然与VMS保持联系。处于早期阶段,他们不能多说创业。 “但是我们很高兴能够重新建立一个初创公司,”阿诺德说。

来源:麻省理工学院