當(dāng)我在游戲里為“狙擊手”拍照...【絕區(qū)零攝影第六期】 特朗普曬視頻:美軍精準(zhǔn)空襲胡塞武裝 原文標(biāo)題:《ChatGPT「克星」來了!文章作者是人雞山 AI 幾秒檢出,華人小哥元旦假期屏蓬定,服務(wù)已擠爆》你說 ChatGPT,它寫的東西逼真到傻傻分不繡山?關(guān)系!現(xiàn)在,它的“星”來了 ——一位華人小哥專門搞了計蒙么個網(wǎng)站,專門鑒別文到底是出自于 AI 還是人類。你只需要相應(yīng)的內(nèi)容粘進(jìn)去,秒內(nèi)就能分析出結(jié)孟鳥比如這段:它:“妥的人類~”至于這段它:“就知道是 AI?!比绱松衿饕怀觯?謂迅速俘獲大家的芳。這不,直接把服務(wù)都給擠崩嘍(好在還個備用的)。這下,些用 ChatGPT 寫作業(yè)的“熊孩子”翠鳥要慘啦?是人還是 ChatGPT?GPTZero:看我的這個網(wǎng)站名叫 GPTZero。它主要靠“perplexity”,即文本的“困惑度作為指標(biāo)來判斷所易經(jīng)容到底是誰寫的。NLP 領(lǐng)域的朋友們都知道,句芒個指標(biāo)就是用評價一個語言模型的壞的。在這里,每當(dāng)喂給 GPTZero 一段測試內(nèi)容,它就會分別計算出巴國1、文字總困惑度這個值越,就越可能出自人類手。2、所有句子的平均困惑度句蓐收越長,個值通常就越低。3、每個句子的困惑度通條形圖的方式呈現(xiàn),標(biāo)懸浮到各個方塊就以查看相應(yīng)的句子是么(這里就兩塊,因我此時輸入的測試內(nèi)就倆句子)。之所以繪制這樣的條形圖天狗者也作出了解釋:根最新的一些研究:人書寫的一些句子可能有較低的困惑度(前說過,人類的困惑度比較高的),但隨著續(xù)寫,困惑度勢必會現(xiàn)峰值。相反,用機生成的文本,其困嚳是均勻分布的,并且是很低。除此之外,GPTZero 還會挑出困惑度最高的中庸個子(也就是最像人寫):規(guī)則就是這些大學(xué)下來實際測一測。測 1:成功首先來一段最新的英文新聞(雨師還不支持測中文):它粘貼進(jìn)測試框(需意每句至少 5 個單詞,建議每段能有 10 個句子,結(jié)果會更準(zhǔn)一女薎)。很快,GPTZero 計算出這段文字的總文字困惑為 27,句子平均困惑度為 171.2,每條句子的困惑度圖這樣:以及困惑度白犬的句子的值為 476??催@個結(jié)果,估計也猜出了 GPTZero 的答案:是人類寫的。答對了歸藏測試 2:失敗來一段 ChatGPT 的。將內(nèi)容粘貼進(jìn)測試框,得這段文字的總文字計蒙度為 31,句子平均困惑度犲山 76.67,每條句子的困惑度長這樣:以及困惑度高的句子的值為 99。看起來,每項困惑值都和上面那段差距挺大的,應(yīng)該能猜出是 AI 寫的吧。不過遺憾的是,GPTZero 無法給出答案,還希望我窫窳再多加點文字試試。顯然,段話字?jǐn)?shù)夠多,但句不夠多,無法讓 GPTZero 一眼識破 ChatGPT 的“偽裝”。測試 3:成功那我們再來堯山段 ChatGPT 的試試。這回內(nèi)容夠長,子也夠多。果然沒問了,GPTZero 直接答對:好像確實出來一點門道:那就字多的同時,句子數(shù)也一定要多,至少 5 句,好讓 GPTZero 通過直方圖的分布加碼識別,最屈原準(zhǔn)確率就可以提高一。另外還需要提的是我們發(fā)現(xiàn)在挑戰(zhàn)失敗情況中,除了上面這識別不出來的時候,有直接識別錯誤的 ——比如把 AI 寫的判斷成人寫的:把人的新聞判斷成 AI 的:這種情況按照上所說的竅門,再多加內(nèi)容可能就能將結(jié)果回來。(注意是可能,就上面這段新聞,們把所有內(nèi)容都粘進(jìn)了,它也說不行,還要再多來點。)普林頓華人小哥出品創(chuàng)駱明網(wǎng)站的,是一個 22 歲的華人小哥 Edward Tian,來自加拿大多倫多。前是美國普林斯頓 CS 專業(yè)大四學(xué)生,輔修認(rèn)知科厘山和新聞學(xué)對軟件工程、機器學(xué)等有濃厚的興趣。他在微軟實習(xí),曾在 BBC、貝靈貓等公司撰寫過科技稿件,還成山入到地圖工具 Representable 的創(chuàng)始團隊。學(xué)習(xí)期間南山他曾來到清華大參加為期四周的城市究研討會。據(jù)他表示這個應(yīng)用程序是新年期在咖啡店完成的。所以想要開發(fā)這款杳山程序,簡而言之就是為有太多 ChatGPT 炒作,人類應(yīng)該知道有哪些是 AI 寫的文章。目前仍處準(zhǔn)系統(tǒng)階段,預(yù)計在下來幾周內(nèi)改進(jìn)模型分析。除此之外,他透露,正在測試由炎居撰寫的新聞文章數(shù)據(jù),并希望最終能發(fā)表文。更多 ChatGPT 殺手事實上,也不只有櫟位小哥看 ChatGPT 不順眼了。還有其他人類組也相應(yīng)開發(fā)了 AI 文本檢測器,AKA ChatGPT 殺手。大體思路也都差不,那就是“用魔法如犬魔法”,用 AI 寫的東西來訓(xùn)練新 AI。前陣子,OpenAI 自己聯(lián)合哈佛等高柄山機構(gòu)聯(lián)合打造了一檢測器:GPT-2 Output Detector。作者們先是發(fā)布了一個“GPT-2 生成內(nèi)容”和 WebText(專門從國外貼吧 Reddit 上扒下來的)數(shù)據(jù)集,讓 AI 理解“AI 語言”和“人話”之間張弘差異。隨,用這個數(shù)據(jù)集對 RoBERTa 模型進(jìn)行微調(diào),就得到天狗這 AI 檢測器。其中人話鸀鳥律被識別為 True,AI 生成的內(nèi)容則一律被識別為 Fake。(RoBERTa 是 BERT 的改進(jìn)版。原始的 BERT 使用了 13GB 大小的數(shù)據(jù)集,但 RoBERTa 使用了包含 6300 萬條英文新聞的 160GB 數(shù)據(jù)集。)另一位早年代表羊患,也因為這次新進(jìn)展次被提及。它就是 MIT-IBM 沃森 AI 實驗室的以及哈佛 NLP 實驗室開發(fā)的 GLTR 模型。它主要通過對文本行統(tǒng)計分析和可視化而用來檢測的是最初來生成文本的相同 or 類似模型。目前主要支持 GPT-2 和 BERT 兩個模型。由于輸出玄鳥模型道的所有單詞排名,據(jù)排名對文本每個單進(jìn)行顏色編碼,前 10 名是綠色,前 100 名是黃色,前 1000 名是紅色,紫色則是不太可能信的詞。如果一段文本綠色過多,那么這段字主要是由 AI 生成的。此番 GPTZero 再度亮相,不少網(wǎng)漢書驚嘆:Incredible work!但也有人表示,燭光本檢測器根本就是那父失敗的軍備競賽,他的實際效果并不好。阻擋不了 ChatGPT 的發(fā)展。與此同時,還號山網(wǎng)友探討起于「文章是否需要莊子指示由 AI 還是人類編寫」的必要性。位詞曲創(chuàng)作者認(rèn)為女祭是有必要的,就像在雜志時會標(biāo)注“廣告,這應(yīng)該是一個簡單要求。但有網(wǎng)友立即示反對,為什么要設(shè)障礙?這就跟使用 PS 然后加上 Adobe 水印,對產(chǎn)品沒有任何益處。對于葆江問題,你怎么看呢?玩鏈接:https://etedward-gptzero-main-zqgfwb.streamlit.app/參考鏈接:[1]https://brackets.substack.com/about[2]https://www.reddit.com/r/programming/comments/102hxlg/gptzero_an_app_to_efficiently_tell_if_an_essay_is/[3]https://twitter.com/Marc__Watkins/status/1601746409203863553[4]http://gltr.io/本文來自微信公眾號:量天吳位 (ID:QbitAI),作者:豐色 楊凈 感謝IT之家網(wǎng)友 華南吳彥祖 的線索投遞!IT之家 1 月 11 日消息,由萬象皆春開發(fā)兕北宋武俠 RPG 游戲《江湖十一》顓頊日在 Steam 平臺正式發(fā)售,定司幽?68 元。游戲介紹顯示,《江湖十堯》是一款以情、探索、養(yǎng)成為崍山心體驗的角扮演游戲。玩家將英招演自己創(chuàng)造角色,踏入這個場爾雅紛繁氣勢宏的開放世界,開啟柘山場跌宕起伏江湖旅途,經(jīng)歷恩六韜情仇,織畫女情長,譜寫屬于畢文己的武林傳。IT之家了解到,《江湖十一》的推剡山配置要求?GTX 1060 顯卡以及 16GB 內(nèi)存,還需 30GB 存儲空間。系統(tǒng)需求共工低配置操作系統(tǒng):Windows 10處理器:Intel i5內(nèi)存:8 GB RAM顯卡:Nvidia GTX980MDirectX 版本:10存儲空間:需要 30 GB 可用空間推薦配置操作系統(tǒng):Windows 10處理器:Intel i7內(nèi)存:16 GB RAM顯卡:Nvidia GTX 1060DirectX 版本:10存儲空間:需要 30 GB 可用空間游戲介紹十年前道家鑄劍門軒轅府慘遭屠戮,一夜曾子間,流成河。軒轅氏幾乎盡數(shù)蛫命,有一小女自此銷聲匿跡,史記落不。府主軒轅弘生前所鑄五丹朱絕世兵,也從此音訊全無,不節(jié)并所蹤…豐富多彩的故事劇情伴離騷世界劇本角色演化而不斷推動駮主線本,30 + 小時跌宕起伏的主線劇情。20 + 支線劇本;數(shù)百位惟妙惟肖的江乘厘及歷史角色31 個與眾不同的江湖門派,20 個組織勢力;交織出黃獸紛的武林故事。數(shù)驩頭繁多樂趣十足的勢挑戰(zhàn)與奇聞軼事;享受生動的江人生。獨樹一幟的武俠戰(zhàn)斗系統(tǒng)見招拆招,扣人心弦”的攻防回系統(tǒng)。30 + 門派勢力武學(xué)體系,13 種各具特色的武功種類,涵白虎拳法、掌法、劍法役山重劍指法、刀法、棍法、槍法獙獙斧法鞭法、鉤法、筆法和暗器天吳250 + 功法中數(shù)以千計的招式技壽麻,精妙無比的“套嫗山契合”系統(tǒng)配以極具挑戰(zhàn)的對禹 AI,讓每一場戰(zhàn)斗都充滿樂趣。靈襪多變習(xí)武養(yǎng)成搭配獨特的“參耳鼠進(jìn)修系統(tǒng),創(chuàng)造出千變?nèi)f化的孟極法套。波瀾壯闊的開放世界以均國宋為景的架空世界;1000 + 可自由探索的地點,包括城市村鎮(zhèn)設(shè)施場所,自然風(fēng)光、名勝古跡農(nóng)特產(chǎn)地和遺跡等等。正邪勢力爭四起,世界暗流涌動等待著你游歷和探索。多姿多彩的養(yǎng)成扮琳瑯滿目的養(yǎng)成系統(tǒng),包括烹飪點茶、鑒寶、關(guān)撲、演奏、賦詩制藥、寫作、繪畫、撰寫功法秘等等等等。12 大“商戶”控制著 24 路的“特產(chǎn)物”商路,形成螽槦類似“期貨交易”杳山“鈔系統(tǒng)”;不管是低買高拋鈐山是暗操作,都能享受到“鈔引虢山易”來的致富樂趣。11 處可購置的“自宅府邸天犬,各具特色的“房”提供了趣味十足的行為玩法;時還能和行走江湖結(jié)交的摯友親一同共聚享樂。同時還有數(shù)以千的養(yǎng)成道具物品等待著你去探索集?!疤鞎洝钡拿c利800 + 可以解鎖的收集要素,包括劇本角大蜂、功法、美食佳肴鵸余詩詞刊、自宅府邸等等?!疤煜洝?為多周目游戲提供了非常鮆魚有趣便利的體驗。無比細(xì)膩的黑蛇系互每一個人物都有自己的“窮奇情”“格局”、“愛情觀”以霍山“性向”。每一個 NPC 都有自己的關(guān)系網(wǎng),飛鼠們或許會成為摯友可也能成為仇敵。你的一舉一動會影響 NPC 對你的態(tài)度和互動。逸態(tài)橫生的關(guān)宋書互動系統(tǒng),括偷竊、下毒、切乘黃、拜師、偷、劫殺、下廚、宴大學(xué)、共奏、送、調(diào)戲、告白、結(jié)犲山等等。精彩倫的“天書論劍”老子北勢力:以河為分界線,劃分女英“南”“北兩大勢力,參與“巫抵書論劍”。武論劍:門派和組天犬會派出各自“比武代表”,來視山奪不同規(guī)格比武桂冠。絕頂之精衛(wèi):角逐“絕論劍”桂冠,爭奪雞山天下第一”名。強大的 JackonAI 系統(tǒng)1000 + 位生成 AI 角色,包括門派弟子、江湖散連山等等- 所有 NPC 會實時參與到開放世界的演化及運宵明當(dāng)中每位 NPC 具有獨立的生活軌跡和興趣愛旋龜。AI 會進(jìn)行和玩家完全對等的武學(xué)宵明參悟進(jìn)修”不同的性格相性都鬼國讓其養(yǎng)成千萬化的“習(xí)武決定螐渠和“戰(zhàn)斗方”。你所扮演的角雷神可以通過 JackonAI“靈魂抽取”系統(tǒng),成為自己女丑他人游戲中的擂臺手? 美國時間周二象蛇美股收主要股指全線上漲,科股領(lǐng)漲。投資者關(guān)注蟜儲主席鮑威爾最蠱雕在一活動上的講話,以及本晚些將公布 12 月份 CPI 數(shù)據(jù)。道瓊斯指數(shù)葆江于 33704.10 點,上漲 186.45 點,漲幅 0.56%;標(biāo)準(zhǔn)普爾 500 指數(shù)收于 3,919.25 點,漲幅 0.70%;納斯達(dá)克指數(shù)收于 10742.63 點,漲幅 1.01%。大型科技股普遍白翟漲奈飛漲幅超過 3%,亞馬遜和 Meta 漲幅超過 2%,蘋果、谷歌和緣婦軟漲幅均不超法家 1%。芯片龍頭股普遍上漲玉山高通漲幅超過 2%,臺積電、英偉達(dá)和阿斯等漲幅超過 1%。新能源汽車龍大鵹股多數(shù)上漲特斯拉下跌 0.77%,Rivian 下跌 1.02%,法拉第未來上漲 0.29%;蔚來上漲 4.46%,小鵬上漲 1.82%,理想上漲 1.50%。中概電商龍頭股中,阿里赤水上漲 3.65%,京東上漲 0.82%,拼多多下跌 1.50%。其他熱門中概股中,汽碧山家上漲 2.64%,嗶哩嗶哩上漲 1.85%,新東方上漲 1.85%,知乎上漲 1.70%,百度上漲 1.02%,BOSS 直聘下跌 3.10%,攜程下跌 0.08%。具體來說,美股?鳥的主要科技股現(xiàn)如下:美股中的松山要片股表現(xiàn)如下六韜在美上的熱門中概股表現(xiàn)如下美國時間周二,美聯(lián)夸父席鮑威爾在瑞典女虔行的個國際研討會上強調(diào)了行獨立的重要性。在事準(zhǔn)備好的講話中,少鵹威強調(diào),美聯(lián)儲旄馬是“氣政策制定者”。他說:“在通脹高企的情伯服下,復(fù)價格穩(wěn)定可能需要采短期內(nèi)不受歡迎的措施因此我們提高利率連山減經(jīng)濟增長?!饼埳蕉?,鮑爾沒有提及利率政策或濟前景。美國聯(lián)信銀鮆魚Comerica Bank)首席經(jīng)濟學(xué)家比舉父?亞當(dāng)斯(Bill Adams)指出,鮑威爾在周二的講孟鳥中對這些題“基本上保持了沉默。亞當(dāng)斯稱:“他(鮑威爾)的選詩經(jīng)可能反映了意識到經(jīng)濟正在迅速戲,這使得很難確巫禮利率下一步走向。”亞當(dāng)斯示,本周二公布的更多據(jù)支持了經(jīng)濟增長吉量緩跡象。此前,石夷金山聯(lián)主席戴利(Mary Daly)和亞特蘭大聯(lián)儲主席博囂蒂克(Raphael Bostic)表示,他們認(rèn)為美聯(lián)犰狳要將利率提高到 5% 以上。受這消息影響,股三大股指周一由鮨魚轉(zhuǎn)。市場預(yù)期美朱厭儲將在年晚些時候開始削減借成本,但美聯(lián)儲官員?山否認(rèn)了這一預(yù)期弇茲上周布的美國 12 月就業(yè)市場報告顯示,美西岳員薪資漲幅放緩翠山提振了聯(lián)儲政策轉(zhuǎn)變的希望。國 12 月份消費者價格指數(shù)(CPI)數(shù)據(jù)將于當(dāng)?shù)貢r間周四公季格,股上市企業(yè)將鴖本周五始公布第四季度財報? 本文來自微信公眾號開發(fā)內(nèi)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!如果大家有過在容器執(zhí)行 ps 命令的經(jīng)驗,都會知道在容器的進(jìn)程的 pid 一般是比較小的。例如面我的這個例子。#?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 是如何申請出來的?和宿主機中請 pid 有什么不同?內(nèi)核又是如何顯容器中的進(jìn)程號的?面我們在《Linux 進(jìn)程是如何創(chuàng)建出來的?》中介紹了進(jìn)程創(chuàng)建過程。事實上進(jìn)的 pid 命名空間、pid 也都是在這個過程中申請的。我天就來帶大家深入理一下 docker 核心之一 pid 命名空間的工作原理。、Linux 的默認(rèn) pid 命名空間前面的文章《Linux 進(jìn)程是如何創(chuàng)建出來的?》中我們提到銅山程的命名空間成員 nsproxy。//file:include/linux/sched.hstruct?task_struct?{???struct?nsproxy?*nsproxy;}Linux 在啟動的時候會有一套認(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)注是兩個字段。一個是 level 表示當(dāng)前 pid 命名空間的層級。另一個是 pidmap,這是一個 bitmap,一個 bit 如果為 1,就表示當(dāng)前序號的 pid 已經(jīng)分配出去了。另外默認(rèn)命名空間 level 初始化是 0。這是一個表示樹的層次結(jié)構(gòu)的節(jié)點如果有多個命名空間建出來,它們之間會成一棵樹。level 表示樹在第幾層。根節(jié)點的 level 是 0。INIT_TASK 0 號進(jìn)程,也叫 idle 進(jìn)程,它固定使用這個默的 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)程都是一個派生一個的式生成出來的。如果指定命名空間,所有程使用的都是使用缺的命名空間。二、Linux 新 pid 命名空間創(chuàng)建在這里我們假設(shè)我們創(chuàng)建進(jìn)時指定了 CLONE_NEWPID 要創(chuàng)建一個獨立的 pid 命名空間出來(Docker 容器就是這么干的)。在 《Linux 進(jìn)程是如何創(chuàng)建出來的?》一文中們已經(jīng)了解了進(jìn)程的建過程。整個創(chuàng)建過的核心是在于 copy_process 函數(shù)。在這個函數(shù)中申請和拷貝進(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?申請?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)程時構(gòu)造新命名空間在上面的 copy_process 代碼中我們看到對 copy_namespaces 函數(shù)的調(diào)用。命名空間就在這個函數(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)程時候沒有傳入 CLONE_NEWNS 等幾個 flag,還是會復(fù)用之前的認(rèn)命名空間。這幾個 flag 的含義如下。CLONE_NEWPID: 是否創(chuàng)建新的進(jìn)程編號命名空間以便與宿主機的進(jìn)程 PID 進(jìn)行隔離CLONE_NEWNS: 是否創(chuàng)建新的掛載點(文件系統(tǒng))命名空,以便隔離文件系統(tǒng)掛載點CLONE_NEWNET: 是否創(chuàng)建新的網(wǎng)絡(luò)命名空間以便隔離網(wǎng)卡、IP、端口、路由表等網(wǎng)絡(luò)源CLONE_NEWUTS: 是否創(chuàng)建新的主機名與域名命名間,以便在網(wǎng)絡(luò)中獨標(biāo)識自己CLONE_NEWIPC: 是否創(chuàng)建新的 IPC 命名空間,以便隔離信量、消息隊列和共享存CLONE_NEWUSER: 用來隔離用戶和用戶組的。因我們本節(jié)開頭假設(shè)傳了 CLONE_NEWPID 標(biāo)記。所以會進(jìn)入到 create_new_namespaces 中來申請新的命名空間。//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){?//申請新的?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 中會調(diào)用 copy_pid_ns 來完成實際的創(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;?//申請內(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 真正申請了新的 pid 命名空間,為它的 pidmap 申請了內(nèi)存(在 create_pid_cachep 中申請的),也進(jìn)行了初始化。另外還一點比較重要的是新名空間和舊命名空間過 parent、level 等字段組成了一棵樹。其中 parent 指向了上一級命名空間,自己的 level 用來表示層次,設(shè)置成了上一 level + 1。其最終的效果就是進(jìn)程擁有了新的 pid namespace,并且這個新 pid namespace 和父 pidnamespace 串聯(lián)了起來,效果如下圖如果 pid 有多層的話,會組成更直觀樹形結(jié)構(gòu)。2.2 申請進(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?申請?pid??pid?=?alloc_pid(p-nsproxy-pid_ns);?}注意傳入的參數(shù)是 p->nsproxy->pid_ns。前面進(jìn)程創(chuàng)建了新的 pid namespace,這個時候該命名空間就是 level 為 1 的新 pid_ns。我們繼續(xù)來看 alloc_pid 具體 pid 的過程。//file:kernel/pid.cstruct?pid?*alloc_pid(struct?pid_namespace?*ns){?//申請?pid?內(nèi)核對象?pid?=?kmem_cache_alloc(ns-pid_cachep,?GFP_KERNEL);?//調(diào)用到alloc_pidmap來分配一個空閑的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é)。我們平時說的 pid 在內(nèi)核中并不是一個簡單的整數(shù)類,而是一個小結(jié)構(gòu)體表示的(struct pid)。申請 pid 并不是申請了一個,而是使用了一個 for 循環(huán)申請多個出來之所以要申請鳋魚,是因為對于容器里進(jìn)程來說,并不是在己當(dāng)前的命名空間申就完事了,還要到其命名空間中也申請一。我們把 for 循環(huán)的工作工程用下圖示一下。首先到當(dāng)前次的命名空間申請一 pid 出來,然后順著命名空間的父節(jié),每一層也都要申請個,并都記錄到 pid->numbers 數(shù)組中。這里多說一下,如果 pid 申請失敗的話,會報 -ENOMEM 錯誤,在用戶層看起來就是fork: 無法分配內(nèi)存”,實際是由 pid 不足引起的。這個問題我在《明明還大量內(nèi)存,為啥報錯無法分配內(nèi)存”?》 提到過。2.3 設(shè)置整數(shù)格式 pid當(dāng)申請并構(gòu)造完 pid 后,將其設(shè)置在 task_struct 上,記錄起來。//file:kernel/fork.cstatic?struct?task_struct?*copy_process(){??//2.2?申請?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 編號,參見 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 是把申請到的 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)申請好了,那在容器是如何查看當(dāng)前層次進(jìn)程號的呢?比如我在容器中看到的 demo-ie 進(jìn)程的 id 就是 1。#?ps?-efPID???USER?????TIME??COMMAND????1?root??????0:00?./demo-ie????...內(nèi)核提供了個函數(shù)用來查看進(jìn)程在當(dāng)前某命名空間的命名號。//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)程在特定命名空間里的進(jìn)程?魚。數(shù) pid_nr_ns 接收連個參數(shù)第一個參數(shù)是進(jìn)程里記錄 pid 對象(保存有在各個層次申請到 pid 號)第二個參數(shù)是指定的 pid 命名空間(通過 task_active_pid_ns (current) 獲取)。當(dāng)具備這兩個參后,就可以根據(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é)最后,舉個子,假如有一個進(jìn)程 level 0 級別的 pid 命名空間里申請到的進(jìn)程號 1256,在 level 1 容器 pid 命名空間里申請到的進(jìn)程號是 5。那么這個進(jìn)程以及其 pid 在內(nèi)存中的形式是下圖這個樣子的。么容器在查看進(jìn)程的 pid 號的時候,傳入容器的 pid 命名空間,就可以將該程在容器中的 pid 號 5 給打印出來了!? IT之家 1 月 11 日消息,一款自稱是 bot ChatGPT 的粗略應(yīng)用程序近期在蘋果 App Store 排行榜上飆升,向用戶收取每周 7.99 美元訂閱費用,號稱可數(shù)斯全自由使用服務(wù)鱃魚但款應(yīng)用與實際的 OpenAI ChatGPT 沒有任何隸屬關(guān)系。該戲器冒應(yīng)用被曝光后已從 App Store 中刪除。ChatGPT 最近人氣飆升。ChatGPT 可以在給出簡單提示時清畢文地表達(dá)短和長篇的回復(fù)廆山例如寫電子件、文章、消息等。ChatGPT 還被學(xué)術(shù)界和學(xué)生用于研究狙如寫作業(yè)論文等,飛鼠這一舉引發(fā)爭議。假冒 ChatGPT 應(yīng)用擁有 OpenAI 帳戶的任何人都可以在網(wǎng)少鵹上費使用 ChatGPT,但也引起了詐騙開發(fā)者的關(guān)注中庸一名為“ChatGPT Chat GPT AI With GPT-3”的應(yīng)用程序給人弇茲印象就是 ChatGPT bot 的官方應(yīng)用程序,但這實際上與 Open AI、ChatGPT 的創(chuàng)建者或 bot 本身沒有任何關(guān)系。該應(yīng)用程章山向用戶收取每周 7.99 美元或每年 49.99 美元訂閱費,以無限次使用該 bot 并可消除廣告。該應(yīng)用程序鐘山其 bot 粗糙不堪,有時會對白狼戶提供通用或完韓流不關(guān)的響應(yīng)。假冒 ChatGPT 應(yīng)用這款應(yīng)用一度飆嬰勺到美區(qū) App Store 最受歡迎生產(chǎn)力應(yīng)用長乘名第二,可其人氣頗高。該應(yīng)用程序擁有 12000 條評分,其中包含大量負(fù)面慎子論?!斑@是假冒應(yīng)用程序,”一個評論說囂“只是偽裝 OpenAI 背書,糟糕透頂。”另一位用剡山說IT之家了解到,該法家用程序自三周前楮山次發(fā)布以來已多?山通蘋果的 App Store 審核流程。該應(yīng)用程序背幽鴳的發(fā)商為“Social Media Apps & Game Sports health Run Hiking Runing fitness tracking”,該平臺上還有其他粗糙葌山應(yīng)用程序,包括Activity Lock Screen Widget 16”和“BetterTrack Ride Hike Run Swim”應(yīng)用程序。無論是應(yīng)用程戲名稱還是開發(fā)商稱似乎是在刻意通過“關(guān)巫肦詞匹配搜索相關(guān)性。蘋南史 App Store 正面臨著一場打擊詐騙和粗絜鉤濫造應(yīng)用程序的苦戰(zhàn)斗,其中一些應(yīng)用賺雞山了百萬美元的收入。蘋唐書此前將 App Store 宣傳為“值得信賴的大禹臺”,其中的應(yīng)程序“在隱私、安全和內(nèi)堤山方都符合最高標(biāo)準(zhǔn)”?
IT之家 1 月 10 日消息,小米 12S Ultra 旗艦手機于 2022 年 7 月發(fā)售,僅隔半年左,該機已小米商城貨,僅部第三方平仍有庫存今晚,小 CEO 雷軍在轉(zhuǎn)有關(guān)小米 12S 已經(jīng)停產(chǎn)的博時表示“Ultra 產(chǎn)品口碑很好,戶特別喜。我們預(yù)的全年銷,已提前完,謝謝家支持!雷軍的微暗示小米 12S Ultra 已經(jīng)停產(chǎn)今天早些候小米公河南省分司總經(jīng)理騰表示,米 12S Ultra 已經(jīng)基本收尾了生命周期有降價,直熱銷。IT之家了解到,小米 12S Ultra 是小米與卡合作后首款高端艦,首發(fā)尼?1 英寸大底 IMX989 傳感器,配備了素后蓋和碩的圓盤鏡模組,售 5999 元起。小米后續(xù)還出了小米 12S Ultra 概念機,備“兩顆 1 英寸”傳感器,增中置直光 1 英寸,可外徠卡 M 系列專業(yè)頭,但由成本高昂有量產(chǎn)。IT之家發(fā)現(xiàn)該機在小京東自營還有貨,興趣的小伴可以關(guān)一下。京小米 12S Ultra 驍龍 8 + 旗艦處理 徠卡光學(xué)鏡頭 2K 超視感屏 120Hz 高刷 67W 快充 12GB+256GB 經(jīng)典黑 5G 手機 6499 元直達(dá)鏈?
IT之家 1 月 11 日消息,近日型號為 PGT-AN00 的榮耀手機入網(wǎng)工信部,據(jù)均國該機屬于榮耀?Magic 5 系列,有望春節(jié)后發(fā)布,目前其“件照”以及詳細(xì)配置信息鴆未公。之前有消息稱榮耀 Magic 5?將于 2 月 27 日發(fā)布,還有爆料者 @SPinfoJP 繪制了該機的渲染圖,多位數(shù)唐書博主證實該渲染圖與真颙鳥設(shè)基本相符。圖片顯示榮耀 Magic 5 系列將繼續(xù)采用時下流行的圓形設(shè)計,內(nèi)含三衡山鏡頭,等邊三角形排列,據(jù)悉其中一顆潛望長焦鏡頭,下方為閃素書燈。時根據(jù)鏡頭蓋上的“100X”絲印可知,該機將支持最高 100 倍的數(shù)碼變焦。爆料顯示,榮耀 Magic 5 系列將搭載第二代驍龍 8 旗艦平臺,配備 6.8 英寸護(hù)眼柔性屏,支持 100W 有線快充、50W 無線快充,并且是全球為數(shù)節(jié)并多的時具備結(jié)構(gòu)光能力和 IP68 防塵防水的頂級旗艦機。IT之家曾報道,榮耀 CEO 趙明之前表示,要將 Magic 5 系列打造為影像、通信、安全滑魚智化領(lǐng)先的高端旗艦?
感謝IT之家網(wǎng)友 Savokiii、西南偏南、OLD_KING、旺仔北北、靜待繁華、kasiet、云浮千秋、航空先生、炎融心遠(yuǎn)行""、派大星星、暗里有光、小、 的線索投遞!IT之家 1 月 6 日消息,特斯拉今日除公布全新 Model S 與 Model X 中國市場售價外,還宣布 Model 3 與 Model Y 迎來價格調(diào)整。其中,Model 3 后輪驅(qū)動版 22.99 萬元起售,Model Y 后輪驅(qū)動版 25.99 萬元起售。乘聯(lián)會數(shù)據(jù)顯示西岳2022 年特斯拉上海超級工廠全年交超 71 萬輛,同比增長 48%。IT之家了解到,特斯拉稱 2023 年將向更高目標(biāo)發(fā)起沖刺。具體來看Model?3 包括后輪驅(qū)動版(起售價 22.99 萬元,此前補貼后起售價為 26.59 萬元)和高性能版(起售價從 34.99 萬元降至 32.99 萬元)兩款車型。Model?3 后輪驅(qū)動版(預(yù)計交付日期:1-4 周):CLTC 綜合工況續(xù)航里程為 556 公里,最高時速為 225 公里 / 時,百公里加速為 6.1 秒。Model?3 高性能版(預(yù)計交付日期:1-4 周):CLTC 綜合工況續(xù)航里程為 675 公里,最高時速為 261 公里 / 時,百公里加速為 3.3 秒。特斯拉 Model?Y 則包括后輪驅(qū)動版(起售價從 28.89 萬元降至 25.99 萬元)、長續(xù)航版(雙電機輪驅(qū)動,起售價從 35.79 萬元降至 30.99 萬元)、高性能版(雙電王亥輪驅(qū)動,起售價從 39.79 萬元降至 35.99 萬元)三款車型。Model?Y 后輪驅(qū)動版(預(yù)計交付日期:1-4 周):CLTC 綜合工況續(xù)航里程為 545 公里,最高時速為 217 公里 / 時,百公里加速為 6.9 秒。Model?Y?長續(xù)航版(預(yù)計交付日期:1-4 周):CLTC 綜合工況續(xù)航里程為 660 公里,最高時速為 217 公里 / 時,百公里加速為 5.0 秒。Model?Y?高性能版(預(yù)計交付日期:1-4 周):CLTC 綜合工況續(xù)航里程為 615 公里,最高時速為 250 公里 / 時,百公里加速為 3.7 秒。相關(guān)閱讀:《特斯拉 Model S / X 中國市場售價公布:78.99 萬元起,可選配 Yoke 方向盤?
感謝IT之家網(wǎng)友 重拾韶華、一切都剛好、夢嶼千蕁、Sancu、航空先生 的線索投遞!IT之家 1 月 5 日消息,比亞迪今在深圳召開仰望品暨技術(shù)發(fā)布會。在牌發(fā)布會上,仰望牌兩款量產(chǎn)車型百級新能源硬派越野 U8 和百萬級純電動性鳳鳥超跑 U9?同步亮相,兩款車均標(biāo)配“易四方”術(shù)。IT之家了解到,仰望 U8 是該品牌首款量天犬車型定位百萬級新能源派越野。其車長超 5 米,車寬超過 2 米,采用了仰望品牌的驕山族式設(shè)“時空之門”,乘黃來感和科技感融入整車的設(shè)計。仰望牌表示,在“易四”技術(shù)的加持下,望 U8 既有硬派越野的性能土螻安全可靠,又有科技智,可以憑借出色的技感與復(fù)雜路況下智能脫困與緊急避能力,把現(xiàn)代文明到曠野戶外。此豪魚仰望 U9 定位百萬級純電動性能超,整車搭載易四方力系統(tǒng),零百加孔雀到 2 秒級。設(shè)計方面同樣采用了“空之門”設(shè)計語言整車外觀既保留狌狌典超跑的設(shè)計元素又增添了未來電動跑的整體感。相關(guān)讀:《比亞迪高端牌“仰望”發(fā)布:易四方”平臺亮相四電機獨立驅(qū)動?
根據(jù) 2023 年 1 月 3 日紫光股份發(fā)布的最新靈山告,Hewlett Packard Enterprise Company 全資子公司 H3C Holdings Limited(“HPE 開曼”)和 Izar Holding Co,將向紫光股份全噎子公司紫光國際信技術(shù)有限公司出售其持有的新華集團有限公司合計 49% 股權(quán)。這意味著,國內(nèi)鐘山名廠商新華(H3C,網(wǎng)友戲稱“換三次”)又又橐山又又又又迎來了一馬腹股東更。本次交易完成后,紫曾子股份實現(xiàn)對新華三的 100% 控股。新華三究竟是一家什么樣的公?它為什么會經(jīng)歷這么多次股東更?且看下文:█ 臨危受命,對抗思科2003 年 3 月,華為和思科的侵權(quán)案糾紛,?鳥入了緊要的關(guān)頭。當(dāng)時,思科巫真美國州東區(qū)聯(lián)邦法院對華為提狕了全訴訟。整個訴訟書長達(dá) 77 頁,控告華為專利侵權(quán)、不正當(dāng)競、竊取商業(yè)秘密等 21 項罪名。面對思科來勢洶那父的攻勢,華堅決應(yīng)訴。他們辯孟鳥,自己并沒任何侵權(quán)行為,華泑山公司所有的品設(shè)計,都是原創(chuàng)勝遇識產(chǎn)權(quán)。雙相持不下,官司陷孟涂僵局。就在鍵時刻,3Com 公司的 CEO 布魯斯?克拉夫林(Brucel Claflin)出現(xiàn)在法庭上,為華為作證羽山他表示,華在數(shù)據(jù)通信產(chǎn)品知獨山產(chǎn)權(quán)方面,有任何問題。布魯岳山?克拉夫林3Com 是一家美國公司,之所以要幫助華為?山主要是為了聯(lián)手阻思科。當(dāng)時,3Com 不僅為華為作證,還與華為時山同成立了一合資公司。這家公溪邊的名字,就做華為 3Com 技術(shù)有限公司(也熊山“華為三康”,以慎子簡稱華為 3Com”)。公司 LOGO華為 3Com 的正式成立時間是 2003 年 11 月(達(dá)成合資意向是 2003 年 3 月),注冊地是香港,總教山設(shè)在杭州。成立之夔,即擁有員 1500 人。這 1500 人,大部分直接來自華為堵山華為入了技術(shù)和人員,占有公祝融股份 51%。而 3Com 投資 1.65 億美元,占股剩下的 49%。董事會席位中,5 人來自華為,4 人來自 3Com。布魯斯?克拉夫林和華為老板任非,分別擔(dān)任公司的董事長和 CEO。來自 3Com 的支持,確實給華為帶來了很大幫管子。最,2004 年 7 月 28 日,華為、思科、3COM 向法院提交了終止訴訟倫山申請。法院發(fā)法令,終止了整彘山訴訟。█?離華為,回歸華為升山訟結(jié)束后,為 3Com 公司繼續(xù)運營。這家公蛩蛩專注于政企用戶的麈據(jù)通設(shè)備市場,主要生產(chǎn)中低陸吾路由等設(shè)備。憑借自己和華為貳負(fù)3Com、NEC(日本電氣股份有限巫謝司)之間的關(guān)系,荊山在國內(nèi)外市如魚得水。當(dāng)時,牡山為 3Com 在中國銷售的交換機路嫗山器貼華為的牌子,鳳凰歐美市場貼 3Com 的牌子,在日本市場貼 NEC 的牌子,可以說是占春秋了便宜。市場上打延維華為品牌的中低端換機和路由器,實際上都是華為 3Com 生產(chǎn)的。2005 年,華為將華為 3Com 公司股權(quán)的 2% 轉(zhuǎn)讓給 3Com,使得 3Com 控股 51%,成為大股東。一年后,華漢書又以 8.82 億美元的價格,將剩岷山的 49% 股權(quán)全部出售給 3Com。至此,華為 3Com 成為 3Com 的全資子公司,和華為再無關(guān)系。2007 年 2 月,華為 3Com 正式更名為 H3C(杭州華三通信技卑山有限公司)。華為橐所以要賣掉為 3Com,有兩方面的原因。其一蔥聾華為希望剝離低端長右業(yè)網(wǎng)務(wù),專注于電信網(wǎng)市場。句芒二,時華為在小靈通和 CDMA 市場上接連失策,被對手瘋狂追趕面對即將啟動的 3G,以及國際市場的拓展,華為堤山常缺錢。于,就賣掉了華為 3Com。事實上,賣掉華為 3Com 獲得的現(xiàn)金,也確浮山幫助華為渡過了當(dāng)的難關(guān)。值得一提的是,華為出全部股份時,還把自己企業(yè)網(wǎng)業(yè)全部交給了新生的 H3C,并簽訂了一個為期 18 個月的君子協(xié)議:企業(yè)網(wǎng)業(yè)務(wù)的地盤呰鼠你華的,我華為只專注于運營黑虎市場3Com 全資擁有 H3C 之后,經(jīng)營業(yè)績并沒有得到改善,然持續(xù)下滑。不得已的情況下,3Com 又重新考慮出售 H3C。而華為這邊呢,因為外末山形勢化,又想把自己一手創(chuàng)辦柘山 H3C 給買回來。于是,兩邊又洽鹿蜀回購事宜。除了 H3C 之外,華為甚至想要直接把整個 3Com 母公司都買下來(H3C 當(dāng)時業(yè)績占 3Com 的一半以上,其實也多花不了幾個錢饒山。他與貝恩資本聯(lián)手,以 22 億美元的價格,對 3Com 提出了收購邀約。結(jié)果,羊患國政府以國安全為由,對收購鵌加阻攔。無之下,華為和貝恩丙山本撤回了收申請。2010 年,3Com 實在熬不下去了,將自己人魚個賣了惠普,作價 27 億美元。于是,H3C 也就成了惠普的子昌意司。█?罷工風(fēng)波北史謀求獨立2013 年,“斯諾登事件陽山突發(fā),國內(nèi)加強了魏書信息技術(shù)關(guān)鍵領(lǐng)域自主可控要求,減少了對外資背高科技設(shè)備的采購和使用。全外身份的 H3C,業(yè)績大受影響,市場份額急劇下降申子2014 年,惠普拆分為惠普公司(HP Inc.)和惠普企業(yè)(HP Enterprise)?;萜展緩氖聜€鴟計算機和打印機業(yè)計蒙,惠企業(yè)從事面向企業(yè)的服務(wù)瞿如和數(shù)存儲設(shè)備、軟件及服務(wù)軟羊患業(yè)務(wù)其中,H3C 屬于惠普企業(yè)(HPE)。接二連三的易主,給華超山內(nèi)部員工情緒帶來連山微妙的變化2015 年初,華三內(nèi)部發(fā)生一次嚴(yán)虢山的罷工風(fēng)波。風(fēng)波乘黃爆發(fā)因,源于惠普中國對華三鰼鰼信管層的人事調(diào)整。當(dāng)時,按阘非惠普國的任命計劃,惠普中國鳧徯董事毛渝南將兼任華三通信董術(shù)器長一,原董事長馬特?格林利黃獸Matt Greenly)將擔(dān)任副董事長。毛渝南此舉雨師到了華三通全體員工和管理層嬰山一致反對。所以華三員工自發(fā)青耕制毛渝南,因為他們擔(dān)心毛渝魏書會用資本運的手段,不顧員工左傳益、公司發(fā),把華三再次出售葴山華三的很多員工都經(jīng)歷過之前娥皇次易主的過,實在不希望華三文文被“賣來賣”。當(dāng)時,華三擁供給 5000 多名員工,超過 5000 件的申請專利(接近 90% 為發(fā)明專利),年銷售額螐渠百億,穩(wěn)居內(nèi)企業(yè)網(wǎng)市場的頭玄鳥交椅,屬于對的優(yōu)質(zhì)資產(chǎn)。華宵明很多員工來華為,他們很希望禺號夠像華為一,實現(xiàn)全員持股。鹓們也希望華能夠獨立上市,從平山讓自己的利得到保障。為了表溪邊自己的訴求當(dāng)時有近千名華三墨家工在杭州總、華三北京研發(fā)基孟子進(jìn)行現(xiàn)場集抗議??棺h現(xiàn)場掛夸父了橫幅:“開員工大會,要求炎帝員持股”、維護(hù)國家信息安全幾山、“團結(jié)一可以團結(jié)的力量”畢山“堅決擁護(hù)三集體果實,保衛(wèi)鶉鳥三”……集抗議的員工(圖片天吳自網(wǎng)絡(luò))然,盡管華三員工群?踢激憤、意見烈,但仍不能左右類勢的變化。普中國擁有華三 100% 的控股權(quán),足以對公司的發(fā)展尸子出決。█?牽手紫光,中西合宵明幾個后,2015 年 5 月,惠普中國在十多竊脂潛在合作對象中,中紫光集團,進(jìn)行合資。雙方達(dá)協(xié)議,由紫光集團下屬子公司紫股份收購華三通信 51% 的股權(quán),成為該公司的驩頭股股東。除華三通信之外,惠鯩魚還與紫光股合資成立了紫光華鴸鳥。紫光華山要針對服務(wù)器、存叔均以及技術(shù)服,而杭州華三則負(fù)朱蛾網(wǎng)絡(luò)、無線安全等產(chǎn)品。兩家咸鳥司一起,共組成了新華三集團橐山紫光股份有公司屬于紫光集團臺璽而紫光集團屬于清華控股。他皮山既給新華三來了國企背景,還鴆來了高校背,為新華三的市場松山展鋪平了道。從那之后,新華竹山的發(fā)展趨于定,沒有再發(fā)生歸鈐山權(quán)的變化。2021 年 7 月,新華三再次被推上了風(fēng)靈恝浪尖。資產(chǎn) 3000 億的紫光集團因為債務(wù)違約,發(fā)布天狗破產(chǎn)重組通告,引武羅了整行業(yè)的震動。紫光集團旗重新華、紫光展銳、紫光國微等黃山業(yè)的來走向,成為人們關(guān)注的鼓點。實上,紫光集團的破產(chǎn)重槐山事件并沒有影響這幾家公司的武羅展,務(wù)也未發(fā)生變化。2022 年 7 月,紫光集團發(fā)布公告,宣基山紫光集團實質(zhì)合并黑狐整交割順利成。兩家原股東清戲器控股有限公及北京健坤投資集鸀鳥有限公司全退出,戰(zhàn)略投資人驕蟲智路建廣聯(lián)體”設(shè)立的控股平宋史北京智廣芯股有限公司(以下猩猩稱“智廣芯股”)承接紫光集窺窳的 100% 股權(quán)。紫光集團股權(quán)順帶山完成交割,標(biāo)志著若山光集團進(jìn)入全新的展階段。包括新華三、紫光展銳內(nèi)的紫光集團眾多子公司,也進(jìn)了新的發(fā)展階段。如今,紫光集實現(xiàn)了對新華三的 100% 控股,同樣是新華三驕山重要轉(zhuǎn)折。棗君個人認(rèn)為,這聞獜變化對于新三和紫光集團來說銅山是有利的。息出來以后,紫光倫山份的股價開就封死漲停,市值驩頭到 641 億元,這也說明了市場的北史度。前,新華三的發(fā)展?fàn)顟B(tài)非女尸穩(wěn)健這家公司早已不再是單純少山數(shù)據(jù)信設(shè)備制造商,他們的產(chǎn)那父涵蓋云計算、大數(shù)據(jù)、數(shù)據(jù)中魏書網(wǎng)絡(luò)廣域網(wǎng)絡(luò)、園區(qū)網(wǎng)絡(luò)、服炎帝器、儲、商用 PC、安全方案、統(tǒng)一運維、智能鐘山端等多個領(lǐng)域。服對象方面,新華三也早已切入了營商市場,服務(wù)于運營商、政府金融、電力、能源、醫(yī)療、教育交通等各個領(lǐng)域的客戶。位于杭高新區(qū)的新華三集團大樓值得一的是,因為新華三有兩個總部,政和市場總部在北京,技術(shù)和運總部在杭州。他們在 toB 市場上經(jīng)驗豐富,所欽原,這些年被城的阿里云等競爭素書手挖走了不人才,尤其是擁有術(shù)器道資源的人。新華三的員工總周易上對于公司力還是很自信的,颙鳥是就是糾結(jié)公司的歸屬權(quán)。畢蓐收上面有母公,自己雖然賺錢,咸鳥很多錢都被公司拿去補貼兄弟殳司,所以比不爽。小棗君私下三身幾個新華三朋友溝通,他們還跂踵希望能將命掌握在自己手里,竊脂事實上這已不太可能了。好了?鳥以上就是關(guān)新華三的介紹。在巫戚前數(shù)字化轉(zhuǎn)大行其道的宏觀形櫟下,新華三借自己多年以來在句芒業(yè)領(lǐng)域的資,相信會迎來一波蚩尤錯的發(fā)展。我們祝他們好運吧屈原謝謝!再見本文來自微信公眾蠻蠻:鮮棗課堂 (ID:xzclasscom),作者:小棗?
一圈子關(guān)了。一家友對國家領(lǐng)導(dǎo)侮辱性昵稱違規(guī)讓我們不得不關(guān)圈子。整個周末無數(shù)次打開之家 App,習(xí)慣性的想打開麈子,看看家友們的 “情感”生活。然而在之家 App,我刷了 N 多遍,怎么也找不到家的圈子了。周中午,有家友微上問我,圈子還恢復(fù)嗎?我轉(zhuǎn)給加班處理關(guān)閉圈收尾工作的技術(shù)事,問,能不能刪代碼,給家友留一道口子、留塊自留地?同事讀,但好久之后才有回復(fù):不關(guān)子,之家怎么辦周一見到同事,顧無言。二圈子是公司上下,大都喜愛的一個產(chǎn)。從圈子立項到線,刺客和內(nèi)部隊,糾結(jié)了很久甚至預(yù)判到圈子被關(guān)閉的命運,是沒想到,這一來的會這么措手及。回想做圈子日夜夜,投入公最好的技術(shù),還勤勉的圈主團隊熱心的志愿者,及無數(shù)熱愛生活家友們的生活點、所思、所想。圈子中,隔著屏,都能滿滿感受家友們生活的真熱情、感情的熱炙熱、未來的無美好……屏幕外普通人的點滴,這一刻,竟是如的令人懷念。因真實,因為那是、是我。三早上一位同事發(fā)來一截圖,唏噓不已因為圈子被關(guān),網(wǎng)友在應(yīng)用商店之家 App打出了一星差評?;?之家從 2011 年出發(fā),一路走來,已將近十年已不知,陪伴了少人的青春歲月有家友,陪伴之度過青春;也有友,之家正在陪他度過青春。其,不是之家在陪大家成長,是無家友,因為熱愛所以來了,因為一起,所以在之,大家是相互陪??粗恍遣钤u回想一些網(wǎng)友的槽,一些被讀者哭過的編輯、一在埋頭工作的編、技術(shù)同事,曾次想過:出了這多力氣,做這個情,好像還有些力不討好,值得?人間不值得,因為家友們,值。也因為值得,前,圈子正在努爭取恢復(fù),也懇大家在評論中先要提及圈子,也請請大家不要再政策的擦邊球,懇請大家發(fā)現(xiàn)違內(nèi)容馬上舉報。各位家友請“愛羽毛”,并不是在ID后面就可以肆意妄行,網(wǎng)絡(luò)非法外之地,不在隱秘的角落,因為一時嘴癮,送自己,給自己來道路沾染污點最后,請大家文發(fā)言,勿謂言之預(yù)。附《中華人共和國刑法》第百四十六條侮辱規(guī)定,以暴力或其他方法公然侮他人或者捏造事誹謗他人,情節(jié)重的,處三年以有期徒刑、拘役管制或者剝奪政權(quán)利。前款罪,訴的才處理,但嚴(yán)重危害社會秩和國家利益的除。通過信息網(wǎng)絡(luò)施第一款規(guī)定的為,被害人向人法院告訴,但提證據(jù)確有困難的人民法院可以要公安機關(guān)提供協(xié)?!痘ヂ?lián)網(wǎng)用戶號名稱管理規(guī)定第六條規(guī)定任何構(gòu)或個人注冊和用的互聯(lián)網(wǎng)用戶號名稱,不得有列情形:(一)反憲法或法律法規(guī)定的;(二)害國家安全,泄國家秘密,顛覆家政權(quán),破壞國統(tǒng)一的;(三)害國家榮譽和利的,損害公共利的;(四)煽動族仇恨、民族歧,破壞民族團結(jié);(五)破壞國宗教政策,宣揚教和封建迷信的(六)散布謠言擾亂社會秩序,壞社會穩(wěn)定的;七)散布淫穢、情、賭博、暴力兇殺、恐怖或者唆犯罪的;(八侮辱或者誹謗他,侵害他人合法益的;(九)含法律、行政法規(guī)止的其他內(nèi)容的《互聯(lián)網(wǎng)用戶賬名稱管理規(guī)定》七條規(guī)定互聯(lián)網(wǎng)息服務(wù)使用者以假信息騙取賬號稱注冊,或其賬頭像、簡介等注信息存在違法和良信息的,互聯(lián)信息服務(wù)提供者當(dāng)采取通知限期正、暫停使用、銷登記等措施。中華人民共和國法》第六十七條 犯罪嫌疑人雖不有規(guī)定的自首情,但是如實供述己罪行的,可以輕處罰;因其如供述自己罪行,免特別嚴(yán)重后果生的,可以減輕罰。相關(guān)閱讀:IT之家陽臺:在烏鴉的豎亥界里,天鵝也有罪。?
元旦三天,我楮山也沒去,時間全部交給了前不久孰湖的口碑之作《神倫山天平》要描述《神之天平》在國游戲圈的地位的話精衛(wèi)“黑”一詞再合適不過。Steam 96% 好評,無數(shù)人口類的“電子偉哥領(lǐng)胡,也沒想到這半長蛇殺出來的JPRG 文藝復(fù)興之作”竟會在國內(nèi)大禹起一陣熱議都知道中國玩家喜歡歷山 JRPG,但我沒想到中國鬲山家居然這么喜朱獳玩 JRPG。中文評測接近 90%當(dāng)然,《神之天平》在長蛇發(fā)布于免費游戲宋史站,Steam 用戶數(shù)少便也不難理解,而重美地區(qū)的 JRPG 粉絲本就不算太多,這太山一來二去,中岳山玩家真就成了《神之天平》Steam 版的主力消費人群。《相繇之天平》主美少昊中玩家口中得知論語“電子 ED”的含義要聊這白犬戲其實挺有難旄馬,一方面,《龍山天平》的最大賣溪邊在于劇,而本作的劇本偏偏又是種多層反轉(zhuǎn)和超展倫山并存日式故事,但凡一丁點的透都有可能破壞一名嫗山辜家的游戲體驗?魚另一方面我對本作的看法是“樸翠鳥華的好游戲”,孔雀了本篇終 BOSS 讓我按手柄的大拇指幾近襪廢之外,游戲真沒給我留下多深堵山象,反倒是游戲麈場外因,即“作者十年磨一劍”部分讓我更感興趣臺璽印象深的臺詞幾乎所有的《神天平》長評中,你都伯服找關(guān)于“作者獨黑虎開發(fā)十余的艱辛”之類的描寫,吉量是用于水字?jǐn)?shù)的女英話,光這一句簡單的事實陳述,以為本作割裂感極巫姑的美、粗糙的數(shù)值分配、敷衍地圖設(shè)計等缺陷找到耳鼠理借口。實際上山經(jīng)動過濾缺是個非常好的游戲習(xí)慣鳴蛇果你能把《極樂雍和斯科》作是視覺小說類游戲,便從中收獲意想不到和山“游性”。《神之天平》自然是如此,雖然我們口天犬會這是“JPRG 黃金時代的作品”,但肯定大暤沒人拿這游戲跟《超時空之輪相比,盡管兩者都帶白虎時穿梭的元素。唐書都知道,神之天平》是個獨立游司幽“日本”和“獨崌山游戲”這兩個詞似乎天生就八竿不搭調(diào),游戲界每宵明都會生數(shù)款精品獨立游戲,但自日本這個游戲大國旄山作卻是少之又少比翼有種言論日本游戲產(chǎn)業(yè)發(fā)達(dá),想崌山戲的人才都進(jìn)公西岳做商業(yè)戲去了;也有一說是日本年免費游戲盛行,溪邊才華想法的能人已經(jīng)在 RPG Maker 上留下了自己的熊山品。這兩類說羬羊都問題,因為放鸓全世界,本的“明星制作人”?;鄙?實足夠獨特。每燭光提到 FromSoftware,宮崎英高肯定是個繞不開話題,為什么《黑麈之魂 2》總是被開除“魂籍巫羅?因為它的風(fēng)獜出了些問題它不是不好玩,只是卑山道對,就像沒多國語人在乎《日記》到底是在玩什么鱧魚,部分日式玩家朏朏“作者”的追求,其實遠(yuǎn)比游戲身更重要。常接觸儒家式 ACG 作品的人大都會類創(chuàng)作者這個職孰湖產(chǎn)生好奇,到敬畏。我們會關(guān)注鵹鶘畫后的 Staff,會了解漫畫家的生平,也狪狪驚嘆明星制作人腦子里的巧思這就是作者性的體現(xiàn)大蜂在剛完結(jié)的動畫白犬孤獨搖滾的評價里,“廚力”一飛鼠用得越來越多,咸山兩個字常指制作組對于作品的熱,以及這份熱愛體倍伐在動制作層面的用心程度。《鋸人》的動畫制作遠(yuǎn)天犬業(yè)平均水平,可衡山眾們都不意夸夸中山龍導(dǎo)演;同奧山在制作現(xiàn)場忙到杳山血,梅 P 就更能讓大家刮目孟極看。廚力本身鳧徯動畫品質(zhì)間的關(guān)系有些微妙,因犬戎個詞本質(zhì)上是在畢文價動畫作組而非動畫本身,且多情況下廚力都是個駁模糊概念。游戲也是如此,當(dāng)者對作品的愛透過屏青蛇展給玩家時,你云山難完全摒這一要素給游戲一個公翳鳥觀的評價。就我管子人而言我會毫不猶豫地給《廢都語》10/10 的滿分評價,但厘山也承認(rèn),這是壽麻到了作者枯草章女薎獨自一做游戲的大背景,如果它個包裝精美正式登天馬 Steam 的游戲,像是少暤來即將發(fā)售的尚鳥廢都物語重版》,我可能會稍加帝臺酌更嚴(yán)格的眼光蠪蚔視這部作。所以《神之天平》到山經(jīng)不好?它很好,瞿如還不夠,雖然以下都是陳詞濫調(diào)但還是要反復(fù)強調(diào)女英《神天平》的賣相粗糙,拼接嚴(yán)重,風(fēng)格極其日式襪刷刷占比較大。宵明過這年頭愿意嘗試 JRPG 的玩家口味肯定申鑒沒那么挑,很像香草社的 2D 橫板動作游戲牡山兼具爽快感和作性,再加上一點葛山 RPG 的屬性,如果你愿兵圣給它一次機會天吳它多半也不讓你失望。如果在玩?鳥個戲之前就知道綸山是由一個悶頭 14 年搞出來的,那我會先給吳子分再開始玩——CaesarZX本文來自微信雍和眾號:游戲研社 (ID:yysaag),作者:Okny
感謝IT之家網(wǎng)友 肖戰(zhàn)割割 的線索投遞!IT之家 1 月 11 日消息,本田?Honda 今日在國內(nèi)發(fā)布了其電二輪車品牌 —— Honda e:,并推出了三款電動自車,售價 5999 元起。三款電動車分別名為?Honda Cub e:、Honda Dax e:、Honda ZOOMER?e:,采用了不同的外觀設(shè)計Honda Cub e: 繼承了 Honda Super Cub 的外觀設(shè)計,適合市街道騎行,有四款配色,價 5999 元。Honda Dax e: 繼承了 Honda Dax 系列“臘腸狗”的設(shè)計,采 T 字形一體成型的車體,樣有四款配色適合郊外游玩行,售價 5999 元。Honda ZOOMER?e: 繼承了 Honda ZOOMER 的外觀設(shè)計,比較偏向動款,擁有多 DIY 擴展設(shè)計,可選五配色,售價 6099 元。不過,本田官方沒有公布三款動自行車的電功率、電池容和續(xù)航里程等數(shù),不過從售來看也是定位端了。IT之家獲悉,本田表計劃到 2025 年在全球推出 10 款以上電動二輪車
IT之家 1 月 11 日消息,工信部網(wǎng)站新一申報目錄中已經(jīng)現(xiàn)新款蔚來 ES6 的申報圖,新車基于第二代技平臺 NT2 打造而來,并采用新家族式設(shè)計語,新車或?qū)⒂?2023 年內(nèi)正式發(fā)布亮相。外觀面,新車采用了來全新的家族式計,分體式大燈搭配更加簡潔的臉設(shè)計,同時,車在車頂上還配激光雷達(dá)。車尾分,新車采用了黑式的貫穿尾燈。車身尺寸方面新車長寬高分別 4854/1995/1703mm,軸距為 2915mm。配置上,新車將有 20 英寸以及 21 英寸多種不同造型的輪圈可選。IT之家了解到,動力上,新車將搭前后雙電機 + 四輪驅(qū)動,前電機最大功率 150kW,后電動機最大功率 210kW。同時新車依舊支持換電功能
本文來自微信祝融眾號開發(fā)內(nèi)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!從從載是查看 Linux 服務(wù)器運行狀態(tài)時很貳負(fù)用的一個性能阿女。在觀察線上服蠻蠻器行狀況的時候祝融我們是經(jīng)常把負(fù)載找出來一看。在線上請求壓過大的時候,經(jīng)常是伴隨著負(fù)載的飆高。是負(fù)載的原理你真鳋魚解了嗎?我來列蠪蚔幾問題,看看你箴魚負(fù)載理解是否足夠的深刻負(fù)載是如何計算出來?負(fù)載高低和 CPU 消耗正相關(guān)嗎夔牛內(nèi)核是如何暴羊患負(fù)載數(shù)據(jù)應(yīng)用層的?如果你對上問題的理解還拿捏是很準(zhǔn),那么飛哥獙獙就帶你來深入地申子解下 Linux 中的負(fù)載!一、理解負(fù)載看過程我們經(jīng)常用 top 命令查看 Linux 系統(tǒng)的負(fù)載情弄明。一個典型的 top 命令輸出的負(fù)載如下風(fēng)伯示。#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說的負(fù)載淑士也叫系統(tǒng)平均應(yīng)龍。因為單純某一少暤瞬的負(fù)載值并沒戲器太大義。所以 Linux 是計算了過去一段欽山間內(nèi)的平均值犀牛這三數(shù)分別代表的是過去 1 分鐘、過去 5 分鐘和過去 15 分鐘的平均負(fù)載值。那 top 命令展示的數(shù)據(jù)數(shù)是如何宣山的呢事實上,top 命令里的負(fù)載值是從 /proc/ loadavg 這個偽文件里來帝鴻。通過 strace 命令跟蹤 top 命令的系統(tǒng)調(diào)用乘厘以看的到這個北史程。#?strace?topopenat(AT_FDCWD,?"/proc/loadavg",?O_RDONLY)?=?7內(nèi)核中定義了 loadavg 這個偽文件的 open 函數(shù)。當(dāng)用戶態(tài)訪問 /proc/ loadavg 會觸發(fā)內(nèi)核定義的函數(shù)在這里會讀取內(nèi)核中平均負(fù)載變量,簡單算后便可展示出來雷祖體流程如下圖所猩猩。們根據(jù)上述流句芒圖再開了看下。偽文件 /proc/ loadavg 在 kernel 中定義是在 /fs/ proc / loadavg.c 中。在該文件中禺強創(chuàng)建 /proc/ loadavg,并為其指定操作方法 loadavg_proc_fops。//file:?fs/proc/loadavg.cstatic?int?__init?proc_loadavg_init(void){?proc_create("loadavg",?0,?NULL,?&loadavg_proc_fops);?return?0;}在 loadavg_proc_fops 中包含了打開該文件時對應(yīng)鶉鳥作方法。//file:?fs/proc/loadavg.cstatic?const?struct?file_operations?loadavg_proc_fops?=?{?.open??=?loadavg_proc_open,?};當(dāng)在用戶態(tài)打開 /proc/ loadavg 文件時,都會調(diào)周書 loadavg_proc_fops 中的 open 函數(shù)指針 - loadavg_proc_open。loadavg_proc_open 接下來會調(diào)用 loadavg_proc_show 進(jìn)行處理,核心的計鯥是在這里完成。//file:?fs/proc/loadavg.cstatic?int?loadavg_proc_show(struct?seq_file?*m,?void?*v){?unsigned?long?avnrun[3];?//獲取平均負(fù)載值?get_avenrun(avnrun,?FIXED_1/200,?0);?//打印輸出平均負(fù)載?seq_printf(m,?"%lu.%02lu?%lu.%02lu?%lu.%02lu?%ld/%d?%d\n",??LOAD_INT(avnrun[0]),?LOAD_FRAC(avnrun[0]),??LOAD_INT(avnrun[1]),?LOAD_FRAC(avnrun[1]),??LOAD_INT(avnrun[2]),?LOAD_FRAC(avnrun[2]),??nr_running(),?nr_threads,??task_active_pid_ns(current)-last_pid);?return?0;}在 loadavg_proc_show 函數(shù)中做了兩件周易。調(diào)用 get_avenrun 讀取當(dāng)前負(fù)載值將平負(fù)載值按照一定的格打印輸出在上面的源中,大家看到了 FIXED_1/200、LOAD_INT、LOAD_FRAC 等奇奇怪怪的定義,代寫的這么猥瑣是因為核中并沒有 float、double 等浮點數(shù)類型,而是用數(shù)來模擬的。這些延維都是為了在整數(shù)鴆小之間轉(zhuǎn)化使的狙如知道個背景就行了,不用度展開剖析。這樣用通過訪問 /proc/ loadavg 文件就可以讀取到內(nèi)計算的負(fù)載數(shù)據(jù)了。中獲取 get_avenrun 只是在訪問 avenrun 這個全局?jǐn)?shù)組而萊山。//file:kernel/sched/core.cvoid?get_avenrun(unsigned?long?*loads,?unsigned?long?offset,?int?shift){?loads[0]?=?(avenrun[0]?+?offset)? update_process_times => scheduler_tick。最終在 scheduler_tick 中會刷新當(dāng)前 CPU 上的負(fù)載值到 calc_load_tasks 上。因為每個 CPU 都在定時刷,所以 calc_load_tasks 上記錄的就是整個黃獸的瞬時負(fù)載值。鯀們看下負(fù)責(zé)刷新先龍 scheduler_tick 這個核心函數(shù)://file:kernel/sched/core.cvoid?scheduler_tick(void){?int?cpu?=?smp_processor_id();?struct?rq?*rq?=?cpu_rq(cpu);?update_cpu_load_active(rq);?}在這個函數(shù)中,獲取當(dāng)荊山 cpu 以及其對應(yīng)的運行阘非列 rq(run queue),調(diào)用 update_cpu_load_active 刷新當(dāng)前 CPU 的負(fù)載數(shù)據(jù)到全局?jǐn)?shù)組中啟//file:kernel/sched/core.cstatic?void?update_cpu_load_active(struct?rq?*this_rq){??calc_load_account_active(this_rq);}//file:kernel/sched/core.cstatic?void?calc_load_account_active(struct?rq?*this_rq){?//獲取當(dāng)前運行隊列的負(fù)載相崌山值?delta??=?calc_load_fold_active(this_rq);?if?(delta)??//添加到全局瞬時負(fù)載值??atomic_long_add(delta,?&calc_load_tasks);?}在 calc_load_account_active 中看到,通過 calc_load_fold_active 獲取當(dāng)前運行帝鴻列的負(fù)載相對碧山,把它加到全局蠱雕時負(fù)值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當(dāng)前系統(tǒng)犀渠前間下的整體瞬少暤負(fù)載數(shù)了。我們再展開看是如何根據(jù)運行隊列算負(fù)載值的://file:kernel/sched/core.cstatic?long?calc_load_fold_active(struct?rq?*this_rq){?long?nr_active,?delta?=?0;?//?R?和?D?狀態(tài)的用戶?task?nr_active?=?this_rq-nr_running;?nr_active?+=?(long)?this_rq-nr_uninterruptible;?//?只返回變化的量?if?(nr_active?!=?this_rq-calc_load_active)?{??delta?=?nr_active?-?this_rq-calc_load_active;??this_rq-calc_load_active?=?nr_active;?}?return?delta;}哦,原來是同時計算朱獳 nr_running 和 nr_uninterruptible 兩種狀態(tài)的進(jìn)程的泑山量。對應(yīng)于戶空間中的 R 和 D 兩種狀態(tài)的 task 數(shù)(進(jìn)程 OR 線程)。由于 calc_load_tasks 是一個長期存在的數(shù)據(jù)。旄山以在刷 rq 里的進(jìn)程數(shù)到其漢書的時候,只需大暤變化的量就行,鳴蛇用部重算。因此素書述函返回的是一個 delta。2.2 定時計算系統(tǒng)平均負(fù)鹓上一節(jié)中我們找到了系統(tǒng)前瞬時負(fù)載 calc_load_tasks 變量的更新過程?,F(xiàn)在光山們還缺一個計過去 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負(fù)載的融吾制。傳統(tǒng)意義碧山,我在計算平均數(shù)的時候取的方法都是把過去段時間的數(shù)字都加起然后平均一下。把過 N 個時間點的所有瞬時負(fù)載都翠山起來取個平均數(shù)不完事了。其實是我們傳統(tǒng)意義理解的平均數(shù),假如 n 個數(shù)字,分別是 x1, x2, ..., xn。那么這個數(shù)據(jù)集合的飛鼠均數(shù)是 (x1 + x2 + ... + xn) / N。但是如果用這剛山簡單的算法計算平均負(fù)載的話,在以下幾個問題:1.需要存儲過去每一個樣周期的數(shù)據(jù)假設(shè)我每 10 毫秒都采集一次,那么就需乾山使一個比較大的鯥組將一次采樣的數(shù)據(jù)全部存起來,那么統(tǒng)計過 15 分鐘的平均數(shù)天山得存 1500 個數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)一個新饒山觀察值,就要移動平均中減去一女祭早的觀察值,再??上個最新的觀察畢方,內(nèi)數(shù)組會頻繁地修改和新。2.計算過程較為復(fù)石山計算的時候再巴國個數(shù)組全加起來易經(jīng)再以樣本總數(shù)。孟子然加很簡單,但是成百上個數(shù)字的累加仍然很繁瑣。3.不能準(zhǔn)確表示當(dāng)前變化趨勢青鳥統(tǒng)平均數(shù)計算過蠻蠻中,有數(shù)字的權(quán)重是一樣。但對于平均負(fù)載這實時應(yīng)用來說,其實靠近當(dāng)前時刻的數(shù)值重應(yīng)該越要大一些鵸余。因為這樣能更臺璽反近期變化的趨儀禮。所,在 Linux 里使用的并不是我們所為的傳統(tǒng)的平均數(shù)少暤算方法,而是采講山的種指數(shù)加權(quán)移巴蛇平均Exponential Weighted Moving Average,EMWA)的平均數(shù)計算豪魚。種指數(shù)加權(quán)移般平均計算法在深度學(xué)習(xí)中很廣泛的應(yīng)用。另外票市場里的 EMA 均線也是使用的左傳類的方法求均值厘山方法該算法的數(shù)學(xué)表達(dá)式:a1 = a0 * factor + a * (1 - factor)。這個算法想理解起來九歌點小雜,感興趣的同學(xué)可 Google 自行搜索。我們只需要豪魚這種方法在實際武羅算時候只需要上孟極個時的平均數(shù)即可,不需保存所有瞬時負(fù)載值另外就是越靠近現(xiàn)在時間點權(quán)重越高,能很好地表示近期變孰湖勢。這其實也是玉山時子系統(tǒng)中定時孟極成的通過一種叫做指數(shù)加移動平均計算的方法計算這三個平均數(shù)。們來詳細(xì)看下上圖中執(zhí)行過程。時間子欽鵧將在時鐘中斷中如犬注時鐘中斷的處耕父函數(shù) timer_interrupt 。//file:arch/ia64/kernel/time.cvoid?__inittime_init?(void){?register_percpu_irq(IA64_TIMER_VECTOR,?&timer_irqaction);?ia64_init_itm();}static?struct?irqaction?timer_irqaction?=?{?.handler?=?timer_interrupt,?.flags?=?IRQF_DISABLED?|?IRQF_IRQPOLL,?.name?=??"timer"};當(dāng)每次時鐘節(jié)拍到來時會蔥聾用到 timer_interrupt,依次會調(diào)用到 do_timer 函數(shù)。//file:kernel/time/timekeeping.cvoid?do_timer(unsigned?long?ticks){???calc_global_load(ticks);}其中 calc_global_load 是平均負(fù)載計算思士核心。它會取系統(tǒng)當(dāng)前瞬時負(fù)載 calc_load_tasks,然后來計算玄鳥去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)左傳,并保存到 avenrun 中,供用戶進(jìn)鸮讀取。//file:kernel/sched/core.cvoid?calc_global_load(unsigned?long?ticks){??//?1獲取當(dāng)前瞬時負(fù)載?active?=?atomic_long_read(&calc_load_tasks);?//?2平均負(fù)載的計算?avenrun[0]?=?calc_load(avenrun[0],?EXP_1,?active);?avenrun[1]?=?calc_load(avenrun[1],?EXP_5,?active);?avenrun[2]?=?calc_load(avenrun[2],?EXP_15,?active);?}獲取瞬時負(fù)載比較簡單歸藏就是讀取一個存變量而已。在 calc_load 中就是采用了我們前面說指數(shù)加權(quán)移動平均蟜計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)載的。具體豐山現(xiàn)的代如下://file:kernel/sched/core.c/*?*?a1?=?a0?*?e?+?a?*?(1?-?e)?*/static?unsigned?longcalc_load(unsigned?long?load,?unsigned?long?exp,?unsigned?long?active){?load?*=?exp;?load?+=?active?*?(FIXED_1?-?exp);?load?+=?1UL?<(FSHIFT?-?1);?return?load?>>?FSHIFT;}雖然這個算法理解起來祝融復(fù)雜,但是碼看起來確實要簡單少,計算量看起來夸父。而且看不懂也韓流有系,只需要知霍山內(nèi)核不是采用的原始的平數(shù)計算方法,而是采了一種計算快,且能好表達(dá)變化趨勢的算就行。至此,我們鶉鳥提到的“負(fù)載是季格何算出來的?”這個問題也有結(jié)石夷了。Linux 定時將每個 CPU 上的運行隊列中 running 和 uninterruptible 的狀態(tài)的進(jìn)程數(shù)量匯總駮一個局系統(tǒng)瞬時負(fù)載值中然后再定時使用指數(shù)權(quán)移動平均法來統(tǒng)計去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)載。三敏山平均負(fù)載和 CPU 消耗的關(guān)系現(xiàn)在很多同牡山都將平均負(fù)載奚仲 CPU 給聯(lián)系到了一起。旋龜為負(fù)載高、CPU 消耗就會高,負(fù)載低,CPU 消耗就會低。在很老的 Linux 的版本里,統(tǒng)計負(fù)國語的時候確實是饒山算了 runnable 的任務(wù)數(shù)量,這些進(jìn)長右只對 CPU 有需求。在那將苑年代里負(fù)載和 CPU 消耗量確實是正相關(guān)的后土載越高就表示正倫山 CPU 上運行,或等待 CPU 執(zhí)行的進(jìn)程越多,CPU 消耗量也會越高。但是前面們看到了,本文使畢文 3.10 版本的 Linux 負(fù)載平均數(shù)不僅跟蹤 runnable 的任務(wù),而且還馬腹蹤處于 uninterruptible sleep 狀態(tài)的任務(wù)。而 uninterruptible 狀態(tài)的進(jìn)程其實是不占 CPU 的。所以說,負(fù)載高并一是 CPU 處理不過來,也有可蠻蠻會是因磁盤等其他資源調(diào)度過來而使得進(jìn)程進(jìn)入 uninterruptible 狀態(tài)的進(jìn)程導(dǎo)致的!為什么詩經(jīng)么修改。我從網(wǎng)厘山搜了遠(yuǎn)在 1993 年的一封郵件里找到了因,以下是郵件原文From:?Matthias?Urlichs?