📌 Rustå’ŒLinux的冲çªå·²ç»è¶…越技术层é¢ã€è®©ç¼–ç¨‹å†æ¬¡ä¼Ÿå¤§#32】 - YouTube
Original URL: https://youtu.be/tV4SEMSdjXc
📌 Rustå’ŒLinux的冲çªå·²ç»è¶…越技术层é¢ã€è®©ç¼–ç¨‹å†æ¬¡ä¼Ÿå¤§#32】 - YouTube
簡單來說 電腦裡的ä¸å¤®è™•ç†å™¨CPUå°±åƒä¸€å€‹å¾ˆå¿™çš„大腦 è² è²¬æŒ‡æ®æ‰€æœ‰å·¥ä½œ 但是有些任務 åƒæ˜¯å¾žè¨˜æ†¶é«”(記憶庫)æ¬ç§»å¤§é‡è³‡æ–™çµ¦ç¶²å¡ï¼ˆç¶²è·¯æŽ¥æ”¶å™¨ï¼‰æˆ–顯示å¡ï¼ˆèž¢å¹•畫家) 如果都è¦å¤§è…¦è¦ªè‡ªåŽ»æ¬ æœƒç´¯æ»å®ƒ
所以電腦有個å«åšDMA(直接記憶體å˜å–)的å°å¹«æ‰‹ å°±åƒçµ¦äº†ç¡¬é«”ä¸€å¼µç‰¹åˆ¥é€šè¡Œè‰ è®“å®ƒå€‘å¯ä»¥ç›´æŽ¥åŽ»è¨˜æ†¶åº«æ¬è³‡æ–™ ä¸ç”¨æ¯æ¬¡éƒ½å•大腦
這次的å•題是 有人想用一種å«Rustçš„æ–°å·¥å…·ï¼ˆæ–°æ–¹æ³•ï¼‰ä¾†å¯«çµ¦ç¡¬é«”ç”¨çš„ç¨‹å¼ è®“é€™äº›ç¨‹å¼ä¹Ÿèƒ½ç”¨DMAå°å¹«æ‰‹ ä½†æ˜¯è² è²¬DMA通行è‰ç®¡ç†çš„å…¶ä¸ä¸€ä½ç®¡ç†å“¡ï¼ˆç¶è·è€…)ä¸å–œæ¡é€™å€‹æ–°å·¥å…· 就直接說ä¸å‡†ç”¨ å³ä½¿é€™å€‹æ–°æ–¹æ³•沒有改動舊的通行è‰ç³»çµ±
é€™å¼•èµ·äº†å…¶ä»–äººçš„ä¸æ»¿ 覺得這個管ç†å“¡æ¿«ç”¨æ¬ŠåŠ› 把å°äº‹é¬§å¤§äº† 最後大腦(Linuxçš„å‰µé€ è€…Linus)出來說話 他䏿˜¯æ‰¹è©•新工具 ä¹Ÿä¸æ˜¯æ”¯æŒèˆŠç®¡ç†å“¡çš„個人好惡 而是說管ç†å“¡çš„責任是顧好通行è‰ç³»çµ±æœ¬èº« 䏿˜¯é˜»æ¢åˆ¥äººç”¨æ–°å·¥å…·ä¾†ä½¿ç”¨é€šè¡Œè‰
這個事件就åƒåœ¨ä¸€å€‹å¤§åœ˜éšŠè£¡ 大家為了用新工具åšäº‹æƒ…而çˆåŸ· æœ€å¾Œé ˜å°Žè€…å‡ºä¾†å®šè¦çŸ© ç¢ºä¿æ¯å€‹äººéƒ½åšå¥½è‡ªå·±çš„æœ¬åˆ† ä¸äº’相阻礙
----------------------------------------
這段影片探討了Linuxæ ¸å¿ƒé–‹ç™¼ç¤¾ç¾¤å…§éƒ¨å› æ•´åˆRustèªžè¨€è€Œå¼•ç™¼çš„ä¸€å ´åš´é‡è¡çª æ ¸å¿ƒè°é¡Œåœç¹žè‘—Rust編寫的DMA(直接記憶體å˜å–ï¼‰ä»‹é¢æ˜ 射程å¼ç¢¼æäº¤å¼•發的çˆè°
è¡çªå§‹æ–¼2025å¹´åˆ ä¸€ä½Rust開發者æäº¤äº†ä¸€å€‹ç”¨æ–¼Rust驅動程å¼çš„DMA介颿˜ 射(PR) é€™é …æäº¤æœ¬èº«ä¸¦æœªä¿®æ”¹ç¾æœ‰çš„C語言DMA程å¼ç¢¼ 僅是在Rust目錄下æä¾›äº†æ–¹ä¾¿Rust程å¼ç¢¼å‘¼å«DMAåŠŸèƒ½çš„ä»‹é¢ ç„¶è€Œ é€™é …PRéåˆ°äº†è² è²¬DMA Mapping Helpers元件的其ä¸ä¸€ä½ç¶è·è€…Christoph Helwigçš„å …æ±ºåå° ä»–çš„åå°ç†ç”±ä¸¦éžæŠ€è¡“性 而是基於他ä¸å¸Œæœ›Rust程å¼ç¢¼å‡ºç¾åœ¨Linuxæ ¸å¿ƒä¸ é€™é¡¯ç¤ºå‡ºé€™æ¬¡è¡çªçš„æœ¬è³ªå·²å¾žæŠ€è¡“探討å‡ç´šç‚ºæ¬ŠåЛ層é¢çš„阻礙
Linuxæ ¸å¿ƒçš„é–‹ç™¼æŽ¡ç”¨å§”æ´¾æ¨¡å¼ Linus Torvaldsæ“æœ‰æœ€çµ‚決定權 但實際程å¼ç¢¼å¯©æ ¸å’Œåˆä½µç”±çœ¾å¤šåˆ†æ•£åœ¨ä¸åŒå…ƒä»¶çš„ç¶è·è€…è² è²¬ ç¶è·è€…å°å…¶è² è²¬çš„å…ƒä»¶æ“æœ‰æ¥µå¤§çš„æ¬ŠåŠ› å¯ä»¥æ±ºå®šå“ªäº›PRå¯ä»¥è¢«æŽ¥å— Helwigæ£æ˜¯åˆ©ç”¨äº†ä»–在DMA相關元件的ç¶è·è€…身份來阻æ¢è©²PRçš„åˆä½µ
é€™å ´å…§éƒ¨åƒµå±€è¢«å¦ä¸€ä½èˆ‡DMA無直接關係的ç¶è·è€…Hector Martin公開化 Martin在社群媒體上批評Helwig濫用權力 並呼籲Linus介入 Linuså°æ¤äº‹çš„回應分為兩階段 首先 他公開批評了Martin將內部çˆè°å…¬çœ¾åŒ–的行為 èªç‚ºé€™ä¸åˆ©æ–¼ç¤¾ç¾¤æ°£æ°› Martin隨後è¾åŽ»äº†ç¶è·è€…è·ä½ 但三天後 Linus冿¬¡ç™¼è¨€ 這次他直接é‡å°å•é¡Œæ ¸å¿ƒé€²è¡Œä»²è£
Linus明確指出 ç¶è·è€…çš„è·è²¬æ˜¯ç¶è·å…¶è² 責的元件程å¼ç¢¼ 而éžé™åˆ¶å…¶ä»–使用者如何使用該元件 他強調 用Rust為DMAåŠŸèƒ½ç·¨å¯«ä¸€å€‹ä»‹é¢æ˜ å°„ 屬於DMA的使用者行為 既然該程å¼ç¢¼ä¸å¹²æ¶‰ç¾æœ‰C語言部分 ç¶ç¶è·è€…就沒有ç†ç”±æ‹’絕 Linusçš„è£æ±ºç‰åŒæ–¼åŠƒæ¸…äº†ç•Œç·š ç¶è·è€…å¯ä»¥é¸æ“‡ä¸åƒèˆ‡Rust開發 但無權阻æ¢å…¶ä»–人使用Rust來與其ç¶è·çš„元件互動
å—Linusè£æ±ºå½±éŸ¿ Helwig將自己從部分DMA元件的ç¶è·è€…åå–®ä¸ç§»é™¤ 該Rust DMA PR得以繼續修改和完善 並最終被åˆä½µ 但作為一個ç¨ç«‹çš„æ–°å…ƒä»¶ 被指派了新的ç¶è·è€… 這次事件凸顯了Linuxæ ¸å¿ƒç¶è·è€…æ¬ŠåŠ›çµæ§‹çš„æŒ‘戰以åŠLinus在最終解決紛çˆä¸çš„æ¬Šå¨è§’色 åŒæ™‚為Rust在Linuxæ ¸å¿ƒçš„é€²ä¸€æ¥æ•´åˆå¥ 定了原則基礎
----------------------------------------
å½±ç‰‡ä¸æåˆ°çš„ä¸»è¦è§€é»žå¦‚下
1 DMA是電腦ä¸å…許硬體直接å˜å–記憶體的é‡è¦åŠŸèƒ½ 大大æé«˜æ•ˆçއ 減少CPUè² æ“” 在Linuxæ ¸å¿ƒä¸å°¤ç‚ºé‡è¦ å› ç‚ºé©…å‹•ç¨‹å¼å¤§é‡ä½¿ç”¨å®ƒ
2 Rust for Linuxé …ç›®ä»¥ç¡¬é«”é©…å‹•ç‚ºåˆ‡å…¥é»ž Rust版本的DMA介颿˜¯å…¶é‡è¦ä¸€æ¥ 該PR旨在為Rusté©…å‹•æä¾›çµ±ä¸€çš„DMA呼å«ä»‹é¢ ä¸ä¿®æ”¹ç¾æœ‰C程å¼ç¢¼
3 Linuxæ ¸å¿ƒçš„æ¬ŠåŠ›çµæ§‹é«˜åº¦ä¾è³´ç¶è·è€… ç¶è·è€…å°å…¶è² 責的特定程å¼ç¢¼å…ƒä»¶æ“æœ‰é«˜åº¦å¯©æ ¸å’Œåˆä½µæ¬Š å¯ä»¥æ†‘個人判斷拒絕PR
4 çˆè°æ ¸å¿ƒåœ¨æ–¼ ç¶è·è€…Christoph Helwig基於個人ä¸å–œæ¡Rust而阻æ¢äº†Rust DMA介é¢PRçš„åˆä½µ 顯示權力被用於阻礙技術整åˆè€Œéžç¶è·ç¨‹å¼ç¢¼æœ¬èº«
5 Hector Martin將內部è¡çªå…¬çœ¾åŒ–的行為 引發Linus首次回應 Linusèªç‚ºå…§éƒ¨çŸ›ç›¾æ‡‰åœ¨å…§éƒ¨è§£æ±º 批評公眾化行為 å°ç¶è·è€…ç¤¾ç¾¤çš„ç©©å®šæ€§è¡¨é”æ“”憂
6 Linus的最終仲è£åŠƒæ¸…äº†ç¶è·è€…çš„è·è²¬ç¯„åœ ç¶è·è€…è² è²¬ç¶è·ç¨‹å¼ç¢¼ 但無權é™åˆ¶ä»–人用ä¸åŒèªžè¨€æˆ–æ–¹å¼ä¾†ä½¿ç”¨è©²åŠŸèƒ½ 為Ruståœ¨æ ¸å¿ƒä¸çš„åœ°ä½æä¾›äº†æ˜Žç¢ºç•Œç·š
7 æ¤æ¬¡äº‹ä»¶å°Žè‡´Helwig部分退出DMA相關ç¶è·è€…è·ä½ Rust DMA介é¢PR以新元件形å¼è¢«æŽ¥å— 確立了Rust程å¼ç¢¼åœ¨æ ¸å¿ƒä¸ç¨ç«‹å˜åœ¨ä¸¦èˆ‡C程å¼ç¢¼äº’動的模å¼
----------------------------------------
✅ DMAå…許硬體直接å˜å–記憶體æå‡æ•ˆçއ
âš ï¸ Rust DMA介é¢PR被ç¶è·è€…基於個人å好阻擋
📌 Linuxç¶è·è€…å°å…¶è² 責的元件有é‡è¦æ±ºå®šæ¬Š
⌠公開社群內部è¡çªè¢«Linus批評
âš–ï¸ Linusä»²è£ ç¶è·è€…è·è²¬æ˜¯ç¶è·ç¨‹å¼ç¢¼è€Œéžé™åˆ¶ä½¿ç”¨æ–¹å¼
💡 Rust DMA介é¢PR在Linusè£æ±ºå¾Œä»¥æ–°å…ƒä»¶å½¢å¼åˆä½µ
🚪 阻礙Rustæ•´åˆçš„ç¶è·è€…å› è£æ±ºè€Œèª¿æ•´è§’色
----------------------------------------
ç¬¬ä¸€é¡Œï¼šåœ¨é›»è…¦ä¸ DMA(Direct Memory Access)的主è¦ä½œç”¨æ˜¯ä»€éº¼ï¼Ÿ
A è² è²¬åŸ·è¡Œæ‡‰ç”¨ç¨‹å¼çš„計算
B 讓硬體å¯ä»¥ç›´æŽ¥å˜å–記憶體 ä¸éœ€è¦CPUä¸ä»‹
C 管ç†ç¶²è·¯é€£ç·šå’Œè³‡æ–™å‚³è¼¸
D 控制使用者介é¢çš„顯示
æ£ç¢ºç”案:B
解釋:DMAçš„è¨è¨ˆç›®çš„æ˜¯è®“硬體è¨å‚™ï¼ˆå¦‚ç¶²å¡ã€ç¡¬ç¢Ÿï¼‰èƒ½å¤ 直接與記憶體交æ›è³‡æ–™ 而ä¸éœ€æ¯æ¬¡éƒ½é€éŽCPUè™•ç† å¤§å¤§æé«˜æ•ˆçŽ‡ä¸¦æ¸›è¼•CPUè² æ“”
ç¬¬äºŒé¡Œï¼šæ ¹æ“šå½±ç‰‡å…§å®¹ 為什麼Rust編寫的DMA介é¢PR最åˆè¢«æ‹’絕?
A 程å¼ç¢¼å˜åœ¨åš´é‡çš„æŠ€è¡“éŒ¯èª¤æˆ–å®‰å…¨æ¼æ´ž
B å®ƒä¿®æ”¹äº†ç¾æœ‰çš„C語言DMAæ ¸å¿ƒç¨‹å¼ç¢¼
C è² è²¬ç›¸é—œå…ƒä»¶çš„ç¶è·è€…ä¸å–œæ¡Rust語言 å°‡å…¶è¦–ç‚ºä¸æ‡‰é€²å…¥æ ¸å¿ƒçš„程å¼ç¢¼
D Rustèªžè¨€ä¸æ”¯æ´DMA功能
æ£ç¢ºç”案:C
解釋:影片明確指出 該PR被拒絕的主è¦åŽŸå› ä¸¦éžæŠ€è¡“å•題 è€Œæ˜¯è² è²¬DMA Mapping Helpersçš„ç¶è·è€…Christoph Helwigä¸å¸Œæœ›Rust程å¼ç¢¼å‡ºç¾åœ¨Linuxæ ¸å¿ƒä¸ é€™æ˜¯å€‹äººåå¥½è€ŒéžæŠ€è¡“è€ƒé‡
第三題:Linus Torvalds在這次Rust for Linuxè¡çªä¸çš„æœ€çµ‚ä»²è£ å®šç¾©äº†ç¶è·è€…什麼樣的è·è²¬ï¼Ÿ
A ç¶è·è€…有權力決定所有程å¼ç¢¼æ˜¯å¦èƒ½é€²å…¥æ ¸å¿ƒ ä¸è«–其功能或語言
B ç¶è·è€…的主è¦è·è²¬æ˜¯ç¶è·å…¶è² 責的程å¼ç¢¼å…ƒä»¶ 但無權é™åˆ¶å…¶ä»–äººç”¨åˆæ³•æ–¹å¼ï¼ˆå¦‚ä¸åŒèªžè¨€çš„介é¢ï¼‰ä¾†ä½¿ç”¨è©²å…ƒä»¶çš„功能
C ç¶è·è€…å¿…é ˆå„ªå…ˆæŽ¥å—æ‰€æœ‰æäº¤çš„PR ä»¥åŠ é€Ÿé–‹ç™¼é€²åº¦
D ç¶è·è€…åªèƒ½å¯©æ ¸C語言編寫的程å¼ç¢¼ å°æ–¼Rustç‰å…¶ä»–語言的程å¼ç¢¼æ²’有發言權
æ£ç¢ºç”案:B
解釋:Linusçš„æœ€çµ‚è£æ±ºæ ¸å¿ƒè§€é»žæ˜¯ ç¶è·è€…çš„è·è²¬æ˜¯ç¢ºä¿å…¶è² 責的程å¼ç¢¼æœ¬èº«è‰¯å¥½é‹è¡Œ 而éžé™åˆ¶å¤–部程å¼ç¢¼å¦‚ä½•åˆæ³•地呼å«å’Œä½¿ç”¨é€™äº›åŠŸèƒ½ 用Rust編寫一個介é¢ä¾†ä½¿ç”¨DMAæ˜¯è¢«è¦–ç‚ºåˆæ³•的使用者行為 ç¶è·è€…ç„¡æ¬Šåƒ…å› èªžè¨€ä¸åŒè€Œé˜»æ“‹
✡ Oliå°æ¿ƒç¸® Summary bot 為您濃縮é‡é»ž ✡
â–¶ https://youtu.be/tV4SEMSdjXc
Comments ()