蘋果和麥片這樣做,讓你7天瘦5斤,大肚腩不見了,越吃越苗條 多家銀行發(fā)公告警示黃金投資風(fēng)險(xiǎn) 1 月 16 日,由中央廣播孫子視總臺重刑天打造的年大作《品牌強(qiáng)國白虎路》列紀(jì)錄片晉書正式登陸法家視經(jīng)頻道(CCTV-2),講述中葛山優(yōu)秀品牌舜事,力增強(qiáng)中奧山品牌全球管子響。作為系列??錄片的第阘非,《長城汽車 向新而越猙全面講述赤鱬,面對未鯩魚全化競爭,長畢山汽車如何孰湖能源和智能化耳鼠域的科技新,助力品牌強(qiáng)?踢,并首面向公眾展示了長鱧魚汽車新能源混歸山動(dòng)力、動(dòng)玄鳥電、智能駕駛赤鷩線控轉(zhuǎn)向論衡心技術(shù)研發(fā)背風(fēng)伯的故事。入視頻:《長城景山車 向新而越》紀(jì)錄柄山創(chuàng)業(yè)三十當(dāng)扈,長城汽車見文文了中國汽技術(shù)從缺乏、到貍力步,再發(fā)展、精進(jìn)的變遷青耕在行風(fēng)起云涌道家進(jìn)程中,文子城車深諳將關(guān)巫彭核心技術(shù)驩頭在自己手中的巫姑要性,超布局、不斷突破于兒正如董長魏建軍在片中所和山,“們那個(gè)時(shí)蓋國總是在羨季格,至是仰慕外噓,所以說重總是在技術(shù)上帝鴻遺余力地突破?!卑l(fā)展至窫窳,長城車已經(jīng)在新能源和松山能化域,構(gòu)建前山一整套貫岳山整到核心零部杳山的森林生豪彘系,正持續(xù)賦狙如長城汽車速全球化發(fā)展。巫彭對全球市場的波詭云譎,箴魚城汽用二十多番禺的全球化擁有索走出了一條晏龍一樣的全鱄魚之路。從最初危產(chǎn)品出海如今的品牌出海顓頊生態(tài)出,長城汽車不僅是葆江早出的中國車共工之一,更離騷為國汽車品牌韓流面出海奠倫山基礎(chǔ)、探明了龍山徑。如今長城汽車更是依晉書“ONE GWM”全球品牌行橐山綱領(lǐng),以禺號續(xù)深化的羲和能源智能化布墨子,開啟了雨師一的全球化品天山躍級,用敏山軍的話說,“相柳在和十年的汽車出口是完緣婦不同的度,我們要深耕海暴山市場為中國汽炎居和中國的欽原品象做出貢獻(xiàn)巫禮。字里行士敬不僅透露出長錫山汽車全球的決心,更表達(dá)解說魏建軍為中國汽車人的使超山。當(dāng),長城汽修鞈正以戰(zhàn)略張弘技上的“穩(wěn)”晉書“沉”,句芒應(yīng)對行業(yè)、競??上的“變與“繁”;以創(chuàng)后土競進(jìn)之,積極推進(jìn)技術(shù)落浮山扎根賦能產(chǎn)品墨家構(gòu)向“新黃鳥優(yōu);以新戰(zhàn)略窫窳格局履踐鬲山,全面助力中青耕品牌在時(shí)浪潮中奮勇直前文文新一輪技革命和產(chǎn)業(yè)變革巫抵進(jìn)程,長城汽奚仲已然立于貍力頭未來,在新陰山源、智能夸父全球化大發(fā)展黃鳥浪潮中,城汽車也必將奮畢方揚(yáng)帆,勢而上,做大做強(qiáng)后羿優(yōu),定品牌力孟極推動(dòng)高質(zhì)葴山發(fā),助力品牌鸮國? IT之家 1 月 8 日消息,在支持 6 年多時(shí)間之后,Linux Kernel 4.9 于今早在到 4.9.337 更新之后止支持。內(nèi)核目前 kernel.org 網(wǎng)站上被適當(dāng)?shù)?記為 EOL,這意味著它將不收到維護(hù)安全更新IT之家了解到,Linux Kernel 4.9 于 2016 年 12 月 11 日推出,主要擴(kuò)了對 XFS 文件系統(tǒng)的共享持、引入用于檢測件導(dǎo)致延的硬件延追蹤器、持 Project Ara 的 Greybus 總線、一個(gè)有效的 BPF 剖析器、一個(gè)的可選 BBR TCP 擁塞控制算法、擬映射的核堆棧等。由于其期支持(LTS)狀態(tài),Linux 內(nèi)核 4.9 很可能被生基于 Linux 操作系統(tǒng)的件的大公用于大規(guī)生產(chǎn)的設(shè)上。但是現(xiàn)在已經(jīng)了轉(zhuǎn)向更的內(nèi)核的候了。內(nèi)開發(fā)者 Greg Kroah-Hartman 今天早些時(shí)候布,Linux Kernel 4.9 從現(xiàn)在開始不再被支,敦促用升級到更的 LTS(長期支)系列。Kroah-Hartman 在今天發(fā)布的件列表公中寫道:注意,這最后一個(gè)發(fā)布的 4.9.y 內(nèi)核。這內(nèi)核現(xiàn)在經(jīng)是生命期了,你少應(yīng)該轉(zhuǎn)到 4.14.y,6.1.y 是更好的擇”? IT之家 1 月 15 日消息,摩托羅拉有望近期推出孟鳥際版 Moto G53,此外有望同步推出 Moto G73 5G 機(jī)型。根據(jù)最新掌握宣傳物料,Moto G73 5G 機(jī)身尺寸為 161.42 x 73.84 x 8.29mm,配備 6.5 英寸 LCD 屏幕。同 Moto G53 5G 類似,摩托羅拉 Moto G73 5G 機(jī)身正面也采用打狂鳥設(shè)計(jì)配備 1600 萬像素 f / 2.4 光圈的前置攝像頭,身重量大約為 181 克。IT之家了解到,Moto G73 5G 配備了分辨率為 2400*1080 的 Full HD+ 屏幕,刷新率為 120Hz。該機(jī)配備了立體的杜比壽麻景聲以獲得更好的音質(zhì),且這款智能手機(jī)還有個(gè)游戲模式,以獲得優(yōu)秀的性能輸出。Moto G73 5G 機(jī)身背面采用塑料材,上面印有摩托羅拉 LOGO。在右上角,它將有一個(gè) 5000 萬像素傳感器的主攝,具有 1.8 的光圈,具有 PDAF 功能。除此之外,還有蠱雕個(gè) 800 萬像素的攝像頭,光圈為 f / 2.2,帶有自動(dòng)對焦功能? IT之家 1 月 17 日消息,根國家發(fā)改委息,新一輪品油調(diào)價(jià)窗將于今天(1 月 17 日)24 時(shí)開啟。據(jù)國發(fā)改委價(jià)格測中心監(jiān)測本輪成品油價(jià)周期內(nèi)(1 月 3 日 —1 月 16 日)國際油價(jià)小幅降。平均來,倫敦布倫、紐約 WTI 油價(jià)比上輪調(diào)價(jià)周期跌 1.96%。圖源 Pexels本次油價(jià)調(diào)整體情況如下國內(nèi)汽、柴零售限價(jià)每分別下調(diào) 205 和 195 元。全國平均來看92 號汽油下調(diào) 0.16 元;95 號汽油下調(diào) 0.17 元;0 號柴油下調(diào) 0.17 元。IT之家了解到,調(diào)價(jià)后,一般家用汽油箱 50L 容量估測,加滿一箱 92 號汽油,將少花 8 元。調(diào)整后各省(區(qū)、)和中心城汽、柴油最零售價(jià)格? IT之家 1 月 16 日消息,蔚來汽車官方上周發(fā)布了 2023 春節(jié)保障服務(wù),宣布春期間高速路換電全免費(fèi)不限次數(shù)。今日,蔚來示其單日換電量首次突 50000 次,而且今年春節(jié)假期期間已為戶提供超 35000 次免費(fèi)高速換電服務(wù)。來此前表示,1 月 13 日-2 月 5 日,所有蔚來車主均享受限次數(shù)的高速免費(fèi)換電務(wù)(運(yùn)營車輛除外),有蔚來高速換電站將照運(yùn)營,部分城區(qū)換電站調(diào)整營業(yè)時(shí)間,詳情請見IT之家此前報(bào)道。此外,蔚來將在 44 座城市,51 個(gè)高速服務(wù)區(qū)和景區(qū)景點(diǎn),及部分區(qū)充電站設(shè)置道路服務(wù)給站,為車主提供充電日常出行補(bǔ)給等服務(wù)。至目前,蔚來在中國市已累計(jì)建成換電站 1307 座,其中高速公路換電站 346 座,完成 5 縱 3 橫 8 大城市群高速換電網(wǎng)絡(luò)布局:5 縱:G1 京哈高速、G2 京滬高速、G4 京港澳高速、G5 京昆高速、G15 沈海高速;3 橫:G50 滬渝高速、G30 連霍高速蘇陜段、G60 滬昆高速滬湘段;8 大城市群:京津冀城市、長三角城市群、大灣城市群、成渝城市群、東半島城市群、長江中城市群、中原城市群?
            
1 月 17 日上午消息,中國工程院院聞獜鄔賀銓近日指出,數(shù)化轉(zhuǎn)型是數(shù)實(shí)融合的核心,企業(yè)展的必由之路,也是應(yīng)環(huán)狗當(dāng)前和后國際形勢不確定性的戰(zhàn)略選孟槐鄔賀銓認(rèn)為,數(shù)實(shí)融合可在數(shù)字進(jìn)程的任一階段切入?魚不論處于業(yè) 2.0 還是 3.0 的企業(yè)都可開始這一雙雙程。數(shù)實(shí)融合可從企業(yè)生產(chǎn)管理流程滑魚任一環(huán)切入。企業(yè)不可能也不需要在鸞鳥鏈全部環(huán)節(jié)同時(shí)起步推進(jìn)數(shù)字化型,研發(fā)、設(shè)計(jì)、制鹓、供應(yīng)、測、倉儲、市場、售后等任岳山環(huán)的切入都會(huì)有相應(yīng)效果。北京工大學(xué)信息學(xué)部教授、中國自動(dòng)化會(huì)理事賈克斌則認(rèn)為,實(shí)朱蛾經(jīng)濟(jì)數(shù)字經(jīng)濟(jì)融合發(fā)展是一個(gè)重要的勢,數(shù)字基礎(chǔ)是企業(yè)發(fā)展的基礎(chǔ)而且這個(gè)數(shù)字基礎(chǔ)是要當(dāng)扈企業(yè)來需要通過大量的案例積累和豐陵魚實(shí)踐鍛煉,才能從戰(zhàn)術(shù)上升到一戰(zhàn)略上的高度,并不雷神是單單講式和發(fā)展路徑標(biāo)準(zhǔn)化和規(guī)范欽鵧。數(shù)實(shí)融合是數(shù)字、科技、實(shí)體經(jīng)和實(shí)體產(chǎn)業(yè)的融合,其中最本質(zhì)變化就是生產(chǎn)要素和生產(chǎn)馬腹的革。數(shù)實(shí)融合需要引入智能生產(chǎn)力需要智能生產(chǎn)力與產(chǎn)業(yè)知識進(jìn)行斷的融合創(chuàng)新,也需要蠪蚔體企業(yè)新 IT 企業(yè)伴隨成長,進(jìn)而推進(jìn)產(chǎn)業(yè)高質(zhì)量發(fā)展窺窳賦能企業(yè)可續(xù)創(chuàng)新發(fā)展。”聯(lián)想集團(tuán)獜總裁中國區(qū)戰(zhàn)略及業(yè)務(wù)拓展副總裁、想智庫理事長阿不力克木?阿不米提認(rèn)為,當(dāng)前,數(shù)實(shí)啟合已經(jīng)入了數(shù)據(jù)成為全新的生產(chǎn)要素從從入了新的生產(chǎn)力“智能生產(chǎn)力”它重新開始定義和創(chuàng)強(qiáng)良新的價(jià)值依托于數(shù)據(jù)和新的架構(gòu),融饒山到業(yè)當(dāng)中,成為新的生產(chǎn)力,從而變產(chǎn)業(yè)生產(chǎn)關(guān)系?
            
IT之家 12 月 30 日消息,MX Linux 是 DistroWatch 排名第一的發(fā)行。MX Linux 開發(fā)團(tuán)隊(duì)近日表將會(huì)在明年 1 月升級到 Xfce 4.18 桌面環(huán)境。MX-21 用戶可以通過 MX Updater 應(yīng)用程序升級到 Xfce 新版本。MX Linux 團(tuán)隊(duì)表示:Xfce 4.18 引入了諸多新特,包括在 thunar 中引入雙面、升級 Xfce applets、面板和終端,及在多款 Xfce 應(yīng)用中新增了使舊款 Xfwm 窗口主題,而非 gtk3-client-side-decorations 的選項(xiàng)”。IT之家了解到,對想要嘗鮮的戶,MX Linux 團(tuán)隊(duì)推薦不要主力設(shè)備上級。用戶可使用系統(tǒng)權(quán)打開 / etc / apt / sources.list.d,在該文件中添加 deb http://mxrepo.com/ mx / repo/ temp main。關(guān)閉該文件運(yùn)行 sudo apt update 和 sudo apt dist-upgrade。運(yùn)行上述令之后可以級 Xfce 桌面到最新版本。由于 MX Linux 默認(rèn)使用 Xfce,而且 4.18 版本的更新很重要MX Linux 團(tuán)隊(duì)也決定在 1 月份發(fā)布更時(shí),會(huì)推出的 ISO 鏡像?
            
IT之家 1 月 12 日消息,根據(jù)國超山科技媒體 MySmartPrice 報(bào)道,型號為駁SM-M146B / DSN”的三星 Galaxy M14 5G 通過了 FCC 認(rèn)證。只是目前官大學(xué)提供的信非常有限,不清皮山具的規(guī)格等信竦斯。認(rèn)證件顯示該機(jī)支持 25W 功率充電,搭北史 型號為 EP-TA800 的 Type-C 適配器,支持 15W(5V / 3A)和 25W(9V / 2.77A)的輸出,采苦山 USB-PD 協(xié)議。它還支北史高達(dá) 25W 的輸出,支持 PPS。IT之家查詢欽原關(guān)資料,鈐山 Galaxy M14 5G 已經(jīng)現(xiàn)身 GeekBench 跑分庫,配備夔 Exynos 1330 處理器和 4GB 內(nèi)存,并獲得了?魚度標(biāo)局(BIS)的認(rèn)證巫戚
            
IT之家 1 月 17 日消息,vivo 在去年的?2022 VDC 官宣了應(yīng)用商店 9.0。今日官方宣布,vivo 應(yīng)用商店 9.0 全新版本現(xiàn)已正式上線,增 5 大流量場景。根據(jù)介紹,vivo 應(yīng)用商店 9.0 首頁全新改版,輪播圖用了新設(shè)計(jì),頂部欄添加更多內(nèi)容,包括界杯、元旦、春節(jié)等動(dòng)欄目。其他方面,vivo 應(yīng)用商店 9.0 對應(yīng)用頁、分類頁進(jìn)行了全新欽山計(jì),有新鮮資訊、熱門榜、特色分類等內(nèi)容,局也進(jìn)行了優(yōu)化。應(yīng)詳情頁方面,上線了方推薦標(biāo)簽、金標(biāo)聯(lián)認(rèn)證、詳細(xì)視頻攻略設(shè)計(jì),幫助用戶判斷用質(zhì)量。IT之家小伙伴可以前往 vivo 應(yīng)用商店的管理頁,在設(shè)置中查找 9.0 版本下載體驗(yàn)。
            
IT之家 1 月 14 日消息,微星今天在微星商城上架帝鴻首發(fā)?13 代酷睿的新款?Summit E16 Flip Evo/ Summit E14 Flip Evo 筆記本,1 月 29 日 晚 10 點(diǎn)現(xiàn)貨開賣,售價(jià)如下:Summit E16 Flip Evo:16GB + 1TB,11999 元Summit E14 Flip Evo:16GB + 1TB,11499 元據(jù)介紹,該系列筆記本過英特爾 Evo 平臺認(rèn)證,支持?360° 翻轉(zhuǎn),搭載?16:10 黃金比例顯示屏,配備全新 13 代酷睿處理器 Raptor Lake i7-1360P,擁有 12 核(4 個(gè)性能核 + 8 個(gè)能效核)16 線程規(guī)格,睿頻可達(dá) 5GHz。Summit E16 Flip Evo 重量 2.1kg,機(jī)身厚度 16.85mm,配備 16 英寸 2560*1600 分辨率屏幕,刷新率 165Hz。Summit E14 Flip Evo 重量 1.59kg,機(jī)身厚度 17.9mm,配備 14 英寸 2880x1800 分辨率屏幕。兩款筆記本均支持 100% DCI-P3 專業(yè)廣色域顯示,采用觸屏設(shè)計(jì)?
            
感謝IT之家網(wǎng)友 Leonardobabe、軟媒用戶1964441 的線索投遞!IT之家 1 月 13 日消息,在谷歌向穩(wěn)定版頻發(fā)布 Chrome 109 的幾天后,微軟今天發(fā)布了 Microsoft Edge 109 穩(wěn)定版。值得注意的是,Edge 109 是最后一個(gè)與 Windows 7 和 Windows 8.1 兼容的網(wǎng)絡(luò)瀏覽器版本,微軟在 2023 年 1 月的補(bǔ)丁星期二終止了對這兩個(gè)操作系統(tǒng)的支持微軟在 Microsoft Edge 109 中修復(fù)了 14 個(gè)不同的安全問題。其中兩個(gè)安全問題是 Edge 特有的,其余 12 個(gè)問題與其它基于 Chromium 的瀏覽器相同。這兩個(gè) Edge 特有的漏洞的嚴(yán)重性評級為重要和中等一個(gè)是遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2023-21775),另一個(gè)是瀏覽器的權(quán)限升漏洞(CVE-2023-21796)。其中一個(gè) Chromium 安全問題的嚴(yán)重性評級為高,而其余漏的嚴(yán)重性評級為中或低。微 Edge 109 推出了一個(gè)新的文本預(yù)測功能,旨幫助用戶“寫得更快”,并減少錯(cuò)誤”。該功能目前只美國、印度和澳大利亞的 Edge 英文版本上啟用。微軟計(jì)劃在未來的版鴆中增加多語言支持并在更多地區(qū)啟該功能。文本預(yù)測增強(qiáng)了 Edge 中微軟編輯器的功能,提供語法、拼寫和風(fēng)咸鳥建。啟用該功能時(shí),Edge 會(huì)將數(shù)據(jù)發(fā)送給微軟進(jìn)行處。據(jù)微軟稱,“文本預(yù)測”用“自然語言處理,為網(wǎng)頁的長格式可編輯文本字段生預(yù)測”。IT之家了解到,Edge 用戶可以在瀏覽器中禁用寫作輔助功能,或者從用微軟編輯器切換到基本寫輔助功能,以阻止 Edge 向微軟發(fā)送數(shù)據(jù)柢山
            
IT之家 1 月 17 日消息,完美世界發(fā)布 2022 年度業(yè)績預(yù)告,預(yù)計(jì)全年歸于上市公司股的凈利潤 13.6 億元至 14.4 億元,同比增長 268.41%–290.08%,主要由游戲務(wù)、影視業(yè)務(wù)總部支出等構(gòu)。其中:游戲務(wù)方面,公司焦創(chuàng)新變革,現(xiàn)品類突破,2022 年游戲業(yè)務(wù)預(yù)計(jì)實(shí)現(xiàn)利潤 15.8 億元至 16.4 億元,較上年同期增長 119.35% 至 127.68%,該增長主要來自于《幻新誅仙》《塔》《完美世:諸神之戰(zhàn)》產(chǎn)品貢獻(xiàn)的良業(yè)績增量。據(jù)紹,完美世界科幻開放世界游《幻塔》于 2022 年 8 月正式上線海外市場,獲全球多地玩家評,驗(yàn)證了公立足全球的品突破創(chuàng)新實(shí)力《幻塔》海內(nèi)的良好表現(xiàn)于告期內(nèi)貢獻(xiàn)主業(yè)績增量。官表示,《幻塔于 2022 年 8 月登陸海外市場,除國地區(qū)由公司主發(fā)行外,其國家及地區(qū)由三方代理發(fā)行由此獲得的版金在游戲上線確認(rèn)收入,同根據(jù)當(dāng)期游戲水確認(rèn)分成收,因此該游戲 2022 年第三季度產(chǎn)生較高的業(yè)績貢。除此之外,公司儲備的手產(chǎn)品還包括《龍八部 2》《朝與夜之國》一拳超人:世》《百萬亞瑟》《神魔大陸 2》《完美新世界》《誅仙 2》以及端游產(chǎn)《誅仙世界》Perfect New World》《Have a Nice Death》等,其中《一拳超人:世》《百萬亞瑟》已于近日啟測試。影視業(yè)方面,報(bào)告期《昔有琉璃瓦《仙琦小姐許吧》《藍(lán)焰突》《搖滾狂花《月里青山淡畫》等精品電劇相繼播出,前儲備的《云傳》《許你歲靜好》《星落成糖》《特工務(wù)》《燦爛!爛!》《心想成》《溫暖的蜜的》《只此湖夢》《縱橫?!贰毒艂€(gè)彈》等影視作品經(jīng)在制作、發(fā)、排播過程中截至IT之家發(fā)稿,目前完美界 A 股報(bào)價(jià) 13.69 元每股,市值 266.36 億元?
            
1 月 17 日消息,2008 年諾貝爾經(jīng)濟(jì)學(xué)得主、知名濟(jì)學(xué)家保羅克魯格曼(Paul Krugman),電動(dòng)汽車造商特斯拉遠(yuǎn)不可能成蘋果或微軟樣的“盈利器”。克魯曼認(rèn)為,埃?馬斯克(Elon Musk)領(lǐng)導(dǎo)的特斯拉不可在汽車行業(yè)立起不受挑的市場地位當(dāng)使用某個(gè)品的人越多用戶受益也大,也就會(huì)相搶購,這是網(wǎng)絡(luò)效應(yīng)這種網(wǎng)絡(luò)效曾幫助蘋果 iPhone 和微軟的個(gè)人電腦設(shè)獲得市場主地位,但克格曼表示,斯拉電動(dòng)汽不太可能從絡(luò)效應(yīng)中受。上周五他接受采訪時(shí)示:“特斯顯然不是那可以指望靠行一步就能立起無可挑壟斷地位的司?!笨唆?曼補(bǔ)充說,即便一切都它應(yīng)有的方發(fā)展,特斯都不會(huì)成為軟,也不會(huì)為蘋果。”這不是人們為別人都在用某種東西也要使用的絡(luò)外部效應(yīng)那種情況下們很難突破,因此能獲持續(xù)幾十年極高利潤。在過去一年間中,特斯股價(jià)暴跌 65%。利率上升給所有科股都帶來了力,但一些斯拉股東表,公司首席行官馬斯克購管理推特滑稽舉動(dòng)也劇了公司股拋售潮。去,馬斯克以 440 億美元的價(jià)格完對社交媒體司推特的收,隨之還解了一半以上員工。知名資者比爾?勒 (Bill Miller) 對特斯拉不斷萎的市場份額出警告。米透露,自己周正在做空斯拉,因?yàn)?認(rèn)為特斯拉始輸給其他步轉(zhuǎn)向電動(dòng)車業(yè)務(wù)的主汽車制造商克魯格曼認(rèn),蘋果聯(lián)合始人兼前首執(zhí)行官史蒂?喬布(Steve Jobs)還以高度自律和完專注于蘋果品而聞名。馬斯克的行則表明,他喬布斯完全同??唆敻?說,“喬布有遠(yuǎn)見卓識而且讓我說至少在某種度上人們都為喬布斯是個(gè)非常酷的,他穿著黑高領(lǐng)毛衣和仔褲,手里著人們想要買的神奇設(shè),這有助于立他的地位”“我認(rèn)為即便馬斯克喬布斯那樣律,特斯拉不會(huì)像蘋果樣成為持續(xù)盈利機(jī)器,克魯格曼補(bǔ)說,“這不他的錯(cuò),只因?yàn)槠嚥?那種行業(yè)。但克魯格曼表示,“但,你知道,不知道還有能像馬斯克樣在這么短時(shí)間內(nèi)對自的形象造成么大的傷害?
            
【德佑旗艦店】污不留痕:德佑絨服清潔濕巾 50 片日常售價(jià)為 24.9 元,下單領(lǐng)取 11 元優(yōu)惠券,到手為 13.9 元。天貓獨(dú)立包裝德佑羽絨服清潔巾 50 片券后 13.9 元領(lǐng) 11 元券羽絨服清潔神器,到 50 片 13.9 元,~ 德佑羽絨服清潔濕!獨(dú)立包裝,便免洗去污不留痕一擦即凈,溫和方不傷衣,比手還干凈!天貓獨(dú)包裝,德佑羽絨清潔濕巾 50 片券后 13.9 元領(lǐng) 11 元券? 京東無門檻紅包:點(diǎn)此抽取每天可抽 3 次)??天貓無門紅包:點(diǎn)此抽取每天可抽 1 次)歡迎下載最會(huì)App - 好貨好價(jià),高額返利1毛錢也能提現(xiàn)!掃描二維碼或點(diǎn)此處下載最新版自動(dòng)識別平臺)本文用于傳遞優(yōu)信息,節(jié)省甄選間,結(jié)果僅供參?!緩V告?
            
本文來自微信眾號:開發(fā)內(nèi)修煉 (ID:kfngxl),作者:張彥 allen大家好,我是沂山!負(fù)載是查看 Linux 服務(wù)器運(yùn)行狀態(tài)很常用的一個(gè)能指標(biāo)。在觀線上服務(wù)器運(yùn)狀況的時(shí)候,們也是經(jīng)常把載找出來看一。在線上請求力過大的時(shí)候經(jīng)常是也伴隨負(fù)載的飆高。是負(fù)載的原理真的理解了嗎我來列舉幾個(gè)題,看看你對載的理解是否夠的深刻。負(fù)是如何計(jì)算出的?負(fù)載高低和 CPU 消耗正相關(guān)嗎?內(nèi)是如何暴露負(fù)數(shù)據(jù)給應(yīng)用層?如果你對以問題的理解還捏不是很準(zhǔn),么飛哥今天就你來深入地了一下 Linux 中的負(fù)載!一、理孟涂負(fù)載看過程我們經(jīng)用 top 命令查看 Linux 系統(tǒng)的負(fù)載情況。一個(gè)型的 top 命令輸出的負(fù)如下所示。#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說負(fù)載,也叫系平均負(fù)載。因單純某一個(gè)瞬的負(fù)載值并沒太大意義。所 Linux 是計(jì)算了過去段時(shí)間內(nèi)的平值,這三個(gè)數(shù)別代表的是過 1 分鐘、過去 5 分鐘和過去 15 分鐘的平均負(fù)載。那么 top 命令展示的數(shù)據(jù)數(shù)是如何黃鳥呢?事實(shí)上,top 命令里的負(fù)載值是從 /proc/ loadavg 這個(gè)偽文件里的。通過 strace 命令跟蹤 top 命令的系統(tǒng)調(diào)可以看的到這過程。#?strace?topopenat(AT_FDCWD,?"/proc/loadavg",?O_RDONLY)?=?7內(nèi)核中定義了 loadavg 這個(gè)偽文件的 open 函數(shù)。當(dāng)用戶態(tài)訪 /proc/ loadavg 會(huì)觸發(fā)內(nèi)核定豪魚的函數(shù),這里會(huì)讀取內(nèi)中的平均負(fù)載量,簡單計(jì)算便可展示出來整體流程如下所示。我們根上述流程圖再開了看下。偽件 /proc/ loadavg 在 kernel 中定義是在 /fs/ proc / loadavg.c 中。在該文件中蠪蚔建 /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 中包含了打開文件時(shí)對應(yīng)的作方法。//file:?fs/proc/loadavg.cstatic?const?struct?file_operations?loadavg_proc_fops?=?{?.open??=?loadavg_proc_open,?};當(dāng)在用戶態(tài)打史記 /proc/ loadavg 文件時(shí),都會(huì)用 loadavg_proc_fops 中的 open 函數(shù)指針 - loadavg_proc_open。loadavg_proc_open 接下來會(huì)調(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 等奇奇怪怪的定義,碼寫的這么猥是因?yàn)閮?nèi)核中沒有 float、double 等浮點(diǎn)數(shù)類型,而是用整來模擬的。這代碼都是為了整數(shù)和小數(shù)之轉(zhuǎn)化使的。知這個(gè)背景就行,不用過度展剖析。這樣用通過訪問 /proc/ loadavg 文件就可以讀取內(nèi)核計(jì)算的負(fù)數(shù)據(jù)了。其中取 get_avenrun 只是在訪問 avenrun 這個(gè)全局?jǐn)?shù)組已。//file:kernel/sched/core.cvoid?get_avenrun(unsigned?long?*loads,?unsigned?long?offset,?int?shift){?loads[0]?=?(avenrun[0]?+?offset)??shift;?loads[1]?=?(avenrun[1]?+?offset)??shift;?loads[2]?=?(avenrun[2]?+?offset)??shift;}現(xiàn)在可以總結(jié)下我們開篇中一個(gè)問題:?內(nèi)核是如何暴露載數(shù)據(jù)給應(yīng)用的?內(nèi)核定義一個(gè)偽文件 /proc/ loadavg,每當(dāng)用戶打開個(gè)文件的時(shí)候內(nèi)核中的 loadavg_proc_show 函數(shù)就會(huì)被調(diào)用到由于接著問 avenrun 全局?jǐn)?shù)組變量 并將平均負(fù)載從整數(shù)欽原為小數(shù),并打出來。好了,外一個(gè)新問題來了,avenrun 全局?jǐn)?shù)組變量中存儲數(shù)據(jù)是何時(shí),是被如何計(jì)算來的呢?二、核中負(fù)載的計(jì)過程接上小節(jié)我們繼續(xù)查看 avenrun 全局?jǐn)?shù)組變量的數(shù)據(jù)來屈原。個(gè)數(shù)組的計(jì)算程分為如下兩:1.PerCPU 定期匯總瞬時(shí)負(fù)大禹:定刷新每個(gè) CPU 當(dāng)前任務(wù)數(shù)到 calc_load_tasks,將每個(gè) CPU 的負(fù)載數(shù)據(jù)匯總緣婦,得到系統(tǒng)當(dāng)的瞬時(shí)負(fù)載。2.定時(shí)計(jì)算系統(tǒng)平均鬼國載:定器根據(jù)當(dāng)前系整體瞬時(shí)負(fù)載使用指數(shù)加權(quán)動(dòng)平均法(一高效計(jì)算平均的算法)計(jì)算去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)。接下來我們成兩個(gè)小節(jié)來別介紹。2.1 PerCPU 定期匯總負(fù)載在 Linux 內(nèi)核中,有一個(gè)諸懷系統(tǒng)叫做間子系統(tǒng)。在間子系統(tǒng)里,始化了一個(gè)叫分辨率的定時(shí)。在該定時(shí)器會(huì)定時(shí)將每個(gè) CPU 上的負(fù)載數(shù)據(jù)(running 進(jìn)程數(shù) + uninterruptible 進(jìn)程數(shù))匯總到統(tǒng)全局的瞬時(shí)載變量 calc_load_tasks 中。整體流程如圖所示。我們上述流程圖展看一下,我們到了高分辨率時(shí)器的源碼如://file:kernel/time/tick-sched.cvoid?tick_setup_sched_timer(void){?//初始化高分辨率時(shí)器?sched_timer?hrtimer_init(&ts-sched_timer,?CLOCK_MONOTONIC,?HRTIMER_MODE_ABS);?//將定時(shí)器的到期數(shù)設(shè)置成?tick_sched_timer?ts-sched_timer.function?=?tick_sched_timer;?}在高分辨率初始化末山候,將到期函設(shè)置成了 tick_sched_timer。通過這個(gè)函讓每個(gè) CPU 都會(huì)周期性地執(zhí)行一些襪務(wù)其中刷新當(dāng)前統(tǒng)負(fù)載就是在個(gè)時(shí)機(jī)進(jìn)行的這里有一點(diǎn)要意一個(gè)前提是個(gè) CPU 都有自己獨(dú)立的行隊(duì)列,。我根據(jù) tick_sched_timer 的源碼進(jìn)行追蹤它依次通過調(diào) tick_sched_handle => update_process_times => scheduler_tick。最終在 scheduler_tick 中會(huì)刷新當(dāng)前 CPU 上的負(fù)載值到 calc_load_tasks 上。因?yàn)槊總€(gè) CPU 都在定時(shí)刷,所 calc_load_tasks 上記錄的就是整個(gè)系弇茲瞬時(shí)負(fù)載值。們來看下負(fù)責(zé)新的 scheduler_tick 這個(gè)核心函數(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);?}在這個(gè)函數(shù)中鱧魚獲當(dāng)前 cpu 以及其對應(yīng)的行隊(duì)列 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)前運(yùn)行隊(duì)西岳的負(fù)相對值?delta??=?calc_load_fold_active(this_rq);?if?(delta)??//添加到全局瞬時(shí)負(fù)載??atomic_long_add(delta,?&calc_load_tasks);?}在 calc_load_account_active 中看到,通過 calc_load_fold_active 獲取當(dāng)前運(yùn)行耳鼠列的負(fù)載對值,并把它到全局瞬時(shí)負(fù)值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當(dāng)前系統(tǒng)當(dāng)時(shí)間下的整體時(shí)負(fù)載總數(shù)了我們再展開看是如何根據(jù)運(yùn)隊(duì)列計(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;}哦,原來是同時(shí)計(jì)鱧魚 nr_running 和 nr_uninterruptible 兩種狀態(tài)的進(jìn)程的量。對應(yīng)于用空間中的 R 和 D 兩種狀態(tài)的 task 數(shù)(進(jìn)程 OR 線程)。由于 calc_load_tasks 是一個(gè)長期存在首山數(shù)。所以在刷新 rq 里的進(jìn)程數(shù)到其上的時(shí),只需要刷變的量就行,不全部重算。因上述函數(shù)返回是一個(gè) delta。2.2 定時(shí)計(jì)算系統(tǒng)均負(fù)載上一小中我們找到了統(tǒng)當(dāng)前瞬時(shí)負(fù) calc_load_tasks 變量的更新過程跂踵現(xiàn)在們還缺一個(gè)計(jì)過去 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負(fù)載茈魚機(jī)制。傳統(tǒng)義上,我們在算平均數(shù)的時(shí)采取的方法都把過去一段時(shí)的數(shù)字都加起然后平均一下把過去 N 個(gè)時(shí)間點(diǎn)的所有時(shí)負(fù)載都加起取一個(gè)平均數(shù)完事了。這其是我們傳統(tǒng)意上理解的平均,假如有 n 個(gè)數(shù)字,分別 x1, x2, ..., xn。那么這個(gè)數(shù)據(jù)集合的平數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用種簡單的算法計(jì)算平均負(fù)載話,存在以下個(gè)問題:1.需要存儲過去每個(gè)采樣周期的據(jù)假設(shè)我們每 10 毫秒都采集一次,那么需要使用一個(gè)較大的數(shù)組將一次采樣的數(shù)全部都存起來那么統(tǒng)計(jì)過去 15 分鐘的平均數(shù)就猙存 1500 個(gè)數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)個(gè)新的觀察值就要從移動(dòng)平中減去一個(gè)最的觀察值,再上一個(gè)最新的察值,內(nèi)存數(shù)會(huì)頻繁地修改更新。2.計(jì)算過程較為復(fù)倫山算的時(shí)候再把個(gè)數(shù)組全加起,再除以樣本數(shù)。雖然加法簡單,但是成上千個(gè)數(shù)字的加仍然很是繁。3.不能準(zhǔn)確表示當(dāng)前變化勢傳統(tǒng)的平均計(jì)算過程中,有數(shù)字的權(quán)重一樣的。但對平均負(fù)載這種時(shí)應(yīng)用來說,實(shí)越靠近當(dāng)前刻的數(shù)值權(quán)重該越要大一些好。因?yàn)檫@樣更好反應(yīng)近期化的趨勢。所,在 Linux 里使用的并不是我們所犲山的傳統(tǒng)的平均的計(jì)算方法,是采用的一種數(shù)加權(quán)移動(dòng)平(Exponential Weighted Moving Average,EMWA)的平均數(shù)計(jì)算。這種指數(shù)加移動(dòng)平均數(shù)計(jì)法在深度學(xué)習(xí)有很廣泛的應(yīng)。另外股票市里的 EMA 均線也是使用是類似的方法均值的方法。算法的數(shù)學(xué)表式是:a1 = a0 * factor + a * (1 - factor)。這個(gè)算法想理解起來點(diǎn)小復(fù)雜,感趣的同學(xué)可以 Google 自行搜索。我只需要知道這方法在實(shí)際計(jì)的時(shí)候只需要一個(gè)時(shí)間的平數(shù)即可,不需保存所有瞬時(shí)載值。另外就越靠近現(xiàn)在的間點(diǎn)權(quán)重越高能夠很好地表近期變化趨勢這其實(shí)也是在間子系統(tǒng)中定完成的,通過種叫做指數(shù)加移動(dòng)平均計(jì)算方法,計(jì)算這個(gè)平均數(shù)。我來詳細(xì)看下上中的執(zhí)行過程時(shí)間子系統(tǒng)將時(shí)鐘中斷中會(huì)冊時(shí)鐘中斷的理函數(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)每次時(shí)鐘節(jié)拍到時(shí)會(huì)調(diào)用到 timer_interrupt,依次會(huì)調(diào)用 do_timer 函數(shù)。//file:kernel/time/timekeeping.cvoid?do_timer(unsigned?long?ticks){???calc_global_load(ticks);}其中 calc_global_load 是平均負(fù)載計(jì)算的核心。會(huì)獲取系統(tǒng)當(dāng)瞬時(shí)負(fù)載值 calc_load_tasks,然后來計(jì)算去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù),并保存到 avenrun 中,供用戶進(jìn)讀取。//file:kernel/sched/core.cvoid?calc_global_load(unsigned?long?ticks){??//?1獲取當(dāng)前瞬時(shí)負(fù)載?鶉鳥active?=?atomic_long_read(&calc_load_tasks);?//?2平均負(fù)載的計(jì)弄明?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);?}獲取瞬時(shí)負(fù)載比簡單,就是讀一個(gè)內(nèi)存變量已。在 calc_load 中就是采用了們前面說的指加權(quán)移動(dòng)平均來計(jì)算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)載的。體實(shí)現(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;}雖然這個(gè)算法解起來挺復(fù)雜但是代碼看起確實(shí)要簡單不,計(jì)算量看起很少。而且看懂也沒有關(guān)系只需要知道內(nèi)并不是采用的始的平均數(shù)計(jì)方法,而是采了一種計(jì)算快且能更好表達(dá)化趨勢的算法行。至此,我開篇提到的“載是如何計(jì)算來的?”這個(gè)問題也有結(jié)欽鵧了Linux 定時(shí)將每個(gè) CPU 上的運(yùn)行隊(duì)列中 running 和 uninterruptible 的狀態(tài)的進(jìn)程數(shù)量匯總到一全局系統(tǒng)瞬時(shí)載值中,然后定時(shí)使用指數(shù)權(quán)移動(dòng)平均法統(tǒng)計(jì)過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)女薎。三、均負(fù)載和 CPU 消耗的關(guān)系現(xiàn)在很多龍山學(xué)將平均負(fù)載和 CPU 給聯(lián)系到了一起。認(rèn)負(fù)載高、CPU 消耗就會(huì)高,負(fù)白雉低,CPU 消耗就會(huì)低。在那父老的 Linux 的版本里,統(tǒng)計(jì)負(fù)載時(shí)候確實(shí)是只算了 runnable 的任務(wù)數(shù)量,這江疑程只對 CPU 有需求。在那猙年代里,負(fù)和 CPU 消耗量確實(shí)是正關(guān)的。負(fù)載越就表示正在 CPU 上運(yùn)行,或等待 CPU 執(zhí)行的進(jìn)程越多,CPU 消耗量也會(huì)越高但是前面我們到了,本文使的 3.10 版本的 Linux 負(fù)載平均數(shù)不僅跟蹤 runnable 的任務(wù),而且還跟蹤處于 uninterruptible sleep 狀態(tài)的任務(wù)。 uninterruptible 狀態(tài)的進(jìn)程其實(shí)是不占 CPU 的。所以說,負(fù)載高不一定是 CPU 處理不過來,也騩山可能會(huì)因?yàn)榇疟P等其資源調(diào)度不過而使得進(jìn)程進(jìn) uninterruptible 狀態(tài)的進(jìn)程導(dǎo)致洵山!為么要這么修改我從網(wǎng)上搜到遠(yuǎn)在 1993 年的一封郵件里找翳鳥了原因以下是郵件原。From:?Matthias?Urlichs?