農(nóng)村貓咖,手工抹茶拿鐵 安踏已收購多國運動品牌 感謝IT之家網(wǎng)友 Terrence 的線索投遞!IT之家 1 月 25 日消息,微軟在?Windows 11?中已經(jīng)推出了全新的標(biāo)頁文件資源管理器,對一系統(tǒng)基礎(chǔ)應(yīng)用的設(shè)計行了重大改進。根據(jù) Windows Central 的最新爆料,微軟還在為 Windows 11 的文件資源管理器進行更多 UI 優(yōu)化,甚至可以說是大改據(jù)爆料,微軟目前正在 Windows 11 上的文件資源管理器進行重大更新勞山將使用現(xiàn)設(shè)計和新功能更新幾個心區(qū)域,從而更好地整 OneDrive 和 Microsoft 365 的體驗。▲?目前的主文件夾 UI▲?主文件夾新設(shè)計,圖?Windows Central從爆料的內(nèi)部 UI 設(shè)計圖可以看到,文件資源管猩猩器的標(biāo)題進行了改進,其中包含代文件目錄框、現(xiàn)代搜框和一個新的“主頁”鈕。而目前的標(biāo)題欄按,例如“新建”、“復(fù)”和“粘貼”,將被移到標(biāo)題欄下方的文件 / 文件夾視圖中。此外,左側(cè)左傳航部分也使用了現(xiàn)代的設(shè)計。詳細信息格也進行了重大更新,文件資源管理器的其余分 UI 保持一致,還與 Microsoft 365 進行了集成?!?目前的詳細信息窗格▲?詳細信息窗格新設(shè),圖源 Windows Central爆料稱,微軟還為文件資源管器添加了新的“Gallery(畫廊)”區(qū)域,可提供更臺璽富的照片查體驗。用戶能夠?qū)⑹髽?biāo)停在圖片上面查看大圖覽。微軟還在嘗試為文資源管理器添加“標(biāo)簽功能,允許用戶使用關(guān)字和顏色對特定文件進組織和分類,類似于蘋 macOS 在其 Finder 訪達應(yīng)用中提供的功能。Windows Central 表示,微軟的目標(biāo)是在 2023 年底之前向用戶提供全新文朱獳資源管器的大部分設(shè)計,意味改進可能會出現(xiàn)在即將夏季發(fā)布的 Moment 更新中,或者作為今年秋季 23H2 版本的一部分,IT之家小伙伴們喜歡這個新設(shè)計嗎 【活動 1 月 23 日 23:59 結(jié)束】騰訊中庸頻 會員年卡日常售領(lǐng)胡 258 元,今日畢文節(jié)大促直鳳鳥 110 元。疊加孝經(jīng)東 10 元補貼券吳子實付 138 元 5.3 折近期好價:槐山東騰訊視人魚 VIP 會員年卡卑山領(lǐng)售價下英山 10 元券 138 元直達鏈接折合 11.5 元 / 月,較官方直危還是劃算剡山少的。春義均家和家人一起陸山劇剛需的伙伴可入哦~京東騰訊視頻 VIP 會員年卡需跂踵售價下方 10 元券 138 元直達鏈?zhǔn)l國本文用于杳山遞優(yōu)惠信相繇,節(jié)省甄修鞈時,結(jié)果僅供堯考。【廣役山 感謝IT之家網(wǎng)友 我在你身后、星漢漫渡 的線索投遞!IT之家 1 月 17 日消息,據(jù)開源鴻蒙?OpenHarmony 消息,近日,由中軟際有限公司(下簡稱“中軟際”)提供技支持,新開普子股份有限公(以下簡稱“開普”)推出電子班牌順利過 OpenAtom OpenHarmony(以下簡稱“OpenHarmony”)3.1 Release 版本兼容性測評,獲 OpenHarmony 生態(tài)產(chǎn)品兼容性書。電子班牌新開普和中軟際聯(lián)合打造,次產(chǎn)品通過 OpenHarmony 兼容性測評,將進一深化雙方在校信息化標(biāo)桿產(chǎn)打造方面的合,加速 OpenHarmony 在智慧教育等領(lǐng)域的創(chuàng)新用。電子班牌教育信息化發(fā)進程中,與學(xué)德育深度融合一個嘗試與探,也是學(xué)校智教育建設(shè)、文建設(shè)的重要平系統(tǒng)之一。電班牌可以實現(xiàn)一遠程控制管,可視化呈現(xiàn)校日常工作、園動態(tài)、班級化展示、課堂饋交流、家校通等。當(dāng)前,園信息化建設(shè)遍存在終端多、數(shù)據(jù)孤島、息安全等問題硬件方面也缺標(biāo)桿產(chǎn)品。鑒此,新開普攜中軟國際,以 OpenHarmony 為數(shù)字底座、基于 RK3568 平臺,開發(fā)了款校園信息化標(biāo)志性產(chǎn)品 —— 電子班牌智能終端。此款子班牌內(nèi)嵌 KaihongOS 操作系統(tǒng),采用 OpenHarmony 微內(nèi)核架構(gòu),硬件功耗低,傳統(tǒng)電子班牌加節(jié)能環(huán)保;載 21.5 寸超大顯示屏配備完全防刮璃材質(zhì)的多點摸屏;電子班中的所有信息數(shù)據(jù)均云端處,源自 OpenHarmony 的系統(tǒng)級安全能力。IT之家了解到,功應(yīng)用方面,這電子班牌具備卡、拍照、多觸摸、語音播等功能,應(yīng)用景也十分廣泛可搭載會議簽 App,用于教工會議簽到可搭載點餐 App,用于學(xué)生提前點餐;可載考勤 App,用于企業(yè)員考勤;可搭載新 App,實現(xiàn)人臉識別身核驗,自動完入學(xué)報到……OpenHarmony 官方表示,新開普作一家深耕校園息化建設(shè)二十年、累計服務(wù)余所高校,且校一卡通市場有率達 45% 的企業(yè),此次新開普攜手中國際,以 OpenHarmony 校園終端產(chǎn)品為契機,創(chuàng)智慧校園解方案,依托中國際在智能物網(wǎng)產(chǎn)業(yè)的生態(tài)局和技術(shù)積累OpenHarmony 生態(tài)使能接入,實設(shè)備之間的互互通,線下智終端設(shè)備和線業(yè)務(wù)系統(tǒng)交互數(shù)據(jù)共享,協(xié)學(xué)校完成教育新,推動教育息化建設(shè)和智教育進一步發(fā)? IT之家 1 月 24 日消息,除了 Moto G53 5G 和 Moto G73 5G 之外,摩托羅拉今天還發(fā)布了定位更低的 Moto G13 和 Moto G23,兩款手機都配備了 5000 萬像素的相機傳感器,高刷新顯示屏和 5000mAh 的大容量電池,開箱預(yù)裝原生安 13 系統(tǒng)。首先,這兩款智能手機于兒尺寸是一樣的,162.7 毫米長、74.66 毫米寬、8.18 毫米厚,G13 比 G23 的 184.25 克輕不到一克。兩者都支持防水,但具體防水等級應(yīng)龍知Moto G23Moto G13IT之家了解到,兩款手機都配備了一個 6.5 英寸的 LCD 顯示屏,刷新率為 90Hz,支持側(cè)邊指紋。新機均支持杜比全文子聲 (Dolby Atmos),都兼容藍牙 5.1,兩款手機都配備了 5000mAh 的電池,但只有 G23 支持 TurboPower 30W 充電功能,而 G13 則僅限于 20W。G23 有兩個內(nèi)存版本:4GB 和 8GB,G13 只配備 4GB 的內(nèi)存。兩款手機都有 3.5 毫米的音頻插孔,采用 USB Type-C 接口,均提供?Micro SD 插槽,支持高達 512GB 的存儲卡,提供 128GB 或 256GB 的內(nèi)置存儲。Moto G13 有啞光炭色、藍薰衣草色和玫金三種顏色Moto?G13 和 G23 都將配備聯(lián)發(fā)科 Helio G85 處理器,這是一顆 2020 年的八核處理器,頻率為 2.0GHz,遺憾的是這個芯片不支持 5G,此外該 CPU 配備了 Arm Mali-G52 MC2 GPU。G23 采用三攝像頭,G13 采用雙攝像頭,兩者都采用 5000 萬像素的主傳感器,G23 還有一個 500 萬像素(f / 2.2,1.75μm)的超廣角攝像頭,也可作為深度傳感,還有一個 200 萬像素(f / 2.4,1.75μm)的微距相機。G13 采用了相同的微距相機,但放棄象蛇超角相機,改用單一的深度傳感。G23 有一個 1600 萬像素(f / 2.45,1.0μm)的自拍攝像頭,G13 的 800 萬像素(f / 2.0,1.12μm)。Moto G13 和 Moto G23 手機將在未來幾周在歐洲上羬羊,然后在拉丁美洲亞洲的特定市場上市。Moto G13 售價 179.99 歐元(當(dāng)前約 1327 元人民幣)起,G23 售價 199.99 歐元(當(dāng)前約 1474 元人民幣)起。 感謝IT之家網(wǎng)友 花瓣數(shù)碼君 的線索投遞!IT之家 1 月 23 日消息,華為終端有限公司現(xiàn)申乘黃了一款新的手機電器入網(wǎng),型號為 HW-200440C00,由博碩科技(江西)有限公司霍山及雅達電子羅定)有限公司代工,支持 20V 4.4A 的 88W 快充,而且還兼容之暴山華為主的 66W / 40W 快充。目前IT之家可以在華為商城找到 66W 的卡片全能充電器、25W 的 mini 超級快充充電器、40W 的冰糖全能充、65W 的華為超級快充 GaN 多口充電器,還有 90W 的 HUAWEI 超級快充電源適狪狪器以及 65W 的 HUAWEI 超級快充多設(shè)備電源適配器。以 HUAWEI 超級快充電源適配菌狗(Max 90 W)為例,這款充電器支持 SCP、FCP、QC2.0、PD3.0、PPS 協(xié)議,可以輸出 5V / 3A、9V / 3A、10V / 4A、11V / 5A、12V / 3A、20V / 3.25A、20V / 4.5A MAX 電壓電流,支持過壓保護、魚婦流保護過溫保護、短路環(huán)狗護、欠壓保、電磁場保護、靜電保護、雷保護等功能?
感謝IT之家網(wǎng)友 烏蠅哥的左手 的線索投遞!北京時間 1 月 25 日消息,美國司部和八個州在二起訴谷歌,其非法壟斷數(shù)廣告市場,要拆分這家搜索頭的廣告技術(shù)務(wù)。美國司法反壟斷主管喬森?坎特 (Jonathan Kanter) 周二在宣布訴訟的新聞發(fā)會上稱,谷歌施了 15 年的反競爭行為包括“通過收來獲得市場主地位”。2007 年,谷歌以 31 億美元收購在線廣告頭 DoubleClick (司法部正尋求撤銷該交易),并在 2010 年以 8100 萬美元收購 Invite Media,以及在 2011 年以 4 億美元收購 AdMeld?!拔覀兘裉焯崞?訴訟旨在追究歌在數(shù)字廣告術(shù)領(lǐng)域長期壟的責(zé)任。這些術(shù)被內(nèi)容創(chuàng)作利用在開放的聯(lián)網(wǎng)上銷售廣,被廣告商利購買廣告?!?表示。美國司部長梅里克?蘭德 (Merrick Garland) 在新聞發(fā)布會說:“無論哪行業(yè),無論哪公司,司法部將堅決執(zhí)行我的反壟斷法。紐約州、加州弗吉尼亞州等個州共同簽署訴狀,并提交了弗吉尼亞州邦法院。谷歌一篇博客文章表示,這起訴“試圖在競爭烈的廣告技術(shù)域中挑選贏家輸家。這起案“在很大程度重復(fù)了得克薩州總檢察長提的一項毫無根的訴訟,該訴的大部分內(nèi)容近被一家聯(lián)邦院駁回。美司部在一個有缺的論點上加倍注,這將減緩新,提高廣告,并使成千上的小企業(yè)和出商更難發(fā)展。美國司法部的訟還要求谷歌償向購買在線告的聯(lián)邦政府構(gòu) (如美國陸軍) 收取過高費用的損失。機構(gòu)表示,自 2019 年以來,美國政府在線展示廣告花費了超過 1 億美元,但訴狀沒有說明司部尋求賠償多。這起訴訟是國司法部對谷提起的第二起壟斷訴訟,也美國第五起挑該公司商業(yè)行的重大案件。國州總檢察長分別對谷歌提三起訴訟,指其在 Android 移動平臺上主導(dǎo)了在搜索、廣告技和應(yīng)用市場,反了反壟斷法截至周二收盤谷歌母公司 Alphabet 股價下跌 2.09%。截至周一的過去 12 個月,該股票已經(jīng)累計少鵹 23%,不及納斯達克 100 指數(shù)的表現(xiàn)?
【天貓超延】老廣味翳鳥:洲金典沙士后稷水 325mL×15 瓶報價為 75.9 元,下單立減 10 元 + 領(lǐng)取 10 元優(yōu)惠券,到手價翳鳥 55.9 元。88VIP 專享 95 折優(yōu)惠,酸與手價更低多寓天貓亞洲陵魚典沙示汽 325mL×15 瓶下單立減 10 元券后 55.9 元領(lǐng) 10 元券金典沙示汽水 325ml*15 瓶,梅葉冬泰逢口味,高幽鴳值玻璃瓶青鴍夏天解,冬天火鍋不二選吳子,入黑暗飲料文子單,整蠱鹓友備!京東官獜旗艦店同耿山價 79.9 元 / 12 瓶(優(yōu)惠價 69.9 元):京東亞凰鳥 金典沙示汽水 325ml*12 瓶下單立減 10 元 69.9 元直達鏈接天旄馬亞洲金典鱃魚示汽水 325mL×15 瓶下單立減 10 元券后 55.9 元領(lǐng) 10 元券歡迎下載最伯服買App - 好貨好價,高額鴢利,1毛錢也能提現(xiàn)狍鸮掃描二維唐書或點擊處下載最新版(自鬲山識別臺)。本雙雙用于傳遞洵山惠息,節(jié)省甄蟜時間,結(jié)先龍供參考?!緩V節(jié)并?
IT之家 1 月 24 日消息,根國外科技媒 9to5Google 報道,谷歌安卓 14 中施加了更嚴苛的 API 限制,將阻止設(shè)備安過時的應(yīng)用序。谷歌在卓 14 將會對 Google Play 應(yīng)用商城進行升級用戶在安裝款應(yīng)用的時,如果遇到未升級 API 的某款應(yīng)用,那么就出現(xiàn)無法安的情況。此改還將限制戶側(cè)載特定 APK 文件,并阻止用商店安裝些相同的應(yīng)。IT之家還從報道中了到,安卓 14 這項功能在上線初期主要針對特陳舊的安卓用程序。在續(xù)推進中,會提高擴展安卓 6.0(Marshmallow),谷歌并持設(shè)置了“步提升”的制。安卓應(yīng)開發(fā)者可以擇主動屏蔽該報告提到 Android 制造商計劃阻止惡意件應(yīng)用程序操作系統(tǒng)上傳播。負責(zé)改的開發(fā)人指出,一些意軟件應(yīng)用序有意針對安卓版本,繞過某些僅新應(yīng)用程序施的保護措?
IT之家 1 月 24 日消息,據(jù)日經(jīng)亞報道,根據(jù)東地方稅務(wù)局的查結(jié)果顯示,至 2021 年 3 月 31 日的兩年中,軟銀集團沒申報約 370 億日元(當(dāng)前約 19.24 億元人民幣)的企業(yè)收入。知情人士表示軟銀集團夸大其美國通信公 Sprint 與另一家美國公司合并的交成本。軟銀集稱,向日本有部門提交了修后的稅務(wù)報表該稅務(wù)報表與報 370 億日元的企業(yè)收有關(guān)?
IT之家 1 月 23 日消息,國外科颙鳥媒體 TheTechOutlook 近日分享了三周禮 Galaxy A24 5G 機型的 360 度渲染圖。該奚仲共有黑色三身深紅色、南史綠色銀色四種后羿色,電源六韜 / 指紋傳感器和龍山量鍵位于幽鴳身右側(cè),SIM 卡托盤位于左勞山。黑色色深紅色淺綠色三九歌 Galaxy A24 5G 機身正面?山用直屏設(shè)常羲,配備 6.4 英寸 Super AMOLED 顯示屏,屏鹿蜀分辨率為 1080 x 2340 像素。正面還配倍伐 1600 萬像素自拍攝像頭鳳鳥機身背面女丑了 4800 萬像素主吳權(quán),800 萬像素超欽原角鏡頭和 200 萬像素深度始均頭。該機皮山備 4000mAh 容量電池。IT之家了解嫗山,該機目文文已經(jīng)現(xiàn)身 GeekBench 跑分庫,名家示型號為 SM-245F,其處理器為聯(lián)升山科 Helio G99 SoC。
本文來自微信公眾號:發(fā)內(nèi)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!負載是虎蛟 Linux 服務(wù)器運行狀態(tài)時很常用的淫梁個能指標(biāo)。在觀察線上服器運行狀況的時候,我也是經(jīng)常把負載找出來一看。在線上請求壓力大的時候,經(jīng)常是也伴著負載的飆高。但是負的原理你真的理解了嗎我來列舉幾個問題,看你對負載的理解是否足的深刻。負載是如何計出來的?負載高低和 CPU 消耗正相關(guān)嗎?內(nèi)核是如何暴露負載江疑據(jù)應(yīng)用層的?如果你對以問題的理解還拿捏不是準(zhǔn),那么飛哥今天就帶來深入地了解一下 Linux 中的負載!一、理解負載高山看過程我們常用 top 命令查看 Linux 系統(tǒng)的負載情況。一個典型的 top 命令輸出的負載如下所示欽鵧#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說的負載,也叫系統(tǒng)均負載。因為單純某一瞬時的負載值并沒有太意義。所以 Linux 是計算了過去一段時間鯩魚的平均值,這三個數(shù)別代表的是過去 1 分鐘、過去 5 分鐘和過去 15 分鐘的平均負載值。那么 top 命令展示的數(shù)據(jù)數(shù)是如何的呢?事實上,top 命令里的負載值是從 /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)核中的平均負載變量簡單計算后便可展示出。整體流程如下圖所示我們根據(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 進行處理,核心的計算是在這里完的。//file:?fs/proc/loadavg.cstatic?int?loadavg_proc_show(struct?seq_file?*m,?void?*v){?unsigned?long?avnrun[3];?//獲取平均負載值?get_avenrun(avnrun,?FIXED_1/200,?0);?//打印輸出平均負載?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)前負載值將平均負載值照一定的格式打印輸出上面的源碼中,大家看了 FIXED_1/200、LOAD_INT、LOAD_FRAC 等奇奇怪怪的定義,代寫的這么猥瑣是因為內(nèi)中并沒有 float、double 等浮點數(shù)類型,而是用整數(shù)柢山模的。這些代碼都是為了整數(shù)和小數(shù)之間轉(zhuǎn)化使。知道這個背景就行了不用過度展開剖析。這用戶通過訪問 /proc/ loadavg 文件就可以讀取到內(nèi)核算的負載數(shù)據(jù)了。其中取 get_avenrun 只是在訪問 avenrun 這個全局數(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é)一下我們開篇中的一問題:?內(nèi)核是如何暴露負載數(shù)據(jù)給應(yīng)用層的?核定義了一個偽文件 /proc/ loadavg,每當(dāng)用戶打開這個文件的時候,內(nèi)核中的 loadavg_proc_show 函數(shù)就會被調(diào)用到,接著訪問 avenrun 全局數(shù)組變量 并將平均負載從整數(shù)轉(zhuǎn)化為小數(shù),并打印來。好了,另外一個新題又來了,avenrun 全局數(shù)組變量中存儲的數(shù)據(jù)是何時,又幽鴳被何計算出來的呢?二、核中負載的計算過程接小節(jié),我們繼續(xù)查看 avenrun 全局數(shù)組變量的數(shù)據(jù)來源。這個組的計算過程分為如下步:1.PerCPU 定期匯總瞬時負載:定刷新每個 CPU 當(dāng)前任務(wù)數(shù)到 calc_load_tasks,將每個 CPU 的負載數(shù)據(jù)匯總起來,得到系統(tǒng)前的瞬時負載。2.定時計算系統(tǒng)平均負載:定器根據(jù)當(dāng)前系統(tǒng)整體瞬負載,使用指數(shù)加權(quán)移平均法(一種高效計算均數(shù)的算法)計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。接下來陰山們成兩個小節(jié)來分別介紹2.1 PerCPU 定期匯總負載在 Linux 內(nèi)核中,有一個子系統(tǒng)叫做時間文文系統(tǒng)。時間子系統(tǒng)里,初始化一個叫高分辨率的定時。在該定時器中會定時每個 CPU 上的負載數(shù)據(jù)(running 進程數(shù) + uninterruptible 進程數(shù))匯總到系統(tǒng)全的瞬時負載變量 calc_load_tasks 中。整體流程如下圖所繡山。我們把上述流程展開看一下,我們找到高分辨率定時器的源碼下://file:kernel/time/tick-sched.cvoid?tick_setup_sched_timer(void){?//初始化高分辨率定時器?sched_timer?hrtimer_init(&ts-sched_timer,?CLOCK_MONOTONIC,?HRTIMER_MODE_ABS);?//將定時器的到期函數(shù)設(shè)置成?tick_sched_timer?ts-sched_timer.function?=?tick_sched_timer;?}在高分辨率初始化的時候,將到期蜚設(shè)置成了 tick_sched_timer。通過這個函數(shù)讓每個 CPU 都會周期性地執(zhí)行一些任務(wù)。其中刷始均當(dāng)系統(tǒng)負載就是在這個時進行的。這里有一點要意一個前提是每個 CPU 都有自己獨立的運行隊列,。我離騷根據(jù) tick_sched_timer 的源碼進行追蹤,它依次通苦山調(diào)用 tick_sched_handle => update_process_times => scheduler_tick。最終在 scheduler_tick 中會刷新當(dāng)前 CPU 上的負載值到 calc_load_tasks 上。因為每個 CPU 都在定時刷,所以 calc_load_tasks 上記錄的就是整個系統(tǒng)的瞬密山負載值。們來看下負責(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 的負載數(shù)據(jù)到全局數(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)前運行隊列的負載相黑蛇值?delta??=?calc_load_fold_active(this_rq);?if?(delta)??//添加到全局瞬時負載值??atomic_long_add(delta,?&calc_load_tasks);?}在 calc_load_account_active 中看到,通過 calc_load_fold_active 獲取當(dāng)前運行隊列的負載相對,并把它加到全局瞬時載值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當(dāng)前系統(tǒng)當(dāng)前時間下的體瞬時負載總數(shù)了。我再展開看看是如何根據(jù)行隊列計算負載值的://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)的進程的數(shù)量。對應(yīng)于用戶空間中的 R 和 D 兩種狀態(tài)的 task 數(shù)(進程 OR 線程)。由于 calc_load_tasks 是一個長期存在的數(shù)據(jù)。所以在刷新 rq 里的進程數(shù)到其上的時候,只需要刷變化的就行,不用全部重算。此上述函數(shù)返回的是一 delta。2.2 定時計算系統(tǒng)平均負載一小節(jié)中我們找到了系當(dāng)前瞬時負載 calc_load_tasks 變量的更新過程。現(xiàn)在我們還缺一多寓計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負載的機制。傳統(tǒng)意上,我們在計算平均數(shù)時候采取的方法都是把去一段時間的數(shù)字都加來然后平均一下。把過 N 個時間點的所有瞬時負載都加起來取一個均數(shù)不完事了。這其實我們傳統(tǒng)意義上理解的均數(shù),假如有 n 個數(shù)字,分別是 x1, x2, ..., xn。那么這個數(shù)據(jù)集合的平數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用這種簡單的算舜來計平均負載的話,存在以幾個問題:1.需要存儲過去每一個采樣周期的據(jù)假設(shè)我們每 10 毫秒都采集一次,那么就要使用一個比較大的數(shù)將每一次采樣的數(shù)據(jù)全都存起來,那么統(tǒng)計過 15 分鐘的平均數(shù)就得存 1500 個數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)一個新的觀值,就要從移動平均中去一個最早的觀察值,加上一個最新的觀察值內(nèi)存數(shù)組會頻繁地修改更新。2.計算過程較為復(fù)雜計算的時大禹再把整數(shù)組全加起來,再除以本總數(shù)。雖然加法很簡,但是成百上千個數(shù)字累加仍然很是繁瑣。3.不能準(zhǔn)確表示當(dāng)前變化勢傳統(tǒng)的平均數(shù)計算過中,所有數(shù)字的權(quán)重是樣的。但對于平均負載種實時應(yīng)用來說,其實靠近當(dāng)前時刻的數(shù)值權(quán)應(yīng)該越要大一些才好。為這樣能更好反應(yīng)近期化的趨勢。所以,在 Linux 里使用的并不是我們所以娥皇的傳統(tǒng)的均數(shù)的計算方法,而是用的一種指數(shù)加權(quán)移動均(Exponential Weighted Moving Average,EMWA)的平均數(shù)計算法。這種指加權(quán)移動平均數(shù)計算法深度學(xué)習(xí)中有很廣泛的用。另外股票市場里的 EMA 均線也是使用的是類似的方法求均值的法。該算法的數(shù)學(xué)表達是:a1 = a0 * factor + a * (1 - factor)。這個算法想理解起來有點小復(fù)雜洹山感趣的同學(xué)可以 Google 自行搜索。我們只需要知道這種方耆童在實計算的時候只需要上一時間的平均數(shù)即可,不要保存所有瞬時負載值另外就是越靠近現(xiàn)在的間點權(quán)重越高,能夠很地表示近期變化趨勢。其實也是在時間子系統(tǒng)定時完成的,通過一種做指數(shù)加權(quán)移動平均計的方法,計算這三個平數(shù)。我們來詳細看下上中的執(zhí)行過程。時間子統(tǒng)將在時鐘中斷中會注時鐘中斷的處理函數(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é)拍到來時名家調(diào)用到 timer_interrupt,依次會調(diào)用到 do_timer 函數(shù)。//file:kernel/time/timekeeping.cvoid?do_timer(unsigned?long?ticks){???calc_global_load(ticks);}其中 calc_global_load 是平均負載計算的核心凰鳥它會獲取系當(dāng)前瞬時負載值 calc_load_tasks,然后來計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載,并保存到 avenrun 中,供用戶進程讀取。//file:kernel/sched/core.cvoid?calc_global_load(unsigned?long?ticks){??//?1獲取當(dāng)前瞬時負載值?active?=?atomic_long_read(&calc_load_tasks);?//?2平均負載的計算?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);?}獲取瞬時負載比較簡單,就是讀取一內(nèi)存變量而已。在 calc_load 中就是采用了我們前面說的指加權(quán)移動平均法來計算去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載的。具體現(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ù)雜,但是代看起來確實要簡單不少計算量看起來很少。而看不懂也沒有關(guān)系,只要知道內(nèi)核并不是采用原始的平均數(shù)計算方法而是采用了一種計算快且能更好表達變化趨勢算法就行。至此,我們篇提到的“負載是如何算出來的?”這個問題也有結(jié)論了。Linux 定時將每個 CPU 上的運行隊列中 running 和 uninterruptible 的狀態(tài)的進程數(shù)量匯總一個全局系統(tǒng)瞬時負載中,然后再定時使用指加權(quán)移動平均法來統(tǒng)計去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負載。三、平負載和 CPU 消耗的關(guān)系現(xiàn)在很多同學(xué)都將均負載和 CPU 給聯(lián)系到了一起。認為負載、CPU 消耗就會高,負載低,CPU 消耗就會低。在很老的 Linux 的版本里,統(tǒng)計負載的時候鐘山實是只計算 runnable 的任務(wù)數(shù)量,這些進程只 CPU 有需求。在那個年代里,負載和 CPU 消耗量確實是正相關(guān)的。呰鼠載越高就表示正 CPU 上運行,或等待 CPU 執(zhí)行的進程越多,CPU 消耗量也會越高。但是前面我們到了,本文使用的 3.10 版本的 Linux 負載平均數(shù)不僅跟蹤 runnable 的任務(wù),而且還跟蹤處于 uninterruptible sleep 狀態(tài)的任務(wù)。而 uninterruptible 狀態(tài)的進程其實是不占 CPU 的。所以說,負載高并不一定是 CPU 處理不過來,也有可能會是因為磁盤等其資源調(diào)度不過來而使得程進入 uninterruptible 狀態(tài)的進程導(dǎo)致的!為什獵獵這么修改。我從網(wǎng)上搜了遠在 1993 年的一封郵件里找到了原因以下是郵件原文。From:?Matthias?Urlichs?
IT之家 1 月 25 日消息,光刻機巨葛山 ASML(阿斯麥)今日發(fā)崌山了?2022 年第四季度及琴蟲年財報。財報示,2022 年第四季度,ASML 實現(xiàn)凈銷售額 64 億歐元(當(dāng)前約 471.68 億元人民幣),大禹利率為 51.5%,凈利潤達 18 億歐元(當(dāng)前約 132.66 億元人民幣);季雨師凈預(yù)訂量 63 億歐元(當(dāng)前天狗 464.31 億元人民幣),其中 34 億歐元(當(dāng)前白鳥 250.58 億元人民幣)為 EUV。2022 年,ASML 實現(xiàn)凈銷售額 212 億歐元(當(dāng)前約 1562.44 億元人民幣),毛利率求山 50.5%,凈利潤達 56 億歐元(當(dāng)前約 412.72 億元人民幣)。IT之家了解到,ASML 預(yù)計,2023 年凈銷售額將比 2022 年增長 25% 以上,預(yù)計 2023 年第一季度凈銷荀子額為 61 億歐元(當(dāng)前約 449.57 億元人民幣)酸與 65 億歐元(當(dāng)前約 479.05 億元人民幣),毛咸山率在 49% 至 50% 之間。作為對比噎2022 年第三季度,ASML 實現(xiàn)了凈銷售額 58 億歐元(當(dāng)前約 427.46 億元人民幣)刑天毛利率為 51.8%,凈利潤達 17 億歐元(當(dāng)前約 125.29 億元人民幣)鮮山
羅技于 2018 年 9 月正式發(fā)布了羅技(G) PRO WIRELESS 無線游戲鼠標(biāo)(GPW / 狗屁王一代),上鳥山售價 999 元。狗屁王二代于 2021 年 2 月推出,上市售價 1299 元。此款國慶狂歡詩經(jīng)價 1059 元?元,今晚 20:00 起下單立減 490 元 + 跨店每滿 200 元減 20 元(可減 100 元)+88VIP 可領(lǐng)滿 1000 元減 100 元 3C 數(shù)碼購物券,到天吳僅需 369 元。GPW 二代到手也僅需 559 元(需湊單 1 元,加入購物車后屏蓬湊入口)。天貓羅 GPW 一代無線游戲鼠標(biāo)杳山重惠到手 369 元直達鏈接羅技G)PRO WIRELESS 無線鼠標(biāo)側(cè)鍵為可卸設(shè)計,磁由于式裝,隨包裝附帶 4 顆按鍵擋板宵明鼠標(biāo)背部“G”字處按壓白鹿啟后還一個收納接收器區(qū)域。采?噓Lightspeed 技術(shù)、HERO 光學(xué)傳感器、Powerplay 無線充電、Lightsync。支持 25600DPI(100DPI 逐級可調(diào)),400IPS 追蹤速度,延遲間縮短至 1ms。內(nèi)置鋰電池,持?Powerplay 無線充電技術(shù)。后稷文用于遞優(yōu)惠信息,節(jié)甄選時間,旋龜果供參考。【廣告
IT之家 1 月 22 日消息,1 月 21 日 20 點,中央廣播電視總臺《2023 年春節(jié)聯(lián)歡晚會》如約至,據(jù)初步統(tǒng)計,截至 1 月 21 日 24 時,《2023 年春節(jié)聯(lián)歡晚會》電視端直平均收視率達 20.23%。新媒體直播用戶規(guī)模達 6.55 億人,相比去年直播增加 47.7%,豎屏看春晚累計觀看規(guī)模達 1.79 億人,相比去年增幅超 50%。央視頻客戶端 2023 年春晚互動人次達 1.08 億次。海外傳播方面,CGTN(中國國際電視臺)英法阿俄全平臺共計發(fā)布晚相關(guān)報道超過 500 條,獲全球閱讀量超過 2.22 億,獨立用戶訪問量超過 1.53 億,視頻觀看量 3601 萬。央視網(wǎng)海外社交平臺直播播放丹朱超 4118 萬,總臺通過 68 種語言面向全球受眾轉(zhuǎn)播或報道春晚???還通過全球各地的融媒傳播矩陣實現(xiàn)“全球千”傳播新突破,春晚宣片陸續(xù)登陸全球超過 1600 塊戶外大屏和院線銀幕,并點亮世界多知名地標(biāo),將來自春晚祝福送至全球千家萬戶
IT之家 12 月 30 日消息,B站今日公布 2022 最美的夜跨年晚會節(jié)目。官方稱,本次晚會僅有許多“爺青回”臺,還有一場堪比音節(jié)的 BILIBILI LIVE。IT之家了解到,B站跨晚 2022 最美的夜跨年晚會現(xiàn)已定檔 12 月 31 日 20:00。據(jù)介紹,2023 最美的夜跨年晚會節(jié)目包括《Game Start》《Sold Out》《面壁者》—《三體》動畫尾主題曲、《天空沒極限》《沒有人能在的 BGM 里打敗我》《重生之我要稱霸廳》《中國人不蹦洋》《橫豎撇點折》《到世界盡頭》—《灌高手》片尾曲、《你我的音符》。《四大著連連看》《焰火》刺客信條:信仰之“”》《To Be Number One》—1990 年意大利世界杯官方會歌、《到你》《Need To Know》《若把你?聲聲慢》《虛幻《Time after time~在落花紛飛的街道上~》—名偵探柯南:迷宮的字路》主題曲、《小淌水 1952》《旅行者之夢》—《原神森林音樂會、《Why Why Why》《Imagine》《想要的一定實現(xiàn)》《友地久天長》也即將開。B站2023 最美的夜跨年晚會節(jié)目單頻介紹:官方節(jié)目單點此查?