精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Linux 之父終于被勸動(dòng):用了 30 年的 Linux 內(nèi)核 C 語言將升級(jí)至 C11

系統(tǒng) Linux
今天,Linux 開源社區(qū)宣布,未來會(huì)把內(nèi)核 C 語言版本升級(jí)到 C11,預(yù)計(jì) 5.18 版之后生效,也就是今年 5 月。


還在使用 89 年版 C 語言的 Linux 內(nèi)核,現(xiàn)在終于要做出改變了。今天,Linux 開源社區(qū)宣布,未來會(huì)把內(nèi)核 C 語言版本升級(jí)到 C11預(yù)計(jì) 5.18 版之后生效,也就是今年 5 月。

這個(gè)決定很突然,從發(fā)起問題到官方聲明,不過才一個(gè)星期,要知道說服固執(zhí)的 Linux 之父 Linus Torvalds 可不是件容易的事。事情的原因,說起來還有那么一點(diǎn)偶然的因素。

一個(gè) bug 的連鎖反應(yīng)

問題的起源是來自上周的一次 Linux 社區(qū)討論。

一位名叫 Jakob Koschel 的博士生,在研究阻止與內(nèi)核鏈表 primitive 相關(guān)的預(yù)測(cè)執(zhí)行漏洞時(shí),發(fā)現(xiàn)了這樣一個(gè)問題。

Linux 內(nèi)核廣泛使用由 struct list_head 定義的雙向鏈表

struct list_head {
    struct list_head *next*prev;
    };

這種結(jié)構(gòu)通常嵌入到其他結(jié)構(gòu)中。通過這種方式,可以使用任何相關(guān)的結(jié)構(gòu)類型制作鏈表。

除此之外,內(nèi)核還提供大量可用于遍歷和操作鏈表的函數(shù)和宏。list_for_each_entry () 就是其中之一,這是偽裝成一種控制結(jié)構(gòu)的宏。問題就出在這個(gè)宏上。假設(shè)內(nèi)核包含如下結(jié)構(gòu):

struct foo {
        int fooness;
    struct list_head list;
    };

list 中的元素可用于創(chuàng)建 foo 結(jié)構(gòu)的雙向鏈表。假設(shè)有一個(gè)叫做 foo_list 的結(jié)構(gòu)聲明作為此類鏈表的頭,使用以下代碼可以遍歷此鏈表:

struct foo *iterator;

    list_for_each_entry(iterator&foo_listlist) {
        do_something_with(iterator);
    }
    /* Should not use iterator here */

list 參數(shù)告訴宏在 foo 結(jié)構(gòu)中 list_head 結(jié)構(gòu)的名稱。這個(gè)循環(huán)將為列表中的每個(gè)元素執(zhí)行一次,迭代器指向該元素。由此導(dǎo)致了 USB 子系統(tǒng)中的一個(gè) bug:傳遞給該宏的迭代器在退出宏后還能被使用。

這是一件危險(xiǎn)的事情,所以 Koschel 提交了一個(gè)修復(fù)補(bǔ)丁,在循環(huán)后停止使用迭代器搞定了 bug。

說服 Linus

但是 Linus Torvalds 本人并不太喜歡這個(gè)補(bǔ)丁,也沒有看到它與預(yù)測(cè)執(zhí)行漏洞的關(guān)系。在 Koschel 詳細(xì)解釋后,Linus 承認(rèn)這只是一個(gè)普通的 bug。

然而事情并沒有那么簡(jiǎn)單,Linus 不久后意識(shí)到了真正的根源:傳遞給鏈表遍歷宏的迭代器,必須在循環(huán)本身之外的范圍內(nèi)聲明。這種非預(yù)測(cè)性 bug 發(fā)生的原因是,C89 中沒有“在循環(huán)中聲明變量”。

像 list_for_each_entry () 這樣的宏,從根本上總是將最后一個(gè) HEAD 入口泄漏到循環(huán)之外,僅僅是因?yàn)槲覀儾荒茉谘h(huán)本身中聲明迭代器變量。

如果可以編寫一個(gè)可以聲明自己的迭代器列表遍歷宏,那么迭代器在循環(huán)之外將不可見,并且不會(huì)出現(xiàn)此類問題。但是,由于內(nèi)核停留在 C89 標(biāo)準(zhǔn)上,因此無法在循環(huán)中聲明變量。

Linus 決定,那咱們還是升級(jí)吧,也許是時(shí)候轉(zhuǎn)向 C99 標(biāo)準(zhǔn)了。雖然它也有 20 多年的歷史,但至少比 C89 新,可以在循環(huán)中聲明變量。

既然 C89 如此陳舊,這么多年還沒做出改變呢?Linus 說,那是因?yàn)槲覀冊(cè)谝恍┕爬系?gcc 編譯器版本中遇到了一些奇怪的問題,不能隨便升級(jí)。

但是,現(xiàn)在 Linux 內(nèi)核已將 gcc 的最低要求提升至 5.1 版,因此過去那些奇怪的 bug 應(yīng)該不會(huì)有了。

而另一位核心開發(fā)者 Arnd Bergmann 認(rèn)為,咱們完全可以升級(jí)到 C11 甚至更高版本。但如果升級(jí)到 C17 或 C2x,會(huì)破壞對(duì) gcc-5/6/7 的支持,因此升級(jí)到 C11 更容易實(shí)現(xiàn)。

最終,Torvalds 贊成這個(gè)想法:“好的,請(qǐng)?zhí)嵝盐遥屛覀冊(cè)?5.18 合并窗口的早期嘗試一下。”接下來遷移到 C11 可能會(huì)導(dǎo)致一些意想不到的 bug,但如果一切順利,下一個(gè) Linux 內(nèi)核版本將正式轉(zhuǎn)向 C11。

參考鏈接:

[1]https://lwn.net/SubscriberLink/885941/01fdc39df2ecc25f/

[2]https://news.ycombinator.com/item?id=30459634


責(zé)任編輯:龐桂玉 來源: IT之家
相關(guān)推薦

2022-04-22 18:48:46

LinuxLinux 內(nèi)核C 語言

2022-03-01 08:58:10

Linux 內(nèi)核C11GNU 方言

2022-02-25 14:13:28

LinuxC語言開發(fā)

2021-04-20 11:48:59

LinuxLinux內(nèi)核C++

2022-02-25 15:49:08

Linux開源社區(qū)C語言C11

2021-01-13 10:52:29

C語言Linux計(jì)算機(jī)領(lǐng)域

2022-08-26 09:02:57

代碼庫編程語言

2023-01-03 15:47:09

Linux內(nèi)核C語言

2020-06-01 21:07:33

C11C++11內(nèi)存

2020-11-11 14:48:41

Linux內(nèi)核代碼

2022-06-27 12:44:34

RustLinux

2020-09-18 06:44:57

MSVC微軟C11

2021-03-24 15:17:13

編程語言C語言OS

2022-08-27 10:53:15

C語言Linux內(nèi)核

2011-05-31 13:41:00

C語言

2023-07-26 08:54:39

2021-07-29 20:29:36

Linux c 代碼Java

2010-09-26 10:10:10

Linux內(nèi)核

2013-04-08 16:19:46

Linux內(nèi)核內(nèi)核升級(jí)

2012-07-31 16:11:25

Linux內(nèi)核系統(tǒng)運(yùn)維
點(diǎn)贊
收藏

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

国产日韩欧美精品综合| 伦一区二区三区中文字幕v亚洲| 男人天堂亚洲二区| 色欲无码人妻久久精品| 黄色在线免费| 高清不卡一二三区| 久久精品123| 亚洲精品tv| 亚洲国产精品久久久男人的天堂| 麻豆精品蜜桃一区二区三区| 中文字幕你懂的| 在线日本高清免费不卡| 一区二区三区美女xx视频| ass极品水嫩小美女ass| 日韩影片中文字幕| 亚洲女女做受ⅹxx高潮| 美国av一区二区三区| 国产一区二区三区三州| 99在线精品免费视频九九视| 久久久精品国产网站| 在线 丝袜 欧美 日韩 制服| 国产精品麻豆| 欧美性色综合网| 日韩欧美视频网站| 污视频免费在线观看| 国产精品无遮挡| 精品国产电影| 亚洲AV午夜精品| 毛片av一区二区| 日韩女优人人人人射在线视频| 青青草精品在线视频| 国产在线日韩精品| 亚洲精品乱码久久久久久金桔影视| 成人亚洲免费视频| 国产精品迅雷| 欧美日韩国产中文字幕| 污污污污污污www网站免费| 亚洲欧美视频一区二区| 久久久久国产免费免费| 国产亚洲第一区| www.日日夜夜| 精品系列免费在线观看| 国产精品吴梦梦| 成人免费毛片男人用品| 亚洲看片一区| 91国产高清在线| 国产精品theporn动漫| 在线成人激情| 超碰91人人草人人干| 色欲狠狠躁天天躁无码中文字幕 | 国产精品观看| 欧美巨大黑人极品精男| 五月婷婷一区二区| 欧美激情第8页| 九色精品美女在线| 欧美日韩大片在线观看| 国产精品多人| 97在线视频精品| 婷婷激情五月网| 久久久综合网| 国产mv免费观看入口亚洲| 亚洲大片免费观看| 日韩精品一二三四| 国产精品国产三级国产普通话99| 久久综合精品一区| 日产精品久久久久久久性色| 成人97人人超碰人人99| 国产精品永久入口久久久| 亚洲欧美另类视频| zzijzzij亚洲日本少妇熟睡| 国产伦精品一区二区三区| 人妻无码一区二区三区久久99| av中文字幕不卡| 欧美激情导航| 91se在线| 一区二区三区精品在线观看| 久久久性生活视频| 欧美日韩123区| 欧美日韩国产欧美日美国产精品| 999在线观看| 国产一区二区三区四区五区六区 | 欧美精品1区| 久久青草精品视频免费观看| 亚洲天堂一区在线| 欧美aa在线视频| 亚洲一区二区三区毛片| 狠狠躁日日躁夜夜躁av| 91免费在线视频观看| 天堂社区 天堂综合网 天堂资源最新版| 秋霞午夜在线观看| 天天综合网天天综合色| 日韩 欧美 高清| 高清在线一区二区| 日韩精品在线免费播放| 色噜噜噜噜噜噜| 在线国产欧美| 国产在线观看精品一区二区三区| 黄色av网站免费在线观看| 91成人看片| 亚洲另类春色国产| 亚洲中文字幕无码专区| 亚洲福利影视| 亚洲精品小视频| 欧美日韩在线国产| 久久男女视频| aaa级精品久久久国产片| 免费国产在线视频| 亚洲精品乱码久久久久久久久 | 波多野结衣在线播放| 91成人网在线| 精品少妇人妻av一区二区三区| 成人av动漫在线观看| 欧美福利在线观看| 中国女人一级一次看片| 成人av网站在线观看| 一个色的综合| 成人香蕉视频| 亚洲国产高清福利视频| 5566中文字幕| 玖玖玖国产精品| 国产精品久久久久久久久久久久冷| av在线播放网| 欧美午夜精品久久久久久浪潮| 污视频在线观看免费网站| 精品一区二区三区在线| 色综合久久88| 国产精品视频一二区| 久久人人超碰精品| 日本中文字幕网址| 成人直播在线观看| 成人97在线观看视频| 最近中文字幕在线视频| 久久久一区二区| 欧美牲交a欧美牲交| 天堂中文av在线| avtt综合网| 欧美经典一区二区三区| 91网站在线免费观看| 成人福利在线| 色综合久久久久综合体| 捆绑裸体绳奴bdsm亚洲| 欧美日本不卡高清| 亚洲一区二区久久久久久| 3d成人动漫在线| 91官网在线免费观看| 亚洲最大的黄色网| 亚洲三级国产| 国内视频一区二区| 漫画在线观看av| 亚洲黄色www| 国产午夜精品无码| 国产+成+人+亚洲欧洲自线| 成人午夜免费剧场| 日本免费一区二区三区视频| 欧美成人一区在线| 亚洲国产www| 亚洲综合色区另类av| 国产免费a级片| 在线电影一区| 免费中文日韩| 欧美日韩五区| 久久精品视频播放| 99久久精品国产一区二区成人| 亚洲欧美日本在线| 亚洲熟女一区二区三区| 亚洲福利久久| 玖玖玖精品中文字幕| 六月婷婷综合| 最好看的2019的中文字幕视频| 一区二区视频网站| 亚洲日穴在线视频| www.555国产精品免费| 日韩亚洲精品在线| 日韩激情视频| 国产精品国产亚洲精品| 久久免费成人精品视频| 欧美69xxxxx| 4438x亚洲最大成人网| 久草成人在线视频| 久久久久久影视| 天天综合天天添夜夜添狠狠添| 欧美激情综合色综合啪啪| 久久国产手机看片| 国产第一亚洲| 欧美激情区在线播放| 日本亚洲欧美| 欧美片在线播放| 五月天婷婷网站| 国产日产欧美一区二区视频| 亚洲综合123| 亚洲中字黄色| 在线视频不卡一区二区| 精品亚洲自拍| 国产日韩欧美中文| 韩国成人二区| www.久久久久久.com| 天堂v在线观看| 欧美日韩一区国产| 国产成人无码一区二区三区在线| 日本一区二区三区四区在线视频| 风韵丰满熟妇啪啪区老熟熟女| 水野朝阳av一区二区三区| 看一级黄色录像| 精品高清在线| 国产欧美日韩亚洲| www一区二区三区| 欧美一级淫片aaaaaaa视频| 精品孕妇一区二区三区| 亚洲欧美日韩一区二区在线 | 亚洲精品9999| 国产一区调教| 亚洲一区二区三| 日韩精品免费观看视频| 性欧美激情精品| 精品176二区| 国产一区二区三区久久精品| 国模无码一区二区三区| 91麻豆精品国产91久久久资源速度 | 欧美日韩123| 高清国产在线一区| 涩涩涩久久久成人精品| 国产成人综合亚洲| 末成年女av片一区二区下载| 欧美日韩高清区| 欧美午夜电影一区二区三区| 日韩av有码在线| 亚洲精品一区二区三区新线路 | 欧美综合视频在线| 欧美丰满少妇xxxxx高潮对白| 国产99免费视频| 精品国产乱码久久久久酒店| 免费一级肉体全黄毛片| 中文字幕一区不卡| 精品一区二区6| 久久精品日韩一区二区三区| 一起草在线视频| 国产aⅴ精品一区二区三区色成熟| 向日葵污视频在线观看| 日本中文字幕一区二区有限公司| 成人av一级片| 亚洲伊人观看| 亚洲精品无码久久久久久| 亚洲毛片在线| 被灌满精子的波多野结衣| 国一区二区在线观看| 老司机午夜免费福利视频| 中文乱码免费一区二区三区下载| 麻豆md0077饥渴少妇| 亚洲91视频| 成人在线免费观看网址| 欧美三级第一页| 色撸撸在线观看| 欧美1级日本1级| 91黄色在线看| 一本综合久久| 国产偷人视频免费| 日韩精品欧美成人高清一区二区| 中国丰满人妻videoshd| 可以看av的网站久久看| 免费看黄色一级大片| 免费亚洲电影在线| 99999精品| 成人妖精视频yjsp地址| 91精品啪在线观看国产| 99精品国产热久久91蜜凸| 国产在线观看无码免费视频| 久久久蜜桃精品| 在线观看天堂av| 亚洲免费在线观看| 国产福利久久久| 日韩欧美一区二区三区| 国产情侣呻吟对白高潮| 91精品国产欧美一区二区| 亚洲AV无码国产精品午夜字幕 | 国产精品日韩久久久| 午夜视频在线瓜伦| 激情深爱一区二区| 白嫩情侣偷拍呻吟刺激| 久久久www成人免费毛片麻豆| 五月婷婷综合激情网| 一区二区三区成人在线视频| 成年免费在线观看| 欧美日韩国产免费一区二区 | 国产亚洲欧美激情| 免费国产羞羞网站美图| 五月婷婷综合网| 最新中文字幕免费| 日韩免费视频一区二区| 青青草视频免费在线观看| 久久精品国产久精国产思思| 成人在线免费观看黄色| 国产精品久久久久99| 精品一区二区三区四区五区 | 91久久精品国产91性色tv| 国产又黄又大又粗的视频| 亚洲第一区在线| av免费在线一区二区三区| 欧美精品video| www.久久.com| 国产精品久久波多野结衣| 欧美理论视频| 福利视频一区二区三区四区| 免费观看久久久4p| 在线免费播放av| 亚洲人成精品久久久久久| 国产一级免费视频| 337p日本欧洲亚洲大胆精品| 91看片在线观看| 日本精品性网站在线观看| 亚洲精品视频一二三区| 日韩中文字幕一区二区| 精品动漫av| 欧美精品 - 色网| 久久九九国产精品| 久久久久久久99| 91精品国产综合久久福利软件| 你懂的视频在线| 欧美极品在线播放| 亚洲一区导航| 色大师av一区二区三区| 国产日韩专区| 亚洲成年人av| 亚洲精品免费看| 国产乱码精品一区二区三区精东| 亚洲亚裔videos黑人hd| yellow在线观看网址| 99精彩视频| 在线国产一区| 校园春色 亚洲色图| 久久奇米777| 国产婷婷色一区二区在线观看| 精品福利一区二区三区| av网址在线看| 91在线视频导航| 91精品一区二区三区综合在线爱| 韩国日本美国免费毛片| 久久久亚洲高清| 日韩精品成人免费观看视频| 日韩av一区二区在线| 蜜桃麻豆影像在线观看| 精品免费日产一区一区三区免费| 欧美日韩国产探花| 欧美一区二区三区影院| 亚洲黄色av一区| 国产jzjzjz丝袜老师水多 | 日本一区二区三区免费观看| 午夜一级久久| 一级黄色片大全| 色综合天天综合色综合av| 九色视频在线播放| 国产成人亚洲综合| 精品免费在线| 99re6在线观看| 亚洲人妖av一区二区| 国产又黄又粗又硬| 另类美女黄大片| 国产成人tv| 国产中文字幕视频在线观看| 91丨porny丨首页| 黄色片视频免费| 色偷偷9999www| 久久视频免费| 91动漫在线看| 91麻豆国产福利精品| 国产精品免费无遮挡无码永久视频| 亚洲人成五月天| 日韩成人在线一区| 成人黄色片免费| 99re热这里只有精品视频| 欧美一区免费看| 北条麻妃在线一区二区| ady日本映画久久精品一区二区| 国产成人黄色片| 中文字幕免费不卡在线| 国产女人爽到高潮a毛片| 久久久久国产精品免费网站| 亚洲电影男人天堂| 男女视频在线看| 一区二区三区 在线观看视频| 污污网站在线免费观看| 国产精品久久电影观看| 一区二区三区毛片免费| 天天躁日日躁狠狠躁免费麻豆| 色婷婷一区二区| 国产三级在线播放| 久久综合入口| 国产综合色视频| www.国产色| 超薄丝袜一区二区| 中文字幕精品影院| 日本网站在线看| 欧美性xxxx18| 搞黄网站在线观看| 欧美成人dvd在线视频| 狠狠狠色丁香婷婷综合激情| 日韩av一区二区在线播放| 日韩一区视频在线| 亚洲免费专区| 爱情岛论坛亚洲自拍| 在线视频你懂得一区|