成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux 黑話解釋:什么是上游和下游?

系統(tǒng) Linux
“上游upstream” 和 “下游downstream”這兩個術語是相當模糊的,我認為一般人并不會真正使用它們。如果你只是一個 Linux 用戶,并且不編寫或維護軟件,那么很有可能這些術語對你來說毫無意義,但它們對 Linux 世界中各個社區(qū)之間的交流方式有益的。

“上游upstream” 和 “下游downstream”這兩個術語是相當模糊的,我認為一般人并不會真正使用它們。如果你只是一個 Linux 用戶,并且不編寫或維護軟件,那么很有可能這些術語對你來說毫無意義,但它們對 Linux 世界中各個社區(qū)之間的交流方式有益的。

這些術語被用于網(wǎng)絡、編程、內(nèi)核,甚至在非計算機領域,如供應鏈。當我們談論上游和下游的時候,討論背景是很重要的。

在其最簡單的形式中,上游和下游是信息流動的方向。

由于我們都是在連接到互聯(lián)網(wǎng)的情況下閱讀這篇文章的,讓我們看看適用于互聯(lián)網(wǎng)服務提供商(ISP)的上游/下游例子。這里,ISP 關注的是流量。上游流量是指數(shù)據(jù)是從不同的 ISP 的用戶處傳來的。例如,如果你有一個提供訂閱通訊的網(wǎng)站,我發(fā)送的訂閱信息就是上游數(shù)據(jù)。

下游流量是指從一個用戶發(fā)送到不同 ISP 的另一個用戶的數(shù)據(jù),它被認為是下游流量。使用同樣的訂閱例子,假設我的訂閱請求被批準,我在一封郵件中收到“歡迎”說明,在又一封郵件中收到最新的新聞簡報。在這種情況下,數(shù)據(jù)是順流而下的,因為它是由你(好吧,可能是作為代表你進行操作的自動化軟件)發(fā)送給我,一個來自另外 ISP 的用戶。

總結:我需要或想要的東西(你的通訊)是上游的。你提供給我的東西(歡迎詞和實際的通訊)是下游的。

數(shù)據(jù)是在上游還是在下游,對我們用戶來說可能并不重要,但對監(jiān)控帶寬使用的服務器管理員,以及發(fā)行商distributor(發(fā)行版的制作者)和程序員來說卻很重要。

在 Linux 世界里,上游和下游有兩個主要背景。一個是關于內(nèi)核的,另一個是關于應用程序的。還有其他的,但我希望我可以通過這兩個來表達我的想法。

Linux 內(nèi)核背景下的上游和下游

Linux 就是 內(nèi)核。在創(chuàng)建發(fā)行版時,Linux 發(fā)行版首先使用未經(jīng)修改的內(nèi)核源代碼。然后添加必要的補丁,對內(nèi)核進行配置。內(nèi)核的配置是基于發(fā)行版想要提供的功能和選項。一旦決定了,就相應地創(chuàng)建了內(nèi)核。

原始內(nèi)核來自發(fā)行版的上游。當發(fā)行版得到源代碼時,它就流向下游。一旦發(fā)行版得到了內(nèi)核代碼,它就會留在發(fā)行商那里,同時對它進行改造。它仍然是我們用戶的上游,直到它準備好被發(fā)布。

發(fā)行版創(chuàng)建的內(nèi)核版本將添加補丁和啟用某些功能和選項。這種配置是由發(fā)行商決定的。這就是為什么有幾種 Linux 流派的原因,例如,Debian 與 Red Hat。發(fā)行商會決定向他們的用戶群提供哪些選項,并相應地編譯內(nèi)核。

一旦這項工作完成,它就會放在一個倉庫中準備發(fā)布,我們就可以獲得一份副本。這個副本向下游流向我們。

同樣地,如果發(fā)行商發(fā)現(xiàn)了內(nèi)核中的一個錯誤,修復了它,然后將補丁發(fā)送給內(nèi)核開發(fā)者,這樣他們就可以為下游的每個人修補內(nèi)核。這被稱為對上游的貢獻,因為這里的流量是向上流向原始來源的。

在應用程序背景下的上游和下游

同樣,從技術上講,Linux 是內(nèi)核,其他都是附加軟件。發(fā)行商也會在他們的項目中加入額外的軟件。在這種情況下,有幾個上游。一個發(fā)行版可以包含任何數(shù)量的應用程序,如 X、KDE、Gnome 等等。

讓我們想象一下,你在使用 nano 編輯器時發(fā)現(xiàn)它不能正常工作,于是你向發(fā)行版提交了一份錯誤報告。發(fā)行商的程序員會查看它,如果發(fā)現(xiàn)他們在 nano 中插入了一個錯誤,他們將修復它并在其倉庫中發(fā)布一個新版本。如果他們發(fā)現(xiàn)不是他們制造了這個錯誤,發(fā)行商將向上游的 nano 程序員提交一份錯誤報告。

當涉及到像錯誤報告、功能請求等事情時,最好是將它們發(fā)送到上游的發(fā)行商那里,因為他們維護著你所使用的發(fā)行版的內(nèi)核和附加應用程序。例如,我在幾臺機器上使用一個叫做 Q4OS 的發(fā)行版。如果我發(fā)現(xiàn)一個程序中的錯誤,我會把它報告給 Q4OS 的人。如果你碰巧使用的是 Mint,你會把它報告給 Mint 項目。

比如說,如果你在一個普通的 Linux 論壇上發(fā)布一個問題,而你提到你在使用 Mint,你肯定會得到這樣的回復。“這個問題最好在 Mint 論壇上處理”。用之前的 nano 錯誤的例子,有可能是 Mint 的程序員對 nano 進行了修改,使其在他們的發(fā)行版中運行得更好。如果他們確實犯了一個錯誤,他們會想知道這個錯誤,而且在犯了這個錯誤之后,他們會是修復它的人。

一旦修復,更新的程序就會被放入你可以使用的倉庫。當你得到更新時,它就會順流而下到你那里,像這樣:

如果發(fā)行商進行了修復,新版本就會在發(fā)行倉庫中提供。

如果該應用程序的程序員進行了修復,它將被發(fā)送到測試新代碼的發(fā)行商那里。一旦發(fā)現(xiàn)它工作正常,它就會被放在倉庫中,向下游流去。

自動流向下游

曾經(jīng)有一段時間,用戶得自己獲取更新。用戶會得到更新的源代碼并編譯一個新的可執(zhí)行文件。隨著時間的推移,像 apt 這樣的工具被創(chuàng)造出來,允許用戶從軟件庫中提取更新的二進制文件(可執(zhí)行文件)。apt 程序是 Debian 的,但其他發(fā)行版也有他們自己的用于此用途的類似程序。

像 apt 這樣的程序負責處理上游/下游的工作。如果你用升級選項運行 apt,像這樣:

sudo apt upgrade

它將查看(上游)發(fā)行倉庫,找到任何需要的更新包,并將它們拉到你的機器上(下游)并安裝它們。

有些發(fā)行版會更進一步。發(fā)行版的程序員和維護者總是在檢查他們的產(chǎn)品。很多時候,應用程序的程序員會對他們的程序進行改進。系統(tǒng)庫會經(jīng)常更新,安全漏洞也會被堵上,等等。這些更新會提供給發(fā)行商,然后由發(fā)行商在發(fā)行倉庫中提供新的版本。

與其讓你每天運行 apt,一些發(fā)行版會提醒你有可用的更新并詢問你是否需要它們。如果你想要,只要接受,更新就會被發(fā)送到你的機器上并安裝。

總結

上游和下游實際上只是數(shù)據(jù)流的方向。這個數(shù)據(jù)在上游或下游流動的方式取決于最終需要誰來處理它。基本上,程序員是上游,用戶是下游。

同樣,作為用戶,我們真的不需要關心這些術語,但這些概念確實有助于軟件的開發(fā)和維護。通過將工作引向適當?shù)男〗M,避免了重復工作。這也確保了標準的維護。例如,Chrome 瀏覽器可能需要做一些細微的改變,以便在某個發(fā)行版上運行,但它的核心是 Chrome 瀏覽器,它的外觀和行為都不會有大的變化。

如果你發(fā)現(xiàn)你的發(fā)行版中的任何程序有錯誤,只需向發(fā)行版的維護者報告,這通常是通過他們的網(wǎng)站進行的。你將會把它發(fā)送到上游,但你是否記得你在向上游發(fā)送報告并不重要。

責任編輯:未麗燕 來源: Linux中國
相關推薦

2020-09-16 06:07:17

LinuxUbuntu LTS長期支持

2020-09-04 06:26:22

Linux桌面環(huán)境操作系統(tǒng)

2021-12-16 14:25:03

Linux定時任務

2020-09-13 09:19:58

Linux Linux 發(fā)行版操作系統(tǒng)

2020-10-24 17:44:57

LinuxFOSS自由和開源軟件

2020-11-10 22:57:32

LinuxGUICLI

2020-11-10 11:29:36

LinuxGUICLI

2020-09-22 07:32:56

Linuxstat 命令滾動發(fā)行版

2020-10-31 17:00:33

Linux顯示管理器

2020-09-22 07:33:50

Linux

2021-12-20 14:56:07

LinuxTTY

2021-09-23 16:43:48

Linux黑話解釋

2020-09-07 19:45:37

Linux顯示服務器黑話解釋

2022-04-03 13:17:21

Linux黑話解釋GRUB

2023-11-22 10:51:25

LinuxSuper

2020-10-13 12:29:38

Linux包管理器

2023-08-06 06:47:29

2021-03-17 10:45:03

Linux服務器命令

2019-08-30 09:05:16

Linux內(nèi)核開源

2023-11-29 16:02:29

光纖網(wǎng)絡
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品一区久久久 | 欧美一级二级视频 | 黄网站在线播放 | 国产一区| 97超碰站 | 999热在线视频 | 成人国产在线视频 | 亚洲精品视频免费 | 国产高清在线观看 | 成人在线观看黄 | 全免费a级毛片免费看视频免 | 99久久婷婷| 亚洲欧美一区二区三区国产精品 | 黄色av网站在线免费观看 | 欧美午夜剧场 | 中文字幕的av | 国产一级电影在线 | 国产精品美女www爽爽爽视频 | 国产乱码精品一品二品 | 久久国产精品久久国产精品 | 国产一区不卡 | 欧美成人免费在线视频 | 精品中文字幕视频 | 色毛片| 中文字字幕在线中文乱码范文 | 欧美亚洲网站 | 夫妻午夜影院 | 亚洲国产专区 | 在线欧美一区二区 | 91看国产 | 青青草av网站 | 日韩国产欧美在线观看 | 亚洲国产精品一区在线观看 | 91亚洲国产 | 天堂色区 | 九九99精品 | 99re视频在线免费观看 | 久久蜜桃av一区二区天堂 | 国产999精品久久久久久 | 精品1区2区 | 中文成人在线 |