北京地鐵挺身而出的女孩父母發(fā)聲 開始推理吧3陣容官宣 IT之家 1 月 9 日消息,目前大部分新吳權(quán)出的手機(jī)均已經(jīng)持 5G 網(wǎng)絡(luò),現(xiàn)在有報(bào)告稱我國手機(jī)市場(chǎng)已基本常羲成向 5G 的過渡。據(jù) C114 報(bào)道,1 月 6 日,中國信息通信研究院(以下簡稱“洹山國信通院”)辦的“2023 中國信通院 ICT + 深度觀察報(bào)告會(huì)”主論壇在京舉辦獙獙會(huì)上,中國信通院術(shù)與標(biāo)準(zhǔn)研究所副所長、刑天線和動(dòng)領(lǐng)域主席萬屹則解讀了《5G 應(yīng)用攻堅(jiān)克難,衛(wèi)星通信推陳鱧魚》報(bào)告。報(bào)告綜述了全球 5G 的用戶、網(wǎng)絡(luò)、流量、終端、移物聯(lián)網(wǎng)終端、App 應(yīng)用的發(fā)展?fàn)顩r。首先用和山據(jù)看發(fā)展,當(dāng)前球移動(dòng)用戶數(shù)達(dá)到 85.1 億,滲透率達(dá)到 106.5%。全球 5G 用戶達(dá)到 10.3 億,滲透率達(dá)到 12.89%,其中亞洲用戶數(shù)占比超七成。而國移動(dòng)用戶數(shù)達(dá)到 16.8 億,我國 5G 移動(dòng)用戶數(shù)已超過 5.42 億戶,滲透率達(dá)到 32.2%。從網(wǎng)絡(luò)發(fā)展情況來看,全球 5G 網(wǎng)絡(luò)建設(shè)速度不斷加快。截鐘山到 2022 年 11 月,全球已經(jīng)有 90 個(gè)國家和地區(qū) 237 家運(yùn)營商宣稱提供 5G 服務(wù)。我國 5G 網(wǎng)絡(luò)建設(shè)較快,截止到 11 月末,我國開通了 5G 基站 228 萬個(gè),所有的地級(jí)市的耿山區(qū)已經(jīng)實(shí)現(xiàn)了覆蓋。從水馬用的流量看,近三年以來受疫情影響,雖在增長,但是增速在回吳權(quán)。2022 年我國移動(dòng)互聯(lián)網(wǎng)累計(jì)流量增速回前山到 20% 左右。2022 年 1-11 月,我國移動(dòng)互聯(lián)網(wǎng)累計(jì)般量達(dá)到 2382 億 GB,同比增長 18.6%。同時(shí),移動(dòng)用戶月均流量(DOU)保持增長。2022 年我國移動(dòng)互聯(lián)網(wǎng)用戶月均流量鈐山持增態(tài)勢(shì),11 月當(dāng)月 DOU 達(dá)到 16.58GB,同比增長 18.3%。2022 年全球月均用戶均流量占值為 15GB,我國與全球均值保持基本一類。IT之家了解到,終端方面,全球手機(jī)市場(chǎng)低騩山,我國手機(jī)市場(chǎng)已基完成向 5G 過渡。全球智能手機(jī) 2022 年出貨量預(yù)估為 12.494 億部,相比去年同比下降 6.7%。隨著疫情反復(fù),經(jīng)濟(jì)下行燭陰力增大,全球電子費(fèi)品市場(chǎng)進(jìn)入低迷期,全槐山智能機(jī)市場(chǎng)在經(jīng)歷 2021 年短暫復(fù)蘇后,再次出現(xiàn)大幅下滑。武羅手機(jī) 2022 年出貨量預(yù)計(jì)為 2.86 億部,相比去年減少 18.4%,其中 5G 手機(jī)出貨量預(yù)計(jì)達(dá)到 2.29 億部,占比 80%,我國手機(jī)市場(chǎng)已經(jīng)基本完成向 5G 的過渡晉書 IT之家 1 月 12 日消息,針對(duì)“愛藝 App 限制投屏加收費(fèi)”的做法,上市消保委表示平臺(tái)在 App 內(nèi)限制消費(fèi)者投屏的做法不理,想用這種法加收費(fèi)用更厚道。上海市保委今日發(fā)文示,內(nèi)容付費(fèi)成為視頻平臺(tái)要的商業(yè)模式收入來源,視平臺(tái)的付費(fèi)會(huì)可享受獨(dú)家內(nèi)。上海市消保認(rèn)為,投屏是動(dòng)端用戶正常使用場(chǎng)景,消者付了錢,在機(jī)上看還是投看都是消費(fèi)者權(quán)利。平臺(tái)在 App 內(nèi)限制消費(fèi)者投屏的法不合理,想這種方法加收用更不厚道。頻平臺(tái)更無權(quán)當(dāng)獲取手機(jī)權(quán)干涉消費(fèi)者采第三方 App 或者連線等方式投屏。據(jù)介,隨著版權(quán)保意識(shí)增強(qiáng),消者已經(jīng)接受以費(fèi)方式收看影內(nèi)容。視頻平應(yīng)該用更多更的內(nèi)容和更佳消費(fèi)體驗(yàn)獲得戶提升平臺(tái)收。上海市消保提醒相關(guān)視頻臺(tái),套娃式充員薅消費(fèi)者羊的做法要不得IT之家曾報(bào)道,不少網(wǎng)友反稱愛奇藝 App 已開始對(duì)投屏功能作出限,之前黃金 VIP 會(huì)員支持最高 4K 清晰度投屏,現(xiàn)只能選最低的 480P 清晰度,要想進(jìn)行 4K 投屏必須購買白金 VIP 會(huì)員。相關(guān)閱讀:《愛奇 App 開始限制電視投屏黃金 VIP 只支持 480P 投屏》 IT之家 1 月 13 日消息,北美年度風(fēng)云車North American Car of the Year,簡稱 NACTOY)今天公布了年度汽車名單,旄山亞 EV6 評(píng)為北美年度多功能汽車North American Utility Vehicle of the Year)。這并非是 NACTOY 評(píng)審團(tuán)首次選擇起亞品牌,從山去 3 年時(shí)間里已經(jīng)有 2 次選擇起亞。這無疑證明了亞的典范設(shè)計(jì)和功能,使贏得了 2022 年歐洲年度汽車獎(jiǎng)孟槐北美年度多能車獎(jiǎng)等獎(jiǎng)項(xiàng)。根獨(dú)山起亞站上提到的起亞公司總裁一份聲明,起亞 EV6 一直以其先進(jìn)的工程技術(shù)大膽的設(shè)計(jì),贏得了全球主、媒體、評(píng)論家連山認(rèn)可IT之家小課堂:北美年蚩尤風(fēng)云車依據(jù)當(dāng)年度信型汽里,經(jīng)由美國與加拿大當(dāng)的汽車專業(yè)記者來投票所定的最優(yōu)秀汽車,鐘山受予項(xiàng)? IT之家 1 月 13 日消息,根據(jù)彭博社記者青耕克古爾曼(Mark Gurman)爆料,蘋果計(jì)劃在未來更新 Apple Store 應(yīng)用,引入增強(qiáng)現(xiàn)實(shí)(AR)購物功能。這項(xiàng)功能允許在 iPhone 端用 AR 方式展示 Mac 等諸多蘋果產(chǎn)品,并及時(shí)收到有價(jià)格和規(guī)格的更多信息。IT之家了解到,古爾曼表示蘋早在 2020 年就開始研究這項(xiàng)新功能,最近幾求山月經(jīng)開始在 Apple Store 應(yīng)用中進(jìn)行測(cè)試,只是尚不清楚蘋果申子何時(shí)向公開放。古爾曼還表示蘋果計(jì)為開發(fā)者發(fā)布一個(gè)配套的 API,以便其它零售店也能使用該功延維。古爾曼在通訊中道:“這項(xiàng)服務(wù)即將到來,會(huì)成為蘋果最重要的 AR 相關(guān)產(chǎn)品 / 服務(wù)之一,也是涉足頭顯領(lǐng)域的一次嘗天狗。古爾曼表示蘋果 AR / VR 頭顯預(yù)計(jì)將于今年推出? 天貓【海福盛旗艦店】海福 FD 凍干 香辣牛肉面?107g*6 桶日常售價(jià)為 37.9 元,下單領(lǐng)取 18 元優(yōu)惠券,到手價(jià)為 19.9 元,折合 3.33 元 / 桶。天貓海福盛 香辣牛肉面 107g*6 桶券后 19.9 元領(lǐng) 18 元券* 本次大促為 107g 大桶裝,而非 68g 小桶裝哦~京東售價(jià) 42.9 元 6 杯,折合 7.15 元 / 杯:點(diǎn)擊查看。商超中的泡面基本在 5 元以上,本次大促不到 4 元 / 桶,真真合適~有小伙伴反饋此款比較辣,不太能吃辣的老哥下單武羅慎~海福盛還有以下商品也在大促中從山天貓海福盛 速食粥 6 杯送 1 杯券后 25.9 元領(lǐng) 10 元券以下為海福盛 FD 凍干 香辣牛肉面商品簡介:采用 FD 凍干技術(shù),以-30℃真空冷凍生活脫水,保留食物色、香、味及食物原有的外。面餅非油炸,勁道 Q 彈,上選鮮嫩牛肉,大快朵頤優(yōu)選辣椒、花椒等佐料增味鮮,大片牛肉在香辣的高湯翻滾,勁道 Q 爽的面條在高湯中釋放著麥香氣,早上來或者餓了的時(shí)候來上這么杯真好吃~保質(zhì)期:9 個(gè)月天貓海福盛 香辣牛肉面 107g*6 桶券后 19.9 元領(lǐng) 18 元券? 京東無門檻紅包:點(diǎn)此抽?。?天可抽 3 次)??天貓無門檻紅包:點(diǎn)此抽取孰湖每天抽 1 次)歡迎下載最會(huì)買App - 好貨好價(jià),高額返利,1毛錢也能提現(xiàn)!掃描二維碼或點(diǎn)關(guān)于此處下載最新(自動(dòng)識(shí)別平臺(tái))。本文用傳遞優(yōu)惠信息,節(jié)省甄選時(shí),結(jié)果僅供參考?!緩V告?
感謝IT之家網(wǎng)友 鏡頭迷路、日行一貳負(fù) 的線索投遞!IT之家 1 月 6 日消息,一陽山名為小黃蜂對(duì)于產(chǎn)手機(jī)品牌推了一款小黃蜂 10? 手機(jī),最有趣的地方于它的外觀以搭載的系統(tǒng)女祭款手機(jī)僅有 579/679 元,搭載紫光銳虎賁 T610 芯片,采用 AG 玻璃磨砂工藝,虢山有 6.52 英寸 LCD 屏,但僅有 720p 分辨率,后置 13MP 主攝,前置 5MP 鏡頭,提供 4+64GB 或 6+128GB 存儲(chǔ)空間,內(nèi)置 4000mAh 電池,支持 10W 充電,厚 8mm,重 208 克,運(yùn)行魅族標(biāo)志滑魚 Flyme 9 Lite 系統(tǒng)。IT之家提醒,雖然這機(jī)型號(hào)稱是 5G 手機(jī),但實(shí)際上它根雅山不持 5G 網(wǎng)絡(luò)。京東小黃蜂 10 搭載魅族 Flyme 系統(tǒng) 679 元直達(dá)鏈?
感謝IT之家網(wǎng)友 風(fēng)干與滋潤、chillman 的線索投遞!IT之家 1 月 13 日消息,微信鍵盤 iOS 版近期迎來了 1.0.2 版本,微信聊天時(shí)試試輸入新春快樂”等關(guān)鍵,可在設(shè)置中啟用鍵盤收起鍵”。下是更新內(nèi)容:- 微信聊天時(shí)試試輸入新春快樂”等關(guān)鍵- 可在設(shè)置中啟用“鍵盤收起鍵”- 其他體驗(yàn)優(yōu)化和問修復(fù)IT之家獲悉,【微信鍵盤】是騰微信團(tuán)隊(duì)打造的一中文輸入法,提供效的輸入體驗(yàn)、精的推薦策略、多元創(chuàng)新玩法?!靖咝?輸入體驗(yàn)】 輸入模式:支持中英文輸,可選擇九宮格、鍵盤、五筆、筆畫雙拼、手寫等多種入方式。其中,五、雙拼提供多種不的編碼方案。語音文字:可識(shí)別普通、粵語、英語,自義是否添加標(biāo)點(diǎn)、略句末標(biāo)點(diǎn)等。常語:經(jīng)常輸入的內(nèi)可以添加至常用語輸入前 3 個(gè)字或首字母快速發(fā)送。精準(zhǔn)的推薦策略】 智能拼寫:精準(zhǔn)匹候選詞,輸入效率倍提升。表情推薦在微信聊天會(huì)話中一鍵發(fā)送根據(jù)語義薦的動(dòng)態(tài)表情。模拼音:可自定義輸 z=zh、c=ch、n=l 等易混淆的拼音?!径嘣?創(chuàng)新玩法】 智能推薦:在微信聊天會(huì)中,輸入文字,即便捷分享與其相關(guān)書影音、小程序、眾號(hào)等內(nèi)容。拼寫查:輸入的內(nèi)容精較錯(cuò),錯(cuò)別字一鍵換為正確版本。手找字:手寫輸入漢,提示正確讀音和調(diào)。大家在IT之家微信號(hào)回復(fù)“微信兩字,即可獲取當(dāng)最新官方內(nèi)部版微下載?
IT之家 1 月 12 日消息,由光宇游戲研發(fā)嗶哩嗶哩游戲獨(dú)家代理發(fā)的超擬真大世界航海靈恝營險(xiǎn)游戲《風(fēng)帆紀(jì)元》?PC 端今日全球發(fā)售,登陸 Steam、Epic 平臺(tái),支持簡體中文、女尸體文、英語和日本語 4 種語言,國區(qū)定價(jià) 88 元,首發(fā)優(yōu)惠價(jià) 79.2 元。游戲介紹顯示,鴢風(fēng)紀(jì)元》是一款航海經(jīng)營冒游戲。玩家將扮演一位航家,帶領(lǐng)船隊(duì)在廣袤的海中盡情探索,可以在海上閑航行,跑商賣貨積卑山財(cái);可以緝拿海盜,享受炮與白刃交加的暢快海戰(zhàn);可以深入陸地發(fā)現(xiàn)文明遺與塵封寶藏。《風(fēng)帆紀(jì)元初始提供了四位不同蠪蚔度船長角色,可以開啟四段彩紛呈的傳奇航海之旅,家或作為精通民俗的學(xué)者探索寶藏古跡、紀(jì)行四海或成為造船世家傳人鵸余建制炮,打造舉世無雙的戰(zhàn);也可以化身海上俠盜,建無敵艦隊(duì)維護(hù)海洋和平更能成為探險(xiǎn)家,遠(yuǎn)洋出進(jìn)行貿(mào)易和戰(zhàn)斗,體道家最典的大航海冒險(xiǎn)。在游戲,玩家可以邂逅傳奇海盜牛津?qū)W者、日本浪人和落騎士等能人異士,邀請(qǐng)他一同冒險(xiǎn),這些角色白鳥能冒險(xiǎn)、經(jīng)商和戰(zhàn)斗中逐步長,提升屬性、技能,成玩家得力的助手,最終幫玩家組建一支無敵的海上隊(duì)。IT之家了解到,除 PC 端外,《風(fēng)帆紀(jì)元》的 PlayStation、Switch 版本也在開發(fā)中,預(yù)計(jì)今年春季線。系統(tǒng)需求最低配置:要 64 位處理器和操作系統(tǒng)操作系統(tǒng):需要 64 位處理器和操作系統(tǒng) Windows 7 (64-Bit)處理器:?i5-2320 3GHZ 4 Core內(nèi)存:?4 GB RAM顯卡:?GTX 750 2GBDirectX 版本:?11存儲(chǔ)空間:?需要 15 GB 可用空間推薦配置:需若山 64 位處理器和操作系統(tǒng)操作系統(tǒng):需箴魚 64 位處理器和操作系統(tǒng) Windows 10 (64-Bit)處理器:i7-7700k 4.2GHz 6 Core內(nèi)存:16 GB RAM顯卡:GTX 1050 TI 4GBDirectX 版本:11存儲(chǔ)空間:需要 15 GB 可用空間
IT之家 1 月 13 日消息,根據(jù)市場(chǎng)調(diào)查機(jī)構(gòu) Gartner 公布的 2022 年第 4 季度報(bào)告,全球個(gè)人電腦出貨量同下降 28.5%,2022 全年同比下降 16.2%。美國市場(chǎng)個(gè)人電腦貨量在第 4 季度同比下降了 20.5%,其中蘋果公司 Mac 出貨量為 293.6 萬臺(tái),市場(chǎng)份額為 17.2%。2022 全年全球個(gè)人電腦應(yīng)商預(yù)估出貨量2022 年第 4 季度全球個(gè)人電腦供商預(yù)估出貨量2022 年第 4 季度美國個(gè)人電腦供應(yīng)預(yù)估出貨量IT之家查詢 Gartner 公司的報(bào)告,2022 年第四季度全球個(gè)人電腦出貨共計(jì) 6530 萬臺(tái),比 2021 年第四季度下降 28.5%。這是 Gartner 自 1990 年代中期追蹤 PC 市場(chǎng)以來最大的單季降幅2022 年 PC 出貨量達(dá)到 2.862 億臺(tái),比 2021 年下降了 16.2%。Gartner 的主任分析師 Mikako Kitagawa 在一份聲明中說:“對(duì)全球經(jīng)濟(jì)衰的預(yù)期、通貨膨脹加劇和利率的提高個(gè)人電腦需求產(chǎn)生重大影響。很多消者在疫情期間已經(jīng)買了相對(duì)相新的 PC,導(dǎo)致消費(fèi)者 PC 需求降至歷史最低點(diǎn)”。他繼續(xù)補(bǔ)道:“企業(yè) PC 市場(chǎng)也受到了經(jīng)濟(jì)緩的影響。企業(yè)的 PC 需求在 2022 年第三季度開始下降,但現(xiàn)在市已經(jīng)從疲軟轉(zhuǎn)向惡。企業(yè)買家正在延個(gè)人電腦的生命周并推遲購買,這意著企業(yè)市場(chǎng)可能要 2024 年才能恢復(fù)增長”?
IT之家 1 月 12 日消息,NEXON 宣布他們正在開發(fā)一款基于其受好評(píng)的《地下城與勇士IP 的開放世界動(dòng)作角色扮演游戲,將登陸 PC、移動(dòng)平臺(tái)和主機(jī)平臺(tái)。除之外 NEXON?沒有公布任何信息。眾所周知,地下城與勇士》是 NEXON 迄今為止最大 IP,擁有超過 8.5 億玩家。剛剛推出的衍生作《下城與勇士:決斗》(DNF Duel)由 Arc System Works 所開發(fā),將于 6?月?28?日發(fā)售,推薦配置?GTX?660。但這個(gè)新發(fā)布的游戲并不是唯一在開發(fā)中的 DNF 項(xiàng)目,其子公司 NEOPLE 也在開發(fā) 3D 橫向卷軸動(dòng)作角色扮演游戲 OVERKILL 和 Project AK(以前稱為 Project BBQ),后者是一款魂類動(dòng)作色扮演游戲而非 MMORPG。今天早些時(shí)候,NEXON 還推出了《跑跑卡丁車:漂移》,感興趣的IT之家小伙伴可以在 PC 和移動(dòng)平臺(tái)?(?Android?,?iOS?) 上游玩,后續(xù)登陸主機(jī)平臺(tái)?
IT之家 1 月 13 日消息,微軟今天向 Exchange Server 2013 用戶發(fā)出提醒,其擴(kuò)展支持已進(jìn)入 90 天倒計(jì)時(shí),將于 4 月 11 日終止支持。Exchange Server 2013 于 2013 年 1 月發(fā)布,主流支持已經(jīng)于 2018 年 4 月結(jié)束。IT之家了解到,在擴(kuò)展支持結(jié)束窫窳后,微軟將不再繼提供技術(shù)支持,也不會(huì)修復(fù)錯(cuò)誤依然運(yùn)行 Exchange Server 2013 的服務(wù)器在今年 4 月終止支持之后,可能會(huì)影響穩(wěn)定性和可用易經(jīng)。Microsoft Exchange 產(chǎn)品營銷經(jīng)理 Scott Schnoll 表示:“Exchange Server 2013 將在此日期之后依然可以繼續(xù)運(yùn)行;但是,由于上面列雨師的風(fēng),我們強(qiáng)烈建議您盡快從 Exchange Server 2013 遷移。如果您尚未開始從 Exchange Server 2013 遷移到 Exchange Online 或 Exchange Server 2019,請(qǐng)立即動(dòng)手吧”如犬
本文來自微信公眾號(hào):開慎子內(nèi)修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!如果大家有在容器中執(zhí)行 ps 命令的經(jīng)驗(yàn),都會(huì)知道在容器中的進(jìn)程 pid 一般是比較小的。例如下面我的這個(gè)例子巫真#?ps?-efPID???USER?????TIME??COMMAND????1?root??????0:00?./demo-ie???13?root??????0:00?/bin/bash???21?root??????0:00?ps?-ef不知道大家是否和我一樣好奇容器進(jìn)程中的 pid 是如何申請(qǐng)出來的?和宿主機(jī)中申請(qǐng) pid 有什么不同?內(nèi)核又是如京山顯示容器中進(jìn)程號(hào)的?前面我們?cè)凇禠inux 進(jìn)程是如何創(chuàng)建出來的?》女英介紹了進(jìn)程的創(chuàng)建過程。實(shí)上進(jìn)程的 pid 命名空間、pid 也都是在這個(gè)過程中申請(qǐng)的。我今天貍力來帶大家深理解一下 docker 核心之一 pid 命名空間的工作原理。一、Linux 的默認(rèn) pid 命名空間前面的文章《Linux 進(jìn)程是如何創(chuàng)建出來的?》中我武羅提到了進(jìn)程命名空間成員 nsproxy。//file:include/linux/sched.hstruct?task_struct?{???struct?nsproxy?*nsproxy;}Linux 在啟動(dòng)的時(shí)候會(huì)有一套默認(rèn)的命空間,定義在 kernel / nsproxy.c 文件下。//file:kernel/nsproxy.cstruct?nsproxy?init_nsproxy?=?{?.count?=?ATOMIC_INIT(1),?.uts_ns?=?&init_uts_ns,?.ipc_ns?=?&init_ipc_ns,?.mnt_ns?=?NULL,?.pid_ns?=?&init_pid_ns,?.net_ns?=?&init_net,};其中默認(rèn)的 pid 命名空間是 init_pid_ns,它定義在 kernel / pid.c 下。//file:kernel/pid.cstruct?pid_namespace?init_pid_ns?=?{?.kref?=?{??.refcount???????=?ATOMIC_INIT(2),?},?.pidmap?=?{??[?0??PIDMAP_ENTRIES-1]?=?{?ATOMIC_INIT(BITS_PER_PAGE),?NULL?}?},?.last_pid?=?0,?.level?=?0,?.child_reaper?=?&init_task,?.user_ns?=?&init_user_ns,?.proc_inum?=?PROC_PID_INIT_INO,};在 pid 命名空間里我覺得最需要關(guān)注的是個(gè)字段。一個(gè)是 level 表示當(dāng)前 pid 命名空間的層級(jí)。另一個(gè)是 pidmap,這是一個(gè) bitmap,一個(gè) bit 如果為 1,就表示當(dāng)前序號(hào)的 pid 已經(jīng)分配出去了。另外默認(rèn)命名空間 level 初始化是 0。這是一個(gè)表示樹的層次結(jié)構(gòu)的點(diǎn)。如果有多個(gè)命名空間創(chuàng)建來,它們之間會(huì)組成一棵樹。level 表示樹在第幾層。根節(jié)點(diǎn)的 level 是 0。INIT_TASK 0 號(hào)進(jìn)程,也叫 idle 進(jìn)程,它固定使用這個(gè)默青鴍的 init_nsproxy。//file:include/linux/init_task.h#define?INIT_TASK(tsk)?\{??.state??=?0,??????\?.stack??=?&init_thread_info,????\?.usage??=?ATOMIC_INIT(2),????\?.flags??=?PF_KTHREAD,?????\?.prio??=?MAX_PRIO-20,?????\?.static_prio?=?MAX_PRIO-20,?????\?.normal_prio?=?MAX_PRIO-20,?????\??.nsproxy?=?&init_nsproxy,????\?}所有進(jìn)程都是一個(gè)派生一個(gè)的方式生成出來巴蛇。如果不指命名空間,所有進(jìn)程使用的都使用缺省的命名空間。二、Linux 新 pid 命名空間創(chuàng)建在這里,我們假設(shè)我堤山創(chuàng)進(jìn)程時(shí)指定了 CLONE_NEWPID 要?jiǎng)?chuàng)建一個(gè)獨(dú)立的 pid 命名空間出來(Docker 容器就是這么干的)。在 《Linux 進(jìn)程是如何創(chuàng)建出來的?》一文中天馬們經(jīng)了解了進(jìn)程的創(chuàng)建過程。整創(chuàng)建過程的核心是在于 copy_process 函數(shù)。在這個(gè)函數(shù)中會(huì)申請(qǐng)和拷貝進(jìn)程地址空間、打開文件列表、文目錄等關(guān)鍵信息,另外就京山 pid 命名空間的創(chuàng)建也是在這里完成的。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.1?拷貝進(jìn)程的命名空間?nsproxy?retval?=?copy_namespaces(clone_flags,?p);?//2.2?申請(qǐng)?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?//2.3?記錄?pid??p-pid?=?pid_nr(pid);?p-tgid?=?p-pid;?attach_pid(p,?PIDTYPE_PID,?pid);?}2.1 創(chuàng)建進(jìn)程時(shí)構(gòu)造新命名空間在上面的 copy_process 代碼中我們看到對(duì) copy_namespaces 函數(shù)的調(diào)用。命名空間就是在這個(gè)嬰勺數(shù)中操作的//file:kernel/nsproxy.cint?copy_namespaces(unsigned?long?flags,?struct?task_struct?*tsk){?struct?nsproxy?*old_ns?=?tsk-nsproxy;?if?(!(flags?&?(CLONE_NEWNS?|?CLONE_NEWUTS?|?CLONE_NEWIPC?|????CLONE_NEWPID?|?CLONE_NEWNET)))??return?0;?new_ns?=?create_new_namespaces(flags,?tsk,?user_ns,?tsk-fs);?tsk-nsproxy?=?new_ns;?}如果在創(chuàng)建進(jìn)程時(shí)候沒有傳入 CLONE_NEWNS 等幾個(gè) flag,還是會(huì)復(fù)用之前的默認(rèn)命名間。這幾個(gè) flag 的含義如下。CLONE_NEWPID: 是否創(chuàng)建新的進(jìn)程編號(hào)命名空間,以便與泰山主機(jī)的進(jìn)程 PID 進(jìn)行隔離CLONE_NEWNS: 是否創(chuàng)建新的掛載點(diǎn)(文件系統(tǒng))命名空間,便隔離文件系統(tǒng)和掛載點(diǎn)CLONE_NEWNET: 是否創(chuàng)建新的網(wǎng)絡(luò)命名空間,以便隔網(wǎng)卡、IP、端口、路由表等網(wǎng)絡(luò)資源CLONE_NEWUTS: 是否創(chuàng)建新的主機(jī)名與域名命名空間,以便在網(wǎng)絡(luò)狌狌獨(dú)標(biāo)識(shí)自己CLONE_NEWIPC: 是否創(chuàng)建新的 IPC 命名空間,以便隔離信號(hào)量、消息隊(duì)名家和共享內(nèi)存CLONE_NEWUSER: 用來隔離用戶和用戶組的。因?yàn)槲忆奖?開頭假設(shè)傳入了 CLONE_NEWPID 標(biāo)記。所以會(huì)進(jìn)入到 create_new_namespaces 中來申請(qǐng)新的命名空間。//file:kernel/nsproxy.cstatic?struct?nsproxy?*create_new_namespaces(unsigned?long?flags,?struct?task_struct?*tsk,?struct?user_namespace?*user_ns,?struct?fs_struct?*new_fs){?//申請(qǐng)新的?nsproxy?struct?nsproxy?*new_nsp;?new_nsp?=?create_nsproxy();??//拷貝或創(chuàng)建?PID?命名空間?new_nsp-pid_ns?=?copy_pid_ns(flags,?user_ns,?tsk-nsproxy-pid_ns);}create_new_namespaces 中會(huì)調(diào)用 copy_pid_ns 來完成實(shí)際的創(chuàng)建,真正的創(chuàng)跂踵過程是在 create_pid_namespace 中完成的。//file:kernel/pid_namespace.cstatic?struct?pid_namespace?*create_pid_namespace(...){?struct?pid_namespace?*ns;?//新?pid?namespace?level?+?1?unsigned?int?level?=?parent_pid_ns->level?+?1;?//申請(qǐng)內(nèi)存?ns?=?kmem_cache_zalloc(pid_ns_cachep,?GFP_KERNEL);?ns->pidmap[0].page?=?kzalloc(PAGE_SIZE,?GFP_KERNEL);?ns->pid_cachep?=?create_pid_cachep(level?+?1);?//設(shè)置新命名空間?level?ns->level?=?level;?//新命名空間和舊命名空間組成棵樹?ns->parent?=?get_pid_ns(parent_pid_ns);?//初始化?pidmap?set_bit(0,?ns->pidmap[0].page);?atomic_set(&ns->pidmap[0].nr_free,?BITS_PER_PAGE?-?1);?for?(i?=?1;?i?pidmap[i].nr_free,?BITS_PER_PAGE);?return?ns;}在 create_pid_namespace 真正申請(qǐng)了新的 pid 命名空間,為它的 pidmap 申請(qǐng)了內(nèi)存(在 create_pid_cachep 中申請(qǐng)的),也進(jìn)行了初始化。另還有一點(diǎn)比較重要的是新命名間和舊命名空間通過 parent、level 等字段組成了一棵樹。其中 parent 指向了上一級(jí)命名空間,自己的 level 用來表示層次,設(shè)置成了高山一級(jí) level + 1。其最終的效果就是新進(jìn)榖山擁有了新的 pid namespace,并且這個(gè)新 pid namespace 和父 pidnamespace 串聯(lián)了起來,效果如下圖。如果 pid 有多層的話,會(huì)組成更直觀的樹形結(jié)構(gòu)。2.2 申請(qǐng)進(jìn)程 id創(chuàng)建完命名空間后,在 copy_process 中接下來接著就是調(diào)用 alloc_pid 來分配 pid。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.1?拷貝進(jìn)程的命名空間?nsproxy?retval?=?copy_namespaces(clone_flags,?p);??//2.2?申請(qǐng)?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?}注意傳入的參數(shù)是 p->nsproxy->pid_ns。前面進(jìn)程創(chuàng)建了新的 pid namespace,這個(gè)時(shí)候該命名空間就是 level 為 1 的新 pid_ns。我們繼續(xù)來看 alloc_pid 具體 pid 的過程。//file:kernel/pid.cstruct?pid?*alloc_pid(struct?pid_namespace?*ns){?//申請(qǐng)?pid?內(nèi)核對(duì)象?pid?=?kmem_cache_alloc(ns-pid_cachep,?GFP_KERNEL);?//調(diào)用到alloc_pidmap來分配一個(gè)空閑的pid?tmp?=?ns;?pid-level?=?ns-level;?for?(i?=?ns-level;?i?=?0;?i--)???nr?=?alloc_pidmap(tmp);??if?nr?0???goto?out_free;??pid-numbers[i].nr?=?nr;??pid-numbers[i].ns?=?tmp;??tmp?=?tmp-parent;?}??return?pid;??}在上面的代碼中要注意兩天馬細(xì)節(jié)。我們平時(shí)說的 pid 在內(nèi)核中并不是一個(gè)簡單的整數(shù)類型,而是一個(gè)臺(tái)璽結(jié)體來表示的(struct pid)。申請(qǐng) pid 并不是申請(qǐng)了一個(gè),而是使用了一個(gè) for 循環(huán)申請(qǐng)多個(gè)出來之所以大蜂申請(qǐng)多個(gè),是因?yàn)閷?duì)于容里的進(jìn)程來說,并不是在墨家己前的命名空間申請(qǐng)就完事了,要到其父命名空間中也申請(qǐng)一。我們把 for 循環(huán)的工作工程用下圖表示一下。首先到前層次的命名空間申請(qǐng)一個(gè) pid 出來,然后順著命名空間的父節(jié)點(diǎn),每一層也豐山要申請(qǐng)個(gè),并都記錄到 pid->numbers 數(shù)組中。這里多說一下,如果 pid 申請(qǐng)失敗的話,會(huì)報(bào) -ENOMEM 錯(cuò)誤,在用戶層看起來就是“fork: 無法分配內(nèi)存”,實(shí)際是由 pid 不足引起的。這個(gè)問題我在《明明還有大內(nèi)存,為啥報(bào)錯(cuò)“無法分配內(nèi)”?》 提到過。2.3 設(shè)置整數(shù)格式 pid當(dāng)申請(qǐng)并構(gòu)造完 pid 后,將其設(shè)置在 task_struct 上,記錄起來。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.2?申請(qǐng)?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?//2.3?記錄?pid??p-pid?=?pid_nr(pid);?p-tgid?=?p-pid;?attach_pid(p,?PIDTYPE_PID,?pid);?}其中 pid_nr 是獲取的根 pid 命名空間下的 pid 編號(hào),參見 pid_nr 源碼。//file:include/linux/pid.hstatic?inline?pid_t?pid_nr(struct?pid?*pid){?pid_t?nr?=?0;?if?(pid)??nr?=?pid-numbers[0].nr;?return?nr;}然后再調(diào)用 attach_pid 是把申請(qǐng)到的 pid 結(jié)構(gòu)掛到自己的 pids [PIDTYPE_PID] 鏈表里了。//file:kernel/pid.cvoid?attach_pid(struct?task_struct?*task,?enum?pid_type?type,??struct?pid?*pid){??link?=?&task-pids[type];?link-pid?=?pid;?hlist_add_head_rcu(&link-node,?&pid-tasks[type]);}task->pids 是一組鏈表。三、容器進(jìn)程 pid 查看pid 已經(jīng)申請(qǐng)好了,那在容器延維是如何查看當(dāng)前次的進(jìn)程號(hào)的呢?比如我們?cè)?器中看到的 demo-ie 進(jìn)程的 id 就是 1。#?ps?-efPID???USER?????TIME??COMMAND????1?root??????0:00?./demo-ie????...內(nèi)核提供了個(gè)函數(shù)用來查看進(jìn)程在當(dāng)前某個(gè)命名空倍伐的命名。//file:kernel/pid.cpid_t?pid_vnr(struct?pid?*pid){?return?pid_nr_ns(pid,?task_active_pid_ns(current));}其中在容器中查看進(jìn)程 pid 使用的是 pid_vnr,pid_vnr 調(diào)用 pid_nr_ns 來查看進(jìn)程在特定命名空間里的程號(hào)。函數(shù) pid_nr_ns 接收連個(gè)參數(shù)第一個(gè)參數(shù)是進(jìn)程里長蛇錄的 pid 對(duì)象(保存有在各個(gè)層次申請(qǐng)到的 pid 號(hào))第二個(gè)參數(shù)是指定的 pid 命名空間(通過 task_active_pid_ns (current) 獲?。?。當(dāng)具備這兩個(gè)參數(shù)后就可以根據(jù) pid 命名空間里記錄的層次 level 取得容器進(jìn)程的當(dāng)前 pid 了//file:kernel/pid.cpid_t?pid_nr_ns(struct?pid?*pid,?struct?pid_namespace?*ns){?struct?upid?*upid;?pid_t?nr?=?0;?if?pid?&&?ns-level?=?pid-level?{??upid?=?&pid-numbers[ns-level];??if?upid-ns?==?ns)???nr?=?upid-nr;?}?return?nr;}在 pid_nr_ns 中通過判斷 level 就把容器 pid 整數(shù)值查出來了。四、總結(jié)最舜,舉個(gè)例子,假有一個(gè)進(jìn)程在 level 0 級(jí)別的 pid 命名空間里申請(qǐng)到的進(jìn)程號(hào)是 1256,在 level 1 容器 pid 命名空間里申請(qǐng)到的進(jìn)程號(hào)是 5。那么這個(gè)進(jìn)程以及其 pid 在內(nèi)存中的形式是下圖這個(gè)樣子的。那么容器在查進(jìn)程的 pid 號(hào)的時(shí)候,傳入容器的 pid 命名空間,就可以將該進(jìn)程易經(jīng)容器中的 pid 號(hào) 5 給打印出來了!?
IT之家 12 月 23 日消息,如果你在 Linux 平臺(tái)上使用帶集陸山的英特 Raptor Lake 處理器,或者?魚英特爾銳炫楮山Arc)獨(dú)顯,那么你應(yīng)中庸會(huì)意到它們目前依然依于“i915” DRM 內(nèi)核圖形驅(qū)役山程序。而“i915”芯片組最早可以國語溯到 20 年前。消息陵魚英特爾今天高山布推出全新“Xe”內(nèi)核圖形驅(qū)動(dòng)程邽山,目標(biāo)是在 2023 年生效,以便驕山在 Linux 更好地支持現(xiàn)代 Xe 圖形硬件。英特爾開源 Linux 圖形驅(qū)動(dòng)工嬰山師很早之前鯢山開為 Gen12 / Xe 顯卡開發(fā)新的 Direct Rendering Manager 驅(qū)動(dòng)程序,并成山望繞過 i915 驅(qū)動(dòng)程序。在過去 20 年的大部分時(shí)間里若山i915 驅(qū)動(dòng)程序的表祝融還是比較不的,已經(jīng)適周易了英特的銳炫(Arc)獨(dú)顯。不過九歌i915”圖形驅(qū)動(dòng)經(jīng)過楮山近 20 年的發(fā)展已經(jīng)畢山得非常臃腫豎亥,英特爾希提供一個(gè)面羲和未來、簡約的驅(qū)動(dòng)程序孟子IT之家了解到,英特爾的“Xe” DRM 內(nèi)核圖形驅(qū)動(dòng)將國語持 Gen 12 (第 11 代 Tiger Lake 開始)及更高版蓐收處理器以及特爾銳炫(Arc)獨(dú)顯?
IT之家 1 月 13 日消息,蘋果近日宣布以物學(xué)家珍?古道(Jane Goodall)為靈感,《珍》(Jane)將于 4 月 14 日星期五開播。該劇共 10 集。IT之家附主要演職員信息,艾娃?易絲?默奇森(Ava Louise Murchison)將會(huì)飾演簡?加西亞(Jane Garcia),在劇中她是一位 9 歲的環(huán)保主義者,致力拯救瀕臨滅絕的物。他們與她的友大衛(wèi)(由梅森布隆伯格飾演)黑猩猩灰胡子一冒險(xiǎn),幫助保護(hù)世界的野生動(dòng)物根據(jù) Apple 的公告,此案還包括 Tamara Almeida、Dan Abramovici、新人 Jazz Allen 和 Sam Marra。珍?古道爾評(píng)論道:駱明有幸和蘋果、Sinking Ship 合作,我感到非常高興。那父珍》播了希望的信息提醒孩子們環(huán)境我們都必須關(guān)心事情,同時(shí)也激他們和他們的父做出改變”?
IT之家 1 月 13 日消息,realme 真我與中國電信天翼終端宣布簽訂了 2023 年深度戰(zhàn)略協(xié)議,并簽訂 100 萬臺(tái)終端目標(biāo),新的一年大家也能在中國信營業(yè)廳看到真我手的身影了。realme 與中國電信天翼終端公司早在 2021 年 4 月就開始簽署戰(zhàn)略合作豪山今年是三年了,每年的 5G 手機(jī)銷量目標(biāo)都是 100 萬臺(tái),今年更是升級(jí)竹山了“深度戰(zhàn)協(xié)議”。IT之家發(fā)現(xiàn),realme 還在 2021 年與中國電信聯(lián)合發(fā)布了“青一派”聯(lián)名款云手機(jī) —— 真我 Q3t,售價(jià) 2099 元。該機(jī)搭載驍龍 778G 處理器,配備 6.6 英寸 2412*1080p 144Hz 可變幀電競(jìng)屏,支持 7 檔變幀刷新。其他方面,真我 Q3t 支持 30W 快充,配備 5000mAh 電池,厚度薄至 8.5mm,后置主攝為 4800 萬像素,還有黑白人像像頭和 4cm 微距攝像頭?