偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

FreeBSD 現(xiàn)在能在 25 毫秒內(nèi)完成啟動

系統(tǒng)
這是運行在 AWS Firecracker 上的,當(dāng)然,同時也有其他的新興微虛擬機(microVM)引擎可供選擇。

在更換了 FreeBSD 內(nèi)核中的排序算法后,其啟動速度提高了 100 倍以上……雖然這是專門針對 微虛擬機microVM

過去五年,微虛擬機在科技研發(fā)領(lǐng)域中備受關(guān)注。其核心理念是重新包裝和創(chuàng)新了 IBM 在 1960 年代隨著 虛擬機管理程序hypervisor 誕生所發(fā)明的 一些概念和技術(shù):設(shè)計專門作為另一個操作系統(tǒng)上的訪客系統(tǒng)運行的操作系統(tǒng)。這意味著該操作系統(tǒng)必須專門構(gòu)建在虛擬機內(nèi)執(zhí)行,并與特定的管理程序提供的資源進行交互,而不是模擬硬件。

這就意味著訪客操作系統(tǒng)幾乎不需要針對真實硬件的支持,只需要 VirtIO 驅(qū)動,它們可以直接和宿主機的管理程序提供的功能進行交互。反過來說,管理程序無需提供模擬的 PCI 總線、模擬的電源管理、模擬的顯卡、模擬的網(wǎng)卡等等。結(jié)果就是,管理程序本身可以變得更加微型和簡化。

通過無情地縮減虛擬機監(jiān)視器和運行在其內(nèi)部的操作系統(tǒng),這讓兩端都能更小、更簡潔。意味著虛擬機能更少的使用資源,并能更快速地啟動。

目前,這個商業(yè)目標是提供 “無服務(wù)器serverless” 的計算能力。實際上,“無服務(wù)器” 是一種市場雙關(guān)語:當(dāng)然,真實世界中的服務(wù)器仍存在于某個數(shù)據(jù)中心中。但這與提供“基礎(chǔ)設(shè)施即服務(wù)(IaaS)”模型不同,而是提供“函數(shù)即服務(wù)(FaaS)”的模式。這就代表著你不需要了解任何有關(guān)基礎(chǔ)設(shè)施的知識 —— 你的程序直接調(diào)用另一個程序,然后管理工具會運行所需的特定操作,返回結(jié)果,然后刪除用于執(zhí)行計算的虛擬機。你根本不需要知道這過程在何處,如何進行。

對消費者來說,這種技術(shù)的優(yōu)勢在于其快速和易用性。而對服務(wù)提供商而言,因為能夠更快地回收和再利用資源,使得相同的硬件能服務(wù)更多的客戶,這是一個巨大的優(yōu)勢。

AWS 通過一項名為 Lambda 的服務(wù)提供 FaaS,這個名稱是來源于一個深奧的函數(shù)式編程術(shù)語。Lambda 由亞馬遜自家研發(fā)的 Firecracker 管理程序提供支持,F(xiàn)irecracker 同樣也支撐著 Fargate 這一無服務(wù)器服務(wù)。

Firecracker 基于 Linux 內(nèi)核的內(nèi)建 KVM 管理程序:這本身就有別于之前 AWS 基于 Xen 管理程序 的實踐。這也就意味著它本質(zhì)上是一個 Linux-on-Linux 的解決方案。這聽起來對 FreeBSD 內(nèi)核開發(fā)者 Colin Percival 來說像是一個挑戰(zhàn),正如我們 一年前的報道:他決定在 Firecracker 上運行 FreeBSD。然而就如同大部分的計算任務(wù)一樣,優(yōu)化的過程大致上是:首先,讓它可以運行;然后,提高其運行速度。

根據(jù)他本周稍早的一則 推文,他最新的性能優(yōu)化成果相當(dāng)令人震驚:替換排序算法使 FreeBSD 內(nèi)核啟動過程加速了約一百倍,將內(nèi)核加載時間降至了驚人的 25 毫秒。換言之,只有四十分之一秒的時間。

FreeBSD(HEAD)現(xiàn)已不再執(zhí)行其 SYSINIT 上的冒泡排序。如今,我們運行的是更高效、速度大概快了 100 倍的歸并排序:https://cgit.freebsd.org/src/commit/?id=9a7add6d01f3c5f7eba811e794cf860d2bce131d

當(dāng) FreeBSD 內(nèi)核在 Firecracker (配備 1 CPU,128 MB 內(nèi)存)中啟動時,現(xiàn)在有大約 7% 的時間用于執(zhí)行其 SYSINIT 上的冒泡排序。

當(dāng)你需要對上千個條目進行排序時,O(N^2) 的復(fù)雜度可能會帶來較大的影響。因此,是時候?qū)⒚芭菖判蛱鎿Q為更高效的算法了。

這一調(diào)整只是一系列優(yōu)化措施中的最新一個環(huán)節(jié),兩天后,他進一步 詳細 闡述了這些優(yōu)化。這包括了引導(dǎo)所需的初始更改:消除了假定在 Xen 下引導(dǎo)的一些初始化步驟,然后查詢 ACPI 獲取處理器的類型和數(shù)量。這一步出現(xiàn)了問題,因為 Firecracker 并未提供 ACPI。接著,對其仿真的唯一的硬件,串行控制臺,進行初始化也失敗了。

這個微調(diào)只是長期進行的一系列優(yōu)化中的最新一環(huán)。幾天后,他更詳細地描述了這些更改。這些更改描述了讓系統(tǒng)啟動所需的初步改動:移除了假定在 Xen 下引導(dǎo)的幾個初始化步驟,然后嘗試向 ACPI 查詢處理器的類型和數(shù)量。然而,該嘗試失敗了,因為 Firecracker 并不提供 ACPI。接著,初始化它確實模擬的少量硬件之一——串行控制臺——也失敗了。

在內(nèi)核成功啟動之后,內(nèi)存的使用迅速成為了一個問題:Firecracker 默認只給客戶端分配了 128MB 的內(nèi)存,原因在于一個必須修改的假設(shè)。之后是一整套的優(yōu)化清單,每一項都為減少時間作出了一部分貢獻。

即便你不是特別懂技術(shù),閱讀這篇文章也會很有趣。一些步驟更改了在專用硬件上引導(dǎo)的合理選擇,在虛擬環(huán)境中,這些選擇在機器產(chǎn)生、做工作、然后在幾秒鐘內(nèi)再次被刪除的情況下,已經(jīng)無法適用。

Percival 評論 稱:

我相信在相同的環(huán)境下,Linux 的引導(dǎo)時間是 75-80 毫秒,而我已經(jīng)讓 FreeBSD 在 25 毫秒內(nèi)引導(dǎo)。

他 接著 說道:

當(dāng)我開始研究提速引導(dǎo)的過程時,內(nèi)核大約需要 10 秒鐘的時間來引導(dǎo),所以現(xiàn)在我擁有的內(nèi)核引導(dǎo)速度,比我?guī)啄昵翱旒s 400 倍。

目前,已經(jīng)優(yōu)化的系統(tǒng)內(nèi)核是 FreeBSD 14 版的,運行在 x86-64 架構(gòu)上,但也正在進行適配到 Arm64 的工作 —— AWS 是世界上 最大的 Arm 服務(wù)器用戶。

Firecracker 是眾多備受矚目的微虛擬機中的一員,但也有其他的微虛擬機,而且它的成功也激勵了 QEMU 開發(fā)者增加了一個 微虛擬機 平臺。Canonical 的開發(fā)者 Christian Erhardt 在 博客 上介紹了如何在 Ubuntu 中使用這種技術(shù),并且在線代碼開發(fā)環(huán)境供應(yīng)商 Hocus 最近 解釋 了為什么它從 Firecracker 轉(zhuǎn)移到了 QEMU 等價物。

我們可以看到微虛擬機有很多潛在的使用場景,不僅僅是在云場景中。能夠在一個完全不同的 OS 上運行為另一個 OS 構(gòu)建的單個程序,而不需要始終運行完整的模擬環(huán)境,可能在各種情況下都非常方便。

容器是一個非常有用的工具,但在容器中你只能運行與宿主 OS 相同的二進制文件。運行任何其他的東西 —— 比如在 macOS 上運行 Docker Linux 容器 —— 意味著有一些模擬和一個訪客操作系統(tǒng)被隱藏在堆棧的某個位置。這個 VM 能夠越小,并且使用的資源越少,無論是對容器還是整個機器的整體性能來說都會更好。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2020-07-20 14:12:31

Linux60秒命令

2020-12-24 14:43:31

3DAI 人工智能

2025-01-14 09:14:01

JavaScrip函數(shù)undefined

2018-03-02 10:58:17

人工智能AI律師

2025-08-27 09:33:42

2009-12-11 17:31:57

2025-05-27 04:00:01

Docker容器掛載

2017-12-22 10:34:02

大數(shù)據(jù)AI存儲

2010-01-18 10:03:37

FreeBSD porFreeBSD

2009-07-22 11:53:58

科技業(yè)內(nèi)幕曝光

2010-02-24 10:47:51

Ubuntu 9.04

2025-02-05 10:15:00

2023-04-27 13:06:46

AI手機模型

2009-12-17 13:52:06

Fedora 11功能

2009-04-07 15:39:55

LinuxDebianFreeBSD Ker

2011-02-23 14:05:57

2010-12-31 09:23:44

FreeBSD

2024-04-08 07:02:40

AI服務(wù)器人工智能

2020-06-05 14:18:57

Linux性能EC2

2010-07-23 10:48:23

點贊
收藏

51CTO技術(shù)棧公眾號