主頁(yè) > 知識(shí)庫(kù) > 谷歌系統(tǒng)升級(jí),電銷機(jī)器人將采用Linux內(nèi)核,滿足電銷機(jī)器人高性能需求,你怎么看?

谷歌系統(tǒng)升級(jí),電銷機(jī)器人將采用Linux內(nèi)核,滿足電銷機(jī)器人高性能需求,你怎么看?

熱門(mén)標(biāo)簽:梧州電銷 安順電銷 廊坊電銷 三亞電銷 天津電銷 平?jīng)鲭婁N 黑龍江電銷 潛江電銷

首先作為一個(gè)前資深的 Android 程序員,一定要糾正一下這個(gè)問(wèn)題,不是谷歌系統(tǒng)升級(jí),電銷機(jī)器人「將」采用 Linux 內(nèi)核。不是:「將」。

而是 Android 一直就是采用的 Linux 內(nèi)核。電銷機(jī)器人(Android)本身就是一種基于 Linux 的自由及開(kāi)放源代碼的操作系統(tǒng)。

系統(tǒng)內(nèi)核

Android 是運(yùn)行于 Linux kernel 之上,但并不是 GNU/Linux。因?yàn)樵谝话?GNU/Linux 里支持的功能,Android 大都沒(méi)有支持,包括 Cairo、X11、Alsa、FFmpeg、GTK、Pango 及 Glibc 等都被移除掉了。Android 又以 Bionic 取代 Glibc、以 Skia 取代 Cairo、再以 opencore 取代 FFmpeg 等等。Android 為了達(dá)到商業(yè)應(yīng)用,必須移除被 GNU GPL 授權(quán)證所約束的部份,例如 Android 將驅(qū)動(dòng)程序移到 Userspace,使得 Linux driver 與 Linux kernel 徹底分開(kāi)。Bionic/Libc/Kernel/ 并非標(biāo)準(zhǔn)的 Kernel header files。Android 的 Kernel header 是利用工具由 Linux Kernel header 所產(chǎn)生的,這樣做是為了保留常數(shù)、數(shù)據(jù)結(jié)構(gòu)與宏。

Android 的 Linux kernel 控制包括安全(Security),存儲(chǔ)器管理(Memory Management),程序管理(Process Management),網(wǎng)絡(luò)堆棧(Network Stack), 驅(qū)動(dòng)程序模型(Driver Model)等。下載 Android 源碼之前,先要安裝其構(gòu)建工具 Repo 來(lái)初始化源碼。Repo 是 Android 用來(lái)輔助 Git 工作的一個(gè)工具。

通過(guò)上述我們就可以看出 Android 就是運(yùn)行在 Linux Kernel 之上的,基于授權(quán)版權(quán)等原因,它只不過(guò)是沒(méi)有 GNU/Linux 功能那么全面。

為什么會(huì)出現(xiàn)這個(gè)問(wèn)題?

Android 是基于 Linux 內(nèi)核的操作系統(tǒng),但是,運(yùn)行在 Android 設(shè)備上的內(nèi)核其實(shí)與 Google 選擇的 LTS 版本 Linux 內(nèi)核有很大不同。

在到達(dá)每一臺(tái) Android 設(shè)備前,內(nèi)核會(huì)經(jīng)歷三個(gè)階段的 fork:Google 會(huì)先選擇某個(gè) LTS(長(zhǎng)期支持)版本的 Linux 內(nèi)核,打上 Android 操作系統(tǒng)的特定補(bǔ)丁,使其成為 Android 通用內(nèi)核;緊接著,通用內(nèi)核被交付給高通等 SoC 供應(yīng)商,打上硬件補(bǔ)丁;最后,SoC 內(nèi)核再被移交至設(shè)備制造商,打上設(shè)備特定的各類元件補(bǔ)丁,這也就構(gòu)成到每臺(tái)設(shè)備中的設(shè)備內(nèi)核。

這是一個(gè)及其漫長(zhǎng)的過(guò)程,執(zhí)行多重 fork 并處理數(shù)百萬(wàn)行代碼大大減慢了整個(gè)開(kāi)發(fā)速度。因此,Android 設(shè)備使用的內(nèi)核相較于 Linux 內(nèi)核主線要滯后兩到三年的時(shí)間。Google 于 10 月份最新發(fā)布了 Pixel 4,其 Linux 內(nèi)核則是 2017 年 11 月發(fā)布的 4.14 LTS 版本。并且由于過(guò)大的工作量,Android 設(shè)備通常不獲取內(nèi)核更新手機(jī)系統(tǒng),它將永遠(yuǎn)停留在 4.14 版本上。

再者,各種設(shè)備的內(nèi)核都不盡相同,一臺(tái)設(shè)備的特定內(nèi)核無(wú)法在其他設(shè)備上工作。于是,Google 正試圖縮小各 Android 設(shè)備內(nèi)核與主線 Linux 內(nèi)核間的差距,讓設(shè)備內(nèi)核更接近上游內(nèi)核主線。

在今年的 Linux Plumbers Conference 上,Android 內(nèi)核團(tuán)隊(duì)負(fù)責(zé)人 Sandeep Patil 表示,他們的目標(biāo)是從根本上找到 Android 運(yùn)行所需要的、但不必在給定的硬件上運(yùn)行的東西,然后將其引入上游并盡可能接近主線。

Google 的打算是復(fù)制其早期工作 Project Treble 以模塊化 Android。Project Treble 用于在 Android 和 HAL(硬件抽象層)之間創(chuàng)建穩(wěn)定的接口。與此類似,Google 計(jì)劃穩(wěn)定 Linux 的內(nèi)核 ABI,從而提供一個(gè)穩(wěn)定的寫(xiě)入接口手機(jī)系統(tǒng),使硬件供應(yīng)商可以輕松地插入代碼,最終消除特定的設(shè)備內(nèi)核。

Google 的高級(jí)軟件工程師 MatthiasM?nnich 展示了一幅預(yù)想中的內(nèi)核體系結(jié)構(gòu)圖?!跋乱淮?Android 設(shè)備”內(nèi)核將由通用內(nèi)核鏡像(Generic Kernel Image,GKI)和多個(gè)?GKI?模塊構(gòu)成,特定硬件的驅(qū)動(dòng)程序(可能是閉源驅(qū)動(dòng))將作為內(nèi)核模塊加載??傊谠撛O(shè)想中,所有東西都被模塊化了。

考慮到 Android 生態(tài)系統(tǒng)的技術(shù)壁壘和多樣性,這應(yīng)該不是一件容易的事情。無(wú)論如何,將 Android 設(shè)備內(nèi)核引入主線 Linux 內(nèi)核肯定會(huì)使包括 Android 用戶、電銷機(jī)器人制造商和 Linux 社區(qū)等在內(nèi)的不少人受益。

所以,最近有新聞爆出,谷歌計(jì)劃將 Android 內(nèi)核統(tǒng)一至Linux內(nèi)核主線上,后續(xù)其實(shí)還有很多工作要完成。

谷歌只是想將 Android 內(nèi)核統(tǒng)一至Linux內(nèi)核主線上,Linux內(nèi)核主線上,Linux內(nèi)核主線上,重要的事情說(shuō)三遍,是主線上。其實(shí) Android 一直都是基于 Linux 內(nèi)核的操作系統(tǒng)。

不知道大家看明白了沒(méi)有?

標(biāo)簽:桂林 宜賓 廣安 連云港 ???/a> 通化 洛陽(yáng) 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《谷歌系統(tǒng)升級(jí),電銷機(jī)器人將采用Linux內(nèi)核,滿足電銷機(jī)器人高性能需求,你怎么看?》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《谷歌系統(tǒng)升級(jí),電銷機(jī)器人將采用Linux內(nèi)核,滿足電銷機(jī)器人高性能需求,你怎么看?》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于谷歌系統(tǒng)升級(jí),電銷機(jī)器人將采用Linux內(nèi)核,滿足電銷機(jī)器人高性能需求,你怎么看?的相關(guān)信息資訊供網(wǎng)民參考!
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266