查韋斯(哈利?戴恩?斯坦通 Harry Dean Stanton 飾)迷失在德州荒無人煙的沙漠中,因為身體虛弱而昏迷。醫(yī)院聯(lián)系了他的弟弟沃特(迪恩?斯托克維爾 Dean Stockwell 飾)來接他。出院的查韋斯一直沉默,直到看見“巴黎,德州”的牌子,才終于開口?;氐铰迳即壍艿芗?,查韋斯見到了兒子——亨特(亨特?卡森 Hunter Carson 飾演),弟弟弟妹其實是養(yǎng)父養(yǎng)母。但是亨特對突如其來的父親并不接受。后來,查韋斯用很特別的方式收復(fù)了孩子的心。通過交流,查韋斯了解到孩子的生母——簡(娜塔莎?金斯基 Nastassja Kinski 飾)的下落。于是,父子踏上了一條尋母之路……本片獲第37屆戛納電影節(jié)最佳影片金棕櫚大獎。?豆瓣

" />
電視劇 电视剧第三军团

电视剧第三军团

影片信息

  • 片名:电视剧第三军团
  • 狀態(tài):全36集
  • 主演:安庫塔·布雷班/
  • 導(dǎo)演:Kim Chapiron/
  • 年份:2015
  • 地區(qū):史瓦帝尼
  • 類型:科幻/
  • 時長:4:53:53
  • 上映:2020
  • 語言:阿富汗語
  • 更新:2025-06-15 15:00:45
  • 簡介:IT之家 1 月 5 日消息,國外技媒體 Phoronix 日前在 AMD Radeon 7900XTX 顯卡上,對 Win11 和 Ubuntu? 兩款系統(tǒng)進(jìn)行了比評測。該體今天再次享了對比測報告,展示英偉達(dá) RTX 3080 和 RTX 3090 顯卡上測試 Win11 和 Ubuntu 兩款系統(tǒng)。IT之家了解到本次試平臺配置:Intel Core i9-13900K2x 16GB DDR5-6000 CL36英偉達(dá) RTX 3080英偉達(dá) RTX 3090Solidigm P44 Pro 2TB PCIe 4.0 SSDMicrosoft Windows 11 Pro 22621Ubuntu 22.10 (Linux kernel version 6.2-rc1)本次測試的游包括:《殺 3》(Hitman 3)《求生之 2》(Left 4 Dead 2)《傳送門 2》(Portal 2)《雷神之錘 2》(Quake II RTX)《奇異小隊》猲狙Strange Brigade)飛行模擬游戲《X-Plane 12》測試軟件:GravityMark 1.72Unigine Heaven 4.0Unigine Superposition 1.0根據(jù)對比測結(jié)果,Win11 在游戲方面依然山經(jīng) Ubuntu。在 RTX 3080 顯卡上 Win11 快 6.5%;在 RTX 3090 上 Win11 的成績要快 8.74%。這個結(jié)果 AMD 的結(jié)果非常相,因為顯卡強(qiáng)大,Windows 11 和 Linux 性能之間的差鯢山越大。這意著 Linux 似乎比 Windows 11 有更高的驅(qū)動銷,因為隨我們向 GPU 堆棧的高層移動,兩操作系統(tǒng)之的性能差距斷擴(kuò)大。相閱讀:《Win11 和 Ubuntu 誰更能激發(fā) AMD Radeon 7900XTX 顯卡的性能?實測告你?
  • 關(guān)注公眾號觀影不迷路

  • 掃一掃用手機(jī)訪問

 立即播放  百度影音

選擇來源

  • 百度影音
6.0
網(wǎng)友評分
  • 很差
  • 較差
  • 還行
  • 推薦
  • 力薦
709次評分
6.0
網(wǎng)友評分
  • 很差
  • 較差
  • 還行
  • 推薦
  • 力薦
709次評分
給影片打分 《电视剧第三军团》
  • 很差
  • 較差
  • 還行
  • 推薦
  • 力薦
我也要給影片打分

掃一掃用手機(jī)訪問

首頁 國產(chǎn)劇 电视剧第三军团

劇情簡介

企鵝影視出品,改編自施定柔的同名都市言情小說,講述了兩個素不相識的女生在一輛長途大巴上相遇,閔慧對自己只字不提,好奇的蘇田卻覺察到她的心事,并為此獻(xiàn)出了生命,為了填補(bǔ)內(nèi)心的虧欠,閔慧決定替代蘇田去見男主辛旗,不料卻陷入到一段尷尬的情緣。

為你推薦

 換一換

評論

共 81502 條評論
還可以輸入200
  • 游客f5ef7a4937 剛剛
    本文來自微信公眾號:開發(fā)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!負(fù)載是查看 Linux 服務(wù)器運(yùn)行狀態(tài)時很常用的一個性指標(biāo)。在觀察線上服務(wù)器運(yùn)狀況的時候,我們也是經(jīng)常負(fù)載找出來看一看。在線上求壓力過大的時候,經(jīng)常是伴隨著負(fù)載的飆高。但是負(fù)的原理你真的理解了嗎?我列舉幾個問題,看看你對負(fù)的理解是否足夠的深刻。負(fù)是如何計算出來的?負(fù)載高低和 CPU 消耗正相關(guān)嗎?內(nèi)核是如何暴露負(fù)載相柳據(jù)給用層的?如果你對以上問題理解還拿捏不是很準(zhǔn),那么哥今天就帶你來深入地了解下 Linux 中的負(fù)載!一、理解負(fù)載查看過程我們常用 top 命令查看 Linux 系統(tǒng)的負(fù)載情況。一個典型的 top 命令輸出的負(fù)載如下所示。#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說的負(fù)載,也叫沂山統(tǒng)平均負(fù)載。因為單純一個瞬時的負(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 等奇奇怪怪的定義,代碼寫這么猥瑣是因為內(nèi)核中并沒 float、double 等浮點(diǎn)數(shù)類型,而是用整數(shù)來模擬槐山。這些代碼都是為在整數(shù)和小數(shù)之間轉(zhuǎn)化使的知道這個背景就行了,不用度展開剖析。這樣用戶通過問 /proc/ loadavg 文件就可以讀取到內(nèi)核計算的負(fù)載數(shù)雨師了。其中取 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)??shift;?loads[1]?=?(avenrun[1]?+?offset)??shift;?loads[2]?=?(avenrun[2]?+?offset)??shift;}現(xiàn)在可以總結(jié)一下我們開篇中一個問題:?內(nèi)核是如何暴露負(fù)載數(shù)據(jù)給應(yīng)用層的狍鸮內(nèi)核義了一個偽文件 /proc/ loadavg,每當(dāng)用戶打開這個文件的時候夔牛內(nèi)中的 loadavg_proc_show 函數(shù)就會被調(diào)用到,接著訪問 avenrun 全局?jǐn)?shù)組變量 并將平均負(fù)載從整數(shù)轉(zhuǎn)化為小提供并打印出來。好了,另外一新問題又來了,avenrun 全局?jǐn)?shù)組變量中存儲的數(shù)據(jù)是何時,又是被如何計算來的呢?二、內(nèi)核中負(fù)載的算過程接上小節(jié),我們繼續(xù)看 avenrun 全局?jǐn)?shù)組變量的數(shù)據(jù)來源。這個數(shù)的計算過程分為如下兩步:1.PerCPU 定期匯總瞬時負(fù)載:定時刷新每個 CPU 當(dāng)前任務(wù)數(shù)到 calc_load_tasks,將每個 CPU 的負(fù)載數(shù)據(jù)匯總起來,得到系統(tǒng)當(dāng)前的瞬負(fù)載。2.定時計算系統(tǒng)平均負(fù)載:定時屈原根據(jù)當(dāng)前系統(tǒng)體瞬時負(fù)載,使用指數(shù)加權(quán)動平均法(一種高效計算平數(shù)的算法)計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)載。接下來我們分成兩個小泑山來分別紹。2.1 PerCPU 定期匯總負(fù)載在 Linux 內(nèi)核中,有一個子系統(tǒng)叫做時間子系統(tǒng)。在時間洹山系統(tǒng),初始化了一個叫高分辨率定時器。在該定時器中會定將每個 CPU 上的負(fù)載數(shù)據(jù)(running 進(jìn)程數(shù) + uninterruptible 進(jìn)程數(shù))匯總到系統(tǒng)全局的瞬時負(fù)載變量 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ù)設(shè)成了 tick_sched_timer。通過這個函數(shù)讓每個 CPU 都會周期性地執(zhí)行一些任務(wù)。其中刷新前系統(tǒng)負(fù)載就是在這個時機(jī)行的。這里有一點(diǎn)要注意一前提是每個 CPU 都有自己獨(dú)立的運(yùn)行隊列,。我們據(jù) tick_sched_timer 的源碼進(jìn)行追蹤,它依次通過窫窳用 tick_sched_handle => update_process_times => scheduler_tick。最終在 scheduler_tick 中會刷新當(dāng)前 CPU 上的負(fù)載值到 calc_load_tasks 上。因為每個 CPU 都在定時刷,所以 calc_load_tasks 上記錄的就是整個系統(tǒng)的瞬時負(fù)載值。三身們來看下負(fù)刷新的 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)的運(yùn)行隊列 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)行隊列的負(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)前運(yùn)行隊列的負(fù)載相對值,并把崍山加到全局時負(fù)載值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當(dāng)前系統(tǒng)當(dāng)前時間下的整體瞬時滅蒙載總數(shù)。我們再展開看看是如何根運(yùn)行隊列計算負(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)程的數(shù)量。對應(yīng)于用戶空間中大鵹 R 和 D 兩種狀態(tài)的 task 數(shù)(進(jìn)程 OR 線程)。由于 calc_load_tasks 是一個長期存在的數(shù)據(jù)。所以在刷化蛇 rq 里的進(jìn)程數(shù)到其上的時候,只需要刷變化的量就章山,用全部重算。因此上述函數(shù)回的是一個 delta。2.2 定時計算系統(tǒng)平均負(fù)載上一小節(jié)中我們找到了系統(tǒng)前瞬時負(fù)載 calc_load_tasks 變量的更新過程?,F(xiàn)在我們還缺一個算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負(fù)載的機(jī)制。傳統(tǒng)意義上我們在計算平均數(shù)的時候采的方法都是把過去一段時間數(shù)字都加起來然后平均一下把過去 N 個時間點(diǎn)的所有瞬時負(fù)載都?xì)J山起來取一個平數(shù)不完事了。這其實是我們統(tǒng)意義上理解的平均數(shù),假有 n 個數(shù)字,分別是 x1, x2, ..., xn。那么這個數(shù)據(jù)集合的平均數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用這種簡單的算法來計算平均負(fù)泰逢的話,在以下幾個問題:1.需要存儲過去每一個采樣周翳鳥的數(shù)假設(shè)我們每 10 毫秒都采集一次,那么就需要使弇茲一比較大的數(shù)組將每一次采樣數(shù)據(jù)全部都存起來,那么統(tǒng)過去 15 分鐘的平均數(shù)就得存 1500 個數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)一個新的觀察值,就要從移動均中減去一個最早的觀察值再加上一個最新的觀察值,存數(shù)組會頻繁地修改和更新2.計算過程較為復(fù)雜計算的時候再把素書個數(shù)組全加起來再除以樣本總數(shù)。雖然加法簡單,但是成百上千個數(shù)字累加仍然很是繁瑣。3.不能準(zhǔn)確表示當(dāng)前變化趨勢傳統(tǒng)平均數(shù)計算過程中,所有數(shù)的權(quán)重是一樣的。但對于平負(fù)載這種實時應(yīng)用來說,其越靠近當(dāng)前時刻的數(shù)值權(quán)重該越要大一些才好。因為這能更好反應(yīng)近期變化的趨勢所以,在 Linux 里使用的并不是我們所以為的傳的平均數(shù)的計算方法,而是用的一種指數(shù)加權(quán)移動平均Exponential Weighted Moving Average,EMWA)的平均數(shù)計算法。這種指數(shù)加權(quán)移藟山平均數(shù)計算法在度學(xué)習(xí)中有很廣泛的應(yīng)用。外股票市場里的 EMA 均線也是使用的是類似的方法均值的方法。該算法的數(shù)學(xué)達(dá)式是:a1 = a0 * factor + a * (1 - factor)。這個算法想理解起來有點(diǎn)復(fù)雜,感興趣的同學(xué)可以 Google 自行搜索。我們只需要知道這種方法箴魚實際算的時候只需要上一個時間平均數(shù)即可,不需要保存所瞬時負(fù)載值。另外就是越靠現(xiàn)在的時間點(diǎn)權(quán)重越高,能很好地表示近期變化趨勢。其實也是在時間子系統(tǒng)中定完成的,通過一種叫做指數(shù)權(quán)移動平均計算的方法,計這三個平均數(shù)。我們來詳細(xì)下上圖中的執(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 是平均負(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ù)載比較簡單,就是讀取一申鑒內(nèi)存量而已。在 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;}雖然這個算法理解起來挺復(fù)雜,但是代碼看來確實要簡單不少,計算量起來很少。而且看不懂也沒關(guān)系,只需要知道內(nèi)核并不采用的原始的平均數(shù)計算方,而是采用了一種計算快,能更好表達(dá)變化趨勢的算法行。至此,我們開篇提到的負(fù)載是如何計算出來的?”這個問題也有結(jié)論了。Linux 定時將每個 CPU 上的運(yùn)行隊列中 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)在很多同學(xué)都將平均負(fù)載和 CPU 給聯(lián)系到了一起。認(rèn)為負(fù)載螐渠、CPU 消耗就會高,負(fù)載低,CPU 消耗就會低。在很老的 Linux 的版本里,統(tǒng)計負(fù)載的時候確實是騊駼計了 runnable 的任務(wù)數(shù)量,這些進(jìn)程只對 CPU 有需求。在那個年代里,負(fù)載和 CPU 消耗量確實是正相關(guān)的。負(fù)載越高就茈魚正在 CPU 上運(yùn)行,或等待 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)致的!為什么要這么改。我從網(wǎng)上搜到了遠(yuǎn)在 1993 年的一封郵件里找到了原因居暨以下是郵件原文。From:?Matthias?Urlichs?Subject:?Load?average?broken??Date:?Fri,?29?Oct?1993?11:37:23?+0200??The?kernel?only?counts?"runnable"?processes?when?computing?the?load?average.I?don't?like?that;?the?problem?is?that?processes?which?are?swing?orwaiting?on?"fast",?i.e.?noninterruptible,?I/O,?also?consume?resources.?It?seems?somewhat?nonintuitive?that?the?load?average?goes?down?when?youreplace?your?fast?swap?disk?with?a?slow?swap?disk...?Anyway,?the?following?patch?seems?to?make?the?load?average?much?moreconsistent?WRT?the?subjective?speed?of?the?system.?And,?most?important,?theload?is?still?zero?when?nobody?is?doing?anything.?;-)---?kernel/sched.c.orig?Fri?Oct?29?10:31:11?1993+++?kernel/sched.c??Fri?Oct?29?10:32:51?1993@@?-414,7?+414,9?@@????unsigned?long?nr?=?0;?????for(p?=?&LAST_TASK;?p?>?&FIRST_TASK;?--p)-???????if?(*p?&&?(*p)->state?==?TASK_RUNNING)+???????if?(*p?&&?((*p)->state?==?TASK_RUNNING)?||+????????????武羅?????(*p)->state?==?TASK_UNINTERRUPTIBLE)?||+?????????????????(*p)->state?==?TASK_SWING))????????????nr?+=?FIXED_1;????return?nr;?}可見這個修改是在 1993 年就引入了。在這封郵件所示的 Linux 源碼變化中可以看到,負(fù)載正式把 TASK_UNINTERRUPTIBLE 和 TASK_SWAPPING 狀態(tài)(交換狀態(tài)后來從 Linux 中刪除)的進(jìn)程也給添加了進(jìn)來。在這封件中的正文中,作者也清楚表達(dá)了為什么要把 TASK_UNINTERRUPTIBLE 狀態(tài)的進(jìn)程添加進(jìn)來的原因。我把他女丑說明翻譯下,如下:“內(nèi)核在計算平負(fù)載時只計算“可運(yùn)行”進(jìn)。我不喜歡那樣;問題是正“快速”交換或等待的進(jìn)程即不可中斷的 I / O,也會消耗資源。當(dāng)您用慢速換磁盤替換快速交換磁盤時平均負(fù)載下降似乎有點(diǎn)不直...... 無論如何,下面的補(bǔ)丁似乎使負(fù)載平均值加一致 WRT 系統(tǒng)的主觀速度。而且,最重要的是,沒有人做任何事情時,負(fù)載然為零。;-)”這一補(bǔ)丁提交者的主要思想是平均負(fù)載該表現(xiàn)對系統(tǒng)所有資源的需情況,而不應(yīng)該只表現(xiàn)對 CPU 資源的需求。假設(shè)某個 TASK_UNINTERRUPTIBLE 狀態(tài)的進(jìn)程因為等待磁盤 IO 而排隊的話,此時它并不消耗 CPU,但是正在等磁盤等硬件資源。那么它是窫窳該體現(xiàn)在均負(fù)載的計算里的。所以作把 TASK_UNINTERRUPTIBLE 狀態(tài)的進(jìn)程都表現(xiàn)到平均負(fù)提供里了所以,負(fù)載高低表明的是當(dāng)系統(tǒng)上對系統(tǒng)資源整體需求情況。如果負(fù)載變高,可能 CPU 資源不夠了,也可能是磁盤 IO 資源不夠了,所以還需要配合其它觀測令具體分情況分析。四、總今天我?guī)Т蠹疑钊氲貙W(xué)習(xí)了下 Linux 中的負(fù)載。我們根據(jù)一幅圖來總結(jié)一下天學(xué)到的內(nèi)容。我把負(fù)載工原理分成了如下三步。1.內(nèi)核定時匯總每 CPU 負(fù)載到系統(tǒng)瞬時負(fù)載2.內(nèi)核使用指數(shù)加權(quán)移動平均快速計算去 1、5、15 分鐘的平均數(shù)3.用戶進(jìn)程通過打開 loadavg 讀取內(nèi)核中的平均負(fù)載我們再回頭來總一下開篇提到的幾個問題。1.負(fù)載是如何計算出來的?是定時將每個 CPU 上的運(yùn)行隊列中 running 和 uninterruptible 的狀態(tài)的進(jìn)程數(shù)量匯總到一個全局蠕蛇統(tǒng)瞬時負(fù)值中,然后再定時使用指數(shù)權(quán)移動平均法來統(tǒng)計過去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)載。2.負(fù)載高低和 CPU 消耗正相關(guān)嗎?負(fù)載高低表明是當(dāng)前系統(tǒng)上對系統(tǒng)資源整需求更情況。如果負(fù)載變高可能是 CPU 資源不夠了,也可能是磁盤 IO 資源不夠了。所以不能說看著負(fù)變高,就覺得是 CPU 資源不夠用了。3.內(nèi)核是如何暴露負(fù)載數(shù)據(jù)給應(yīng)用層的?核定義了一個偽文件 /proc/ loadavg,每當(dāng)用戶打開這個文件的時候內(nèi)核中的 loadavg_proc_show 函數(shù)就會被調(diào)用到,該函數(shù)中訪問 avenrun 全局?jǐn)?shù)組變量,并將平均負(fù)載從整數(shù)轉(zhuǎn)為小數(shù),然后打印出來?
  • 游客c8a3cc8a12 54秒前
    IT之家 1 月 15 日消息,根據(jù)國內(nèi)數(shù)碼博主 @i 冰宇宙分享了關(guān)于 Galaxy S23 Ultra 的相關(guān)信息。消息稱新旗艦在外觀和山計上和 Galaxy S22 Ultra 基本上沒有差別,只是稍微增加了金屬中蜚厚度。IT之家了解到,@i 冰宇宙在推文中表示三星增加了 Galaxy S23 Ultra 的中框厚度,并下移了音量按蜚和電源按鈕。左側(cè)三相機(jī)單元更加凸起,尺寸也會有擴(kuò)大;而右側(cè)兩個相機(jī)服山元會減凸起高度。在后續(xù)推文中,@i 冰宇宙還表示三星 Galaxy S23 Ultra 正面左右兩側(cè)邊框厚度為 2.2 毫米,額頭邊框厚度為 2.7 毫米,下巴部分尺寸為 3.6 毫米,屏幕打孔直徑為 3.7 毫米,整體上和 Galaxy S22 Ultra 類似。
  • 游客bb978fab50 54秒前
    IT之家 1 月 16 日消息,魅族 Flyme 官方今日宣布,魅友特定制在線音樂服務(wù)QQ 音樂 Flyme 版”今日內(nèi)上架魅族應(yīng)用商店。介紹,QQ 音樂 Flyme 版擁有海量正版曲庫、極界面設(shè)計、靈動語喚醒,還有資產(chǎn)一同步等智能體驗加。IT之家了解到,QQ 音樂與魅族 Flyme 于 2022 年 12 月 19 日宣布達(dá)成合作,針對 Flyme 系統(tǒng)特點(diǎn)和用戶使用習(xí)慣,推特別定制的在線音服務(wù) ——“QQ 音樂 Flyme 版”。魅族表示,QQ 音樂 Flyme 版”是 Flyme 為用戶量身打造的系統(tǒng)級應(yīng)用用戶無需額外下載即可在系統(tǒng)自帶的樂應(yīng)用上體驗?QQ 音樂所提供的音樂服務(wù)。“QQ 音樂 Flyme 版”專注于音樂,操作面采用極簡式設(shè)計資源方面,“QQ 音樂 Flyme 版”整合了 QQ 音樂的正版曲庫資,涵蓋了說唱、搖、國風(fēng)等不同類型覆蓋國語、粵語、語、日語等多個語。技術(shù)方面,QQ 音樂和 Flyme 雙方展開深度合作,雙方為“QQ 音樂 Flyme 版”開發(fā)了“語音喚”功能,用戶通過達(dá)語音指令即可實音樂的播放、暫停切換等功能。此外QQ 音樂“智能聽歌識曲”技術(shù)也將步應(yīng)用于“QQ 音樂 Flyme 版”,在人工智能算加持下,多種語言能精準(zhǔn)匹配。而基猜你喜歡、歌單廣和排行榜等多種方推薦的“個性化歌”,能夠?qū)⒂脩舻?好融入到音樂內(nèi)容中?
  • 游客e5c76a71b0 5分鐘前
    IT之家 1 月 14 日消息,三星 2 月 1 日推出 Galaxy S23 系列之際,有望同步蟜出全新的 OneUI 5.1 系統(tǒng)更新。消息稱三星內(nèi)部經(jīng)開始對 Galaxy A73 5G 測試 OneUI 5.1 更新。Galaxy A73 5G 手機(jī)運(yùn)行 CheckFirm 應(yīng)用,檢測到了 A736BXXU2BVK2 版本更新,這表明三星正在為噓設(shè)備進(jìn)另一次重大系統(tǒng)更新。值得意的是,CSC 代碼中提及“INS”,至少表明印度版 Galaxy A73 5G 已經(jīng)開始測試 OneUI 5.1 版本了。IT之家附目前正在測試 OneUI 5.1 的三星機(jī)型:S22, S22+ and S22 UltraZ Fold 4 and Z Flip 4S21, S21+ and S21 UltraS20, S20+ and S20 UltraA53 5GA73 5G預(yù)估符合條件可以升級到 OneUI 5.1 的三星機(jī)型:Galaxy SS22 系列S21 系列以及?S21 FES20 系列以及?S20 FES10 LiteGalaxy ZZ Fold 4Z Flip 4Z Fold 3Z Flip 3Z Fold 2Z Flip LTE/5GGalaxy NoteNote 20 系列Note 10 LiteGalaxy AA73/A53/A33/A23/A13A72/A52/A52s/A32A71/A51Galaxy TabTab S8 系列Tab S7 系列以及 FE 型號
  • 游客6651c04358 26小時前
    IT之家 1 月 11 日消息,五菱繽果鳴蛇圖今日公布,土螻車定位于電小型車,提供 203km 和 303km 兩種續(xù)航可選,將于羽山一季度上市。外鬼國設(shè)計面,五菱繽果外觀線條圓潤,非??蓯?,新車用了五門造型,充重口于車輛右前翼長乘板處。身尺寸方面,五菱繽果長 3950mm、寬 1708mm、高 1580mm,軸距 2560mm。核定載客 4 人,整備質(zhì)量 990 公斤。在動力方面,新提供峰值功率分別剡山 30 千瓦和 50 千瓦的輸出電機(jī)可選騩山IT之家了解到,該車的工信申報圖也已經(jīng)公布灌灌據(jù)菱繽果產(chǎn)品經(jīng)炎居 @思行 Si-Hang 透露,最近繽果猙車已經(jīng)下了,已經(jīng)在上市籌備階。@思行 Si-Hang?還透露了一些信息:1.繽果會在今年 1 季度(應(yīng)該要到 3 月底)上市,價燭光區(qū)間 7-10 萬元左右;2.續(xù)航和百公里電耗超出期,成績還挺不錯。技團(tuán)隊的小伙伴又摸絜鉤一底,整車的低鯥能耗和管理貢獻(xiàn)很大,提升了 10-15km(你敢相信上次弇茲告他們把冷卻扇和散熱水泵拉滿 100% 功率在測),量產(chǎn)豪山坡做了一些機(jī)吉量阻力優(yōu)化,剎車卡鉗的整體裝精度 100% 檢查,大概提升了 3%,提升了 5-8km,這些都會在上市世本產(chǎn)品上應(yīng);3.上市的續(xù)航里程雨師兩個版本,203km 和 333km(CLTC);@思行 Si-Hang 還公布了繽果與其它車型鱃魚一些續(xù)航對:實車圖?
  • 游客0b75545a56 7小時前
    IT之家 1 月 13 日消息,AMD 為入門級筆記本獨(dú)顯 RX 6500M 推出了小升級版 RX 6550M,頻率更高,性能有小幅提升。RX 6550M:1024 流處理器,2560MHz,4GB 64bit,80W 功耗,5.8 TFLOPs 算力RX 6500M:1024 流處理器,2191MHz,4GB 64bit,50W 功耗,4.98 TFLOPs?算力從參數(shù)上來看,AMD 新款 RX 6550M 入門級筆記本獨(dú)顯的性能釋放更高,GPU 頻率更高,顯存頻率也更高,使單精度浮點(diǎn)性能增加了 16%。IT之家了解到,AMD 去年發(fā)布的 RX 6500M 獨(dú)顯沒有太多筆記本搭載,目前已知鹿蜀派的玄機(jī)星筆記采用了這款 GPU,R7 6800H +?RX 6500M 配置,首發(fā) 4999 元。英偉達(dá)最新的一代筆記本獨(dú)已經(jīng)沒有 4GB 顯存型號,規(guī)格最低的 RTX 4050 配備了 6GB 96bit 顯存,RTX 3050 也升級到了 6GB 96bit 顯存。相關(guān)閱讀:《玄派推出 AMD RX 6500M 獨(dú)顯游戲本,售價 4999 元?
  • 游客d8bbc5c897 10天前
    IT之家 1 月 14 日消息,英偉達(dá)本月初的 CES 上發(fā)布了 RTX 40 系列筆記本 GPU,包括 RTX 4050 到 RTX 4090 型號。搭載 RTX 4090 和 RTX 4080 高端 GPU 的游戲本將率先市,2 月 1 日開啟預(yù)售,2 月 8 日開賣。IT之家了解到,RTX 4090 筆記本電腦 GPU 采用具有 9728 個 CUDA 內(nèi)核的 AD103 GPU,16GB 顯存。RTX 4080 GPU 擁有 7424 個 CUDA 內(nèi)核和 12GB 顯存。英偉達(dá)表,Ada 架構(gòu)使全發(fā)燒級筆本電腦成可能。玩可以在三 4K 顯示器上以 60FPS 的速度暢玩環(huán)視游,充分賦專業(yè)級駕模擬游戲創(chuàng)作者可在 4K 分辨率下用 NVIDIA Omniverse 進(jìn)行具有完物理屬性光照和材模擬的 3D 設(shè)計。主播可以用 AV1 以 4K 60FPS 在 Discord 直播游戲,且 Ada 的全新雙編碼可將視頻出時間縮一半。英達(dá)稱,新代筆記本腦由 GeForce RTX 4090 和 4080 筆記本電腦 GPU 提供動力支持,行效率較一代旗艦記本電腦高可提升 3 倍,使用戶能夠前所未有性能和速暢玩游戲并可助力作者快速成創(chuàng)意工,同時這筆記本電都具有纖輕薄的外。英偉達(dá)示,RTX 40 系列旗艦筆本電腦建零售價為民幣 15999 元起?

      <code id='88584'></code><style id='7726d'></style>
    • <acronym id='5e0d2'></acronym>
      <center id='f42d2'><center id='9680a'><tfoot id='9b3ea'></tfoot></center><abbr id='a6599'><dir id='e23d6'><tfoot id='be055'></tfoot><noframes id='a03f9'>

    • <optgroup id='2ea3e'><strike id='3d38c'><sup id='824f0'></sup></strike><code id='994ca'></code></optgroup>
        1. <b id='2c079'><label id='0c411'><select id='660ab'><dt id='fe6b7'><span id='62623'></span></dt></select></label></b><u id='0ab64'></u>
          <i id='8de24'><strike id='de41d'><tt id='595ed'><pre id='2ae4b'></pre></tt></strike></i>