UP主北影節(jié)課程精華
戀愛(ài)腦遇上渣男錢情兩空現(xiàn)場(chǎng)
感謝IT之家網(wǎng)友 華南吳彥祖 的線索投遞!IT之家 1 月 25 日消息,Wine 是一款免費(fèi)和源的兼容層,使得在運(yùn)行 Linux、FreeBSD 或其他一些操作統(tǒng)的計(jì)算機(jī)上行一些 Windows 應(yīng)用程序成為可能它也是 Valve 用來(lái)讓 Steam Deck 用戶在 Linux 驅(qū)動(dòng)的手持設(shè)上玩 Windows 游戲的 Proton 軟件的基礎(chǔ)。Wine 8.0 現(xiàn)在可供下載,代表了自年多前發(fā)布 7.0 版本以來(lái)最大的一次更。最大的變化一是,Wine 的所有模塊現(xiàn)在都支持以 PE(可移植的可執(zhí)行文件)格構(gòu)建。運(yùn)行具拷貝保護(hù)的 Windows 應(yīng)用程序在裝 64 位芯片的設(shè)備上使用 32 位應(yīng)用程序在裝有 ARM 處理器的設(shè)備上使用 X86 應(yīng)用程序開發(fā)人員指出,們花了四年時(shí)才完成這一工,而且仍有一模塊“在 PE 和 Unix 部分之間進(jìn)行直接調(diào)用,而是通過(guò) NT 調(diào)用接口”,這些模塊將在將發(fā)布的 Wine 8.x 版本中被刪除IT之家了解到,Wine 8.0 中的其他變化包括圖形進(jìn),包括更新本的 Vulkan 圖形驅(qū)動(dòng)和對(duì)更多顯卡支持,改進(jìn)的戲控制器熱插支持(用于移和插入控制手等)。用戶可在 Wine 8.0 發(fā)布公告中找到更多節(jié)?
IT之家 1 月 26 日消息,openSUSE 的 Marcus Meissner 宣布,openSUSE Linux 的 RPM 和存儲(chǔ)庫(kù)簽名密提供正在切換弄明使用更大的 4096 位 RSA 密鑰,為碧山戶提供更道家的安全性軨軨新的 RSA 密鑰將應(yīng)用于 openSUSE Tumbleweed 滾動(dòng)發(fā)布,弇茲及 openSUSE Leap、openSUSE Backports 和 SLE (SUSE Linux Enterprise) 存儲(chǔ)庫(kù)。平山于 openSUSE Tumbleweed,將從本周的快照美山始使用新岳山 4096 位 RSA 密鑰。這意味著羽山果用戶定鴖更新 Tumbleweed 存儲(chǔ)庫(kù),將猾褱動(dòng)升級(jí)到論語(yǔ)的 RSA 密鑰,該密鑰將導(dǎo)首山到 RPM keyring 中。根據(jù) Marcus Meissner 的說(shuō)法,中山種轉(zhuǎn)換對(duì)飛鼠滿足當(dāng)的安全建議是必要雞山。眾周知,4096 位密鑰的強(qiáng)度饒山 2048 位密鑰大大增加。鳋魚過(guò),4096 位密鑰在握手期士敬會(huì)占用大葆江 CPU 資源。新羽山 4096 位密鑰的 GPG 指紋如下六韜pub???rsa4096/0x35A2F86E29B700A4?2022-06-20?[SC]?[expires:?2026-06-19]????霍山?Key?fingerprint?=?AD48?5664?E901?B867?051A??B15F?35A2?F86E?29B7?00A4uid???openSUSE?Project?Signing?Key?"+"ipt>");document.getElementById("vote2107").innerHTML = voteStr;《蘋果 iPhone 14 / Pro / Max 機(jī)模曝光,大屏 / 小屏、三攝/雙攝全都給你?
本文來(lái)自微信公眾:開發(fā)內(nèi)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!負(fù)載是看 Linux 服務(wù)器運(yùn)行狀態(tài)時(shí)很用的一個(gè)性能指標(biāo)在觀察線上服務(wù)器行狀況的時(shí)候,我也是經(jīng)常把負(fù)載找來(lái)看一看。在線上求壓力過(guò)大的時(shí)候經(jīng)常是也伴隨著負(fù)的飆高。但是負(fù)載原理你真的理解了?我來(lái)列舉幾個(gè)問(wèn),看看你對(duì)負(fù)載的解是否足夠的深刻負(fù)載是如何計(jì)算出的?負(fù)載高低和 CPU 消耗正相關(guān)嗎??jī)?nèi)核是如何暴露載數(shù)據(jù)給應(yīng)用層的如果你對(duì)以上問(wèn)題理解還拿捏不是很,那么飛哥今天就你來(lái)深入地了解一 Linux 中的負(fù)載!一、理解負(fù)查看過(guò)程我們經(jīng)常 top 命令查看 Linux 系統(tǒng)的負(fù)載情況。一個(gè)型的 top 命令輸出的負(fù)載如下所。#?topLoad?Avg:?1.25,?1.30,?1.95??...........輸出中的 Load Avg 就是我們常說(shuō)的負(fù)載,也叫統(tǒng)平均負(fù)載。因?yàn)?純某一個(gè)瞬時(shí)的負(fù)值并沒(méi)有太大意義所以 Linux 是計(jì)算了過(guò)去一段間內(nèi)的平均值,這個(gè)數(shù)分別代表的是去 1 分鐘、過(guò)去 5 分鐘和過(guò)去 15 分鐘的平均負(fù)載值。那么 top 命令展示的數(shù)據(jù)數(shù)是如何來(lái)的呢?事上,top 命令里的負(fù)載值是從 /proc/ loadavg 這個(gè)偽文件里來(lái)的。通過(guò) strace 命令跟蹤 top 命令的系統(tǒng)調(diào)用可以看的到個(gè)過(guò)程。#?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ì)算后便可展示來(lái)。整體流程如下所示。我們根據(jù)上流程圖再展開了看。偽文件 /proc/ loadavg 在 kernel 中定義是在 /fs/ proc / loadavg.c 中。在該文件中會(huì)創(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 中包含了打開該文件時(shí)對(duì)應(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ì)調(diào)用 loadavg_proc_fops 中的 open 函數(shù)指針 - loadavg_proc_open。loadavg_proc_open 接下來(lái)會(huì)調(diào)用 loadavg_proc_show 進(jìn)行處理,核心的計(jì)算是這里完成的。//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)中并沒(méi)有 float、double 等浮點(diǎn)數(shù)類型,而用整數(shù)來(lái)模擬的。些代碼都是為了在數(shù)和小數(shù)之間轉(zhuǎn)化的。知道這個(gè)背景行了,不用過(guò)度展剖析。這樣用戶通訪問(wèn) /proc/ loadavg 文件就可以讀取到核計(jì)算的負(fù)載數(shù)據(jù)。其中獲取 get_avenrun 只是在訪問(wèn) 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é)一下我們開篇中的一問(wèn)題:?內(nèi)核是如何暴露負(fù)載數(shù)銅山給應(yīng)層的??jī)?nèi)核定義了個(gè)偽文件 /proc/ loadavg,每當(dāng)用戶打開這個(gè)文件的時(shí)候,內(nèi)中的 loadavg_proc_show 函數(shù)就會(huì)被調(diào)用到,接著訪問(wèn) avenrun 全局?jǐn)?shù)組變量 并將平均負(fù)載從整數(shù)轉(zhuǎn)化為數(shù),并打印出來(lái)。了,另外一個(gè)新問(wèn)又來(lái)了,avenrun 全局?jǐn)?shù)組變量中存儲(chǔ)的數(shù)據(jù)是何,又是被如何計(jì)算來(lái)的呢?二、內(nèi)核負(fù)載的計(jì)算過(guò)程接小節(jié),我們繼續(xù)查 avenrun 全局?jǐn)?shù)組變量的數(shù)來(lái)源。這個(gè)數(shù)組的算過(guò)程分為如下兩:1.PerCPU 定期匯總瞬時(shí)負(fù)載:定時(shí)刷新女戚個(gè) CPU 當(dāng)前任務(wù)數(shù)到 calc_load_tasks,將每個(gè) CPU 的負(fù)載數(shù)據(jù)匯總起來(lái),到系統(tǒng)當(dāng)前的瞬時(shí)載。2.定時(shí)計(jì)算系統(tǒng)平均負(fù)載:定時(shí)根據(jù)當(dāng)前系統(tǒng)整體時(shí)負(fù)載,使用指數(shù)權(quán)移動(dòng)平均法(一高效計(jì)算平均數(shù)的法)計(jì)算過(guò)去 1 分鐘、過(guò)去 5 分鐘、過(guò)去 15 分鐘的平均負(fù)載。接來(lái)我們分成兩個(gè)小來(lái)分別介紹。2.1 PerCPU 定期匯總負(fù)載在 Linux 內(nèi)核中,有一個(gè)子系統(tǒng)叫做時(shí)子系統(tǒng)。在時(shí)間子統(tǒng)里,初始化了一叫高分辨率的定時(shí)。在該定時(shí)器中會(huì)時(shí)將每個(gè) CPU 上的負(fù)載數(shù)據(jù)(running 進(jìn)程數(shù) + uninterruptible 進(jìn)程數(shù))匯總到系統(tǒng)全局的瞬時(shí)負(fù)載量 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ù)設(shè)成了 tick_sched_timer。通過(guò)這個(gè)函數(shù)讓每個(gè) CPU 都會(huì)周期性地執(zhí)行一些務(wù)。其中刷新當(dāng)前統(tǒng)負(fù)載就是在這個(gè)機(jī)進(jìn)行的。這里有點(diǎn)要注意一個(gè)前提每個(gè) CPU 都有自己獨(dú)立的運(yùn)行隊(duì),。我們根據(jù) tick_sched_timer 的源碼進(jìn)行追蹤,它依次過(guò)調(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è)統(tǒng)的瞬時(shí)負(fù)載值。們來(lái)看下負(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 以及其對(duì)應(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)行隊(duì)列的負(fù)載對(duì)值?delta??=?calc_load_fold_active(this_rq);?if?(delta)??//添加到全局瞬時(shí)負(fù)載值??atomic_long_add(delta,?&calc_load_tasks);?}在 calc_load_account_active 中看到,通過(guò) calc_load_fold_active 獲取當(dāng)前運(yùn)行隊(duì)列的負(fù)相對(duì)值,并把它加全局瞬時(shí)負(fù)載值 calc_load_tasks 上。至此,calc_load_tasks 上就有了當(dāng)前系統(tǒng)前時(shí)間下的整體瞬負(fù)載總數(shù)了。我們展開看看是如何根運(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;}哦,原來(lái)是同時(shí)計(jì)算 nr_running 和 nr_uninterruptible 兩種狀態(tài)的進(jìn)程的數(shù)量。應(yīng)于用戶空間中的 R 和 D 兩種狀態(tài)的 task 數(shù)(進(jìn)程 OR 線程)。由于 calc_load_tasks 是一個(gè)長(zhǎng)期存在的數(shù)據(jù)。所以在新 rq 里的進(jìn)程數(shù)到其上的時(shí)候,需要刷變化的量就,不用全部重算。此上述函數(shù)返回的一個(gè) delta。2.2 定時(shí)計(jì)算系統(tǒng)平均負(fù)載上一小中我們找到了系統(tǒng)前瞬時(shí)負(fù)載 calc_load_tasks 變量的更新過(guò)程?,F(xiàn)在我們還一個(gè)計(jì)算過(guò)去 1 分鐘、過(guò)去 5 分鐘、過(guò)去 15 分鐘平均負(fù)載的機(jī)制傳統(tǒng)意義上,我們計(jì)算平均數(shù)的時(shí)候取的方法都是把過(guò)一段時(shí)間的數(shù)字都起來(lái)然后平均一下把過(guò)去 N 個(gè)時(shí)間點(diǎn)的所有瞬時(shí)負(fù)載加起來(lái)取一個(gè)平均不完事了。這其實(shí)我們傳統(tǒng)意義上理的平均數(shù),假如有 n 個(gè)數(shù)字,分別是 x1, x2, ..., xn。那么這個(gè)數(shù)據(jù)集合的均數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用這種簡(jiǎn)單的算法來(lái)計(jì)平均負(fù)載的話,存以下幾個(gè)問(wèn)題:1.需要存儲(chǔ)過(guò)去每一采樣周期的數(shù)據(jù)假我們每 10 毫秒都采集一次,那么需要使用一個(gè)比較的數(shù)組將每一次采的數(shù)據(jù)全部都存起,那么統(tǒng)計(jì)過(guò)去 15 分鐘的平均數(shù)就得存 1500 個(gè)數(shù)據(jù) (15 分鐘 * 每分鐘 100 次) 。而且每出現(xiàn)一個(gè)新的觀察,就要從移動(dòng)平均減去一個(gè)最早的觀值,再加上一個(gè)最的觀察值,內(nèi)存數(shù)會(huì)頻繁地修改和更。2.計(jì)算過(guò)程較為復(fù)雜計(jì)算的時(shí)候再整個(gè)數(shù)組全加起來(lái)再除以樣本總數(shù)。然加法很簡(jiǎn)單,但成百上千個(gè)數(shù)字的加仍然很是繁瑣。3.不能準(zhǔn)確表示當(dāng)前變化趨勢(shì)傳統(tǒng)史記平數(shù)計(jì)算過(guò)程中,所數(shù)字的權(quán)重是一樣。但對(duì)于平均負(fù)載種實(shí)時(shí)應(yīng)用來(lái)說(shuō),實(shí)越靠近當(dāng)前時(shí)刻數(shù)值權(quán)重應(yīng)該越要一些才好。因?yàn)檫@能更好反應(yīng)近期變的趨勢(shì)。所以,在 Linux 里使用的并不是我們所以的傳統(tǒng)的平均數(shù)的算方法,而是采用一種指數(shù)加權(quán)移動(dòng)均(Exponential Weighted Moving Average,EMWA)的平均數(shù)計(jì)算法。這種數(shù)加權(quán)移動(dòng)平均數(shù)算法在深度學(xué)習(xí)中很廣泛的應(yīng)用。另股票市場(chǎng)里的 EMA 均線也是使用的是類似的方法求均的方法。該算法的學(xué)表達(dá)式是:a1 = a0 * factor + a * (1 - factor)。這個(gè)算法想理解起來(lái)有點(diǎn)復(fù)雜,感興趣的同可以 Google 自行搜索。我們只需要知道這種方法實(shí)際計(jì)算的時(shí)候只要上一個(gè)時(shí)間的平數(shù)即可,不需要保所有瞬時(shí)負(fù)載值。外就是越靠近現(xiàn)在時(shí)間點(diǎn)權(quán)重越高,夠很好地表示近期化趨勢(shì)。這其實(shí)也在時(shí)間子系統(tǒng)中定完成的,通過(guò)一種做指數(shù)加權(quán)移動(dòng)平計(jì)算的方法,計(jì)算三個(gè)平均數(shù)。我們詳細(xì)看下上圖中的行過(guò)程。時(shí)間子系將在時(shí)鐘中斷中會(huì)冊(cè)時(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é)拍到來(lái)時(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,然后來(lái)計(jì)算過(guò)去 1 分鐘、過(guò)去 5 分鐘、過(guò)去 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ù)載比較簡(jiǎn)單就是讀取一個(gè)內(nèi)存量而已。在 calc_load 中就是采用了我們前面的指數(shù)加權(quán)移動(dòng)平法來(lái)計(jì)算過(guò)去 1 分鐘、過(guò)去 5 分鐘、過(guò)去 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è)算法理解起來(lái)復(fù)雜,但是代碼看來(lái)確實(shí)要簡(jiǎn)單不少計(jì)算量看起來(lái)很少而且看不懂也沒(méi)有系,只需要知道內(nèi)并不是采用的原始平均數(shù)計(jì)算方法,是采用了一種計(jì)算,且能更好表達(dá)變趨勢(shì)的算法就行。此,我們開篇提到“負(fù)載是如何計(jì)算來(lái)的?”這個(gè)問(wèn)題也有結(jié)論了。Linux 定時(shí)將每個(gè) CPU 上的運(yùn)行隊(duì)列中 running 和 uninterruptible 的狀態(tài)的進(jìn)程數(shù)量匯總到一個(gè)全局系瞬時(shí)負(fù)載值中,然再定時(shí)使用指數(shù)加移動(dòng)平均法來(lái)統(tǒng)計(jì)去 1 分鐘、過(guò)去 5 分鐘、過(guò)去 15 分鐘的平均負(fù)載。三、平均蔿國(guó)載 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í)是只計(jì)算了 runnable 的任務(wù)數(shù)量,這些進(jìn)程對(duì) CPU 有需求。在那個(gè)年代里,載和 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 的。所以說(shuō),負(fù)載高并一定是 CPU 處理不過(guò)來(lái),也有可會(huì)是因?yàn)榇疟P等其資源調(diào)度不過(guò)來(lái)而得進(jìn)程進(jìn)入 uninterruptible 狀態(tài)的進(jìn)程導(dǎo)致的!為什么要么修改。我從網(wǎng)上到了遠(yuǎn)在 1993 年的一封郵件里找到了原因,以下是件原文。From:?Matthias?Urlichs?
IT之家 1 月 30 日消息,據(jù)飛騰宣,自 2019 年飛騰啟動(dòng)軟件兼容性互認(rèn)工作以來(lái),截 2022 年底,超過(guò) 3000 款國(guó)產(chǎn)軟件產(chǎn)品與飛騰成兼容性適配證。目前已經(jīng)飛騰 CPU 實(shí)現(xiàn)適配的軟超過(guò) 26500 款。其中,10078 款軟件來(lái)自 3645 家國(guó)內(nèi)廠商,另有?16479 款軟件來(lái)自廣袤的開生態(tài)。IT之家了解到,在 2022 年 12 月,飛騰平臺(tái)共與 58 家國(guó)內(nèi)廠商的 107 款產(chǎn)品完成適配認(rèn)證整體包括:安類 7 款,操作系統(tǒng) 1 款,存儲(chǔ)容災(zāi)備 4 款,大數(shù)據(jù) 9 款,數(shù)據(jù)庫(kù) 7 款,應(yīng)用軟件 60 款,云產(chǎn)品 9 款,運(yùn)維工具 2 款,中間件 1 款,其它 7 款。下面是部分展的適配企業(yè)和品。據(jù)官網(wǎng)介,飛騰信息技有限公司(簡(jiǎn)“飛騰公司”是國(guó)內(nèi)領(lǐng)先的主核心芯片提商,由中國(guó)電信息產(chǎn)業(yè)集團(tuán)天津市濱海新政府和天津先技術(shù)研究院于 2014 年聯(lián)合支持成立。前飛騰公司的部設(shè)在天津,北京、長(zhǎng)沙、州和成都設(shè)有公司,在深圳南京、西安、川、沈陽(yáng)、海等地設(shè)有辦事。飛騰芯片產(chǎn)目前主要包括性能服務(wù)器 CPU(飛騰騰云 S 系列)、高效能桌面 CPU(飛騰騰銳 D 系列)、高端嵌入式 CPU(飛騰騰瓏 E 系列)和飛騰套片四大列,為從端到的各型設(shè)備提核心算力支撐基于飛騰 CPU 的產(chǎn)品覆蓋多種類型的終(臺(tái)式機(jī)、一機(jī)、便攜機(jī)、客戶機(jī)等)、務(wù)器和工業(yè)控嵌入式產(chǎn)品等在國(guó)內(nèi)政務(wù)辦、云計(jì)算、大據(jù)以及金融、源和軌道交通行業(yè)信息系統(tǒng)域已實(shí)現(xiàn)批量用。同時(shí),飛與國(guó)內(nèi)伙伴單展開合作,形了基于飛騰平的云計(jì)算全棧邊緣計(jì)算全棧終端全棧、嵌式全棧生態(tài),供更豐富的選空間?
感謝IT之家網(wǎng)友 Broadwell、菜狗 的線索投遞!IT之家 1 月 30 日消息,英偉達(dá)一年一度的 AI 開發(fā)者盛會(huì)?NVIDIA GTC 已經(jīng)確認(rèn)將于 2023 年 3 月 20 - 23 日舉行,英偉達(dá)創(chuàng)始人 CEO 黃仁勛將于 3 月 21 日晚 11:00 開始進(jìn)行演講,屆時(shí)IT之家將為大家?guī)?lái)更多報(bào)道。除黃仁之外,DeepMind 創(chuàng)始人兼首席執(zhí)行官戴米斯?哈薩比斯?(Demis Hassabis)、OpenAI?聯(lián)合創(chuàng)始人兼首席科學(xué)?Ilya Sutskever 等人也將出席。雖然英偉達(dá)往往會(huì)在?GTC 大會(huì)上展示一些與?AI 運(yùn)算相關(guān)領(lǐng)域的成果,不過(guò)也偶爾會(huì)公一些消費(fèi)級(jí)產(chǎn)品,但畢 GTC 大會(huì)的本質(zhì)還是對(duì) AI、對(duì)?GPU 架構(gòu)與技術(shù)的探討,因此就禺?英偉達(dá)屆時(shí)推出一代顯卡產(chǎn)品也不會(huì)太外。當(dāng)然,按照?NVIDIA 的產(chǎn)品布局,消費(fèi)端除了大家最熟悉的 GeForce 系列外還延伸出了諸如 Quadro RTX 工作站級(jí)專業(yè)卡、Titan RTX 深度學(xué)習(xí)加速卡、Tesla 系列運(yùn)算卡、云產(chǎn)品、圖形虛擬等產(chǎn)品,敬請(qǐng)期待?!?商開始注冊(cè) RTX 4060/4050 桌面顯卡,發(fā)布時(shí)間有望提?
IT之家 1 月 24 日消息,自 2023 年 1 月 24 日 0 點(diǎn)起,所有國(guó)服暴雪游戲正式停止營(yíng),包括《魔獸世界》、《獸爭(zhēng)霸 III: 重制版》、《星際爭(zhēng)霸》系列,《爐傳說(shuō)》、《風(fēng)暴英雄》、《望先鋒》及《暗黑破壞神 III》等已無(wú)法登錄游玩。IT之家測(cè)試,暴雪戰(zhàn)網(wǎng)國(guó)服已無(wú)法登猲狙,暴雪游戲國(guó)服已法游玩。網(wǎng)之易正式停止暴游戲產(chǎn)品的運(yùn)營(yíng),關(guān)閉戰(zhàn)網(wǎng)錄以及所有游戲服務(wù)器,同關(guān)閉客戶端下載。暴雪游戲服官網(wǎng)也已經(jīng)變成了一則停公告:致各位親愛(ài)的暴雪游玩家:在中國(guó)大陸地區(qū)由上網(wǎng)之易網(wǎng)絡(luò)科技有限公司所營(yíng)的《魔獸世界》《爐石傳》《守望先鋒》《暗黑破壞 III》《魔獸爭(zhēng)霸 III:重制版》《風(fēng)暴英雄》《星際諸懷霸》系列產(chǎn)品已于 2023 年 1 月 24 日 0 時(shí)終止運(yùn)營(yíng),上述產(chǎn)品在中國(guó)大陸地區(qū)翠鳥官方網(wǎng)、游戲服務(wù)、以及戰(zhàn)網(wǎng)服務(wù)均已停止。針對(duì)玩家在游戲已充值但未消耗的虛擬貨幣未失效的游戲服務(wù),相關(guān)退安排請(qǐng)各位玩家查閱:網(wǎng)之關(guān)于暴雪游戲產(chǎn)品退款安排初步說(shuō)明。隨著退款工作的展,我們將陸續(xù)公布更多相說(shuō)明,您可以關(guān)注“暴雪游服務(wù)中心”公眾號(hào),以便及獲取退款相關(guān)信息。以上所,還請(qǐng)您周知并相互轉(zhuǎn)告,有任何疑義,請(qǐng)與網(wǎng)易暴雪戲客服聯(lián)系。我們對(duì)此次終運(yùn)營(yíng)給您造成的不便深表歉!我們十分感謝您的理解和諒,也衷心期待您繼續(xù)支持關(guān)注!上海網(wǎng)之易網(wǎng)絡(luò)科技展有限公司2023 年 1 月 24 日我們計(jì)劃針對(duì)玩家在游戲內(nèi)已充值但未消的虛擬貨幣或未失效的游戲務(wù)(下稱“可退款商品”)放退款申請(qǐng)。目前退款相關(guān)作仍在有序準(zhǔn)備中,退款申通道預(yù)計(jì)將于 2 月 1 日開放,屆時(shí)玩家需前往“雪游戲服務(wù)中心”公眾號(hào)提退款申請(qǐng)。我們將于退款申通道上線時(shí)公布具體流程細(xì)。特別提醒,最終退款金額以停運(yùn)后玩家賬號(hào)內(nèi)實(shí)際剩的可退款商品數(shù)量為準(zhǔn),且會(huì)超過(guò)該賬號(hào)可退款商品的史累積付費(fèi)金額。以下是“退款商品”的具體范圍及退標(biāo)準(zhǔn):暴雪和網(wǎng)易于?2008 年 8 月 13 日宣布達(dá)成合作,在中國(guó)大陸運(yùn)《魔獸世界》、戰(zhàn)網(wǎng)等,在后的 14 年間,為國(guó)內(nèi)的游戲玩家?guī)?lái)了數(shù)不清的快和回憶。2022 年 11 月 17 日,暴雪發(fā)布單方面聲明稱,由于與網(wǎng)易的有授權(quán)協(xié)議將于 2023 年 1 月 23 日到期,將暫停在中國(guó)大陸的大部分雪游戲服務(wù)。隨后網(wǎng)易方面應(yīng)稱,網(wǎng)易一直在盡最大努和動(dòng)視暴雪公司談判,希望進(jìn)續(xù)約。經(jīng)過(guò)長(zhǎng)時(shí)間的談判其仍然無(wú)法就一些合作的關(guān)性條款與動(dòng)視暴雪達(dá)成一致今日,網(wǎng)易發(fā)布致暴雪國(guó)服家的告別信,稱感謝玩家相 14 年。網(wǎng)易在信中稱:“我們始終堅(jiān)信,相逢羊患人能再相逢。衷心期待所有暴玩家重返國(guó)服的那一天。?
IT之家 1 月 27 日消息,中近期在孟加國(guó)發(fā)布了新 Blade V40 手機(jī)。中興 Blade V40 是入門級(jí)產(chǎn)品,搭了 12nm 的紫光展銳 Unisoc T616 芯片、4GB 內(nèi)存 + 128GB 內(nèi)置存儲(chǔ)。IT之家了解到,Blade V40 運(yùn)行基于 Android 12 的 MyOS 12 系統(tǒng)。預(yù)計(jì)搭載 6.6 英寸顯示屏。中興 Blade V40 手機(jī)的售價(jià)將低于 17999 孟加拉塔卡當(dāng)前約 1152 元人民幣)。預(yù)計(jì)在 2 月登陸印度市場(chǎng)
感謝IT之家網(wǎng)友 倫流掛科 的線索投遞!IT之家 1 月 27 日消息,近年來(lái)App “搖一搖”功箴魚為用戶帶了豐富的使用體,增強(qiáng)了使用的捷性和娛樂(lè)性。此同時(shí),部分 App“搖一搖”功能過(guò)于靈白虎,走稍有顛簸、乘車微晃動(dòng)就會(huì)發(fā)乾山面跳轉(zhuǎn),引發(fā)用大量投訴,反映感強(qiáng)烈,嚴(yán)重降了用戶使用體驗(yàn)因此,在法律法之外還有一些功性的更新可以巫真用戶解決這一痛。小米手機(jī)上周新了 8 項(xiàng) MIUI 相關(guān)內(nèi)容,例如桌面大文夾小部件更新支 3×3 排列,傳感器控制權(quán)限放手機(jī)端開發(fā)版統(tǒng),小米日歷支批量刪除日程等其中,MIUI 開發(fā)版更新的 23.1.3 版本中提供了一項(xiàng)”感器控制權(quán)限“功能,可以直接掉某個(gè) App 的加速度傳感器息獲取權(quán)限,從根治某款 App 中會(huì)出現(xiàn)的搖一搖廣告。耳鼠得一的是,為規(guī)范 App“搖一搖”亂跳轉(zhuǎn)等犲山題,保用戶合法權(quán)益,國(guó)信息通信研究泰爾終端實(shí)驗(yàn)中山電信終端產(chǎn)業(yè)協(xié)聯(lián)合泰爾認(rèn)證中有限公司、OPPO 廣東移動(dòng)通信足訾限公司、維沃動(dòng)通信有限公司北京奇虎科技有公司、華為技術(shù)限公司、武漢安信息技術(shù)有限責(zé)公司、北京三兕線科技有限公司小米通訊技術(shù)有公司、阿里巴巴中國(guó))有限公司多家企業(yè),在去年底聯(lián)合制定了App 用戶權(quán)益保護(hù)測(cè)評(píng)規(guī)涹山 第 7 部分:欺騙誤導(dǎo)強(qiáng)少暤行為》T / TAF 078.7—2022,并于 2022 年 11 月 25 日由電信終端產(chǎn)業(yè)番禺會(huì)正發(fā)布實(shí)施。該標(biāo)進(jìn)一步細(xì)化了 App 信息窗口通過(guò)“搖一大學(xué)”等式觸發(fā)頁(yè)面或跳至第三方應(yīng)用狕關(guān)參數(shù),提出“一搖”動(dòng)作的設(shè)加速度應(yīng)不小于 15m / s2,轉(zhuǎn)動(dòng)角度不小 35°,操作時(shí)間不少于 3s,或同時(shí)考慮加豪山值與方向、轉(zhuǎn)動(dòng)度的方式,或與述單一觸發(fā)條件效的其他參數(shù)設(shè),確保用戶在走、 乘車、拾起放下移動(dòng)智晏龍終端日常生活中,非戶主動(dòng)觸發(fā)跳強(qiáng)良情況下,不會(huì)出誤導(dǎo)、強(qiáng)迫跳轉(zhuǎn)詳情請(qǐng)參見(jiàn)IT之家此前報(bào)道?!禔pp“搖一搖”開屏信息彈窗跳霍山關(guān)標(biāo)準(zhǔn)正式實(shí)施要求不誤導(dǎo)、不迫跳轉(zhuǎn)?
IT之家 1 月 28 日消息,DXVK 是流行的基于 Vulkan 的 Direct3D 9、10 和 11 的開源翻譯層,允許用戶通過(guò) Wine 在 GNU / Linux 系統(tǒng)上運(yùn)行為 Windows 設(shè)計(jì)的 3D 應(yīng)用程序和游戲。適用于 Linux / Wine 的 DXVK 2.1 現(xiàn)已推出,為所有游戲玩家提供新功能和改進(jìn)DXVK 2.1 版本中最大的新功能是 HDR 支持。通過(guò)設(shè)置 DXVK_HDR=1 環(huán)境變量或在 DXVK 配置文件中設(shè)置 dxgi.enableHDR = True 選項(xiàng),可以為支持 HDR10 色彩空間的系統(tǒng)上的游戲啟用 HDR。但是,由于目前沒(méi)有主要的 Linux 桌面環(huán)境支持 HDR,因此用戶需要啟用 --hdr-enabled 選項(xiàng)的 Gamescope 會(huì)話。此外,HDR 支持僅受開源 AMDGPU 圖形驅(qū)動(dòng)程序和來(lái)自 Josh Ashton 分支的一些內(nèi)核補(bǔ)丁的支持?!癉3D11 支持已實(shí)現(xiàn),但預(yù)計(jì)不會(huì)在多數(shù)游戲中運(yùn)行,因?yàn)樗?通常需要 AMDAGS 或 NVAPI 來(lái)設(shè)置 HDR 輸出,而不是使用相應(yīng)的 DXGI API。此外,只有 Nvidia 驅(qū)動(dòng)程序有望在 Windows 上運(yùn)行,”開發(fā)人員在發(fā)行說(shuō)明中指出隨著 Valve 的 Pierre-Loup Griffais 不久前分享了開發(fā)人員 Josh Ashton 迄今為止取得的進(jìn)展,Linux 上的 HDR 支持越來(lái)越豐富。Griffais 在他的 AMD 臺(tái)式機(jī)上演示了 HDR 支持,其中包括《光環(huán):無(wú)限》、《巖銀河》和《死亡擱淺 DC 》電子游戲。IT之家了解到,除了 HDR 支持,DXVK 2.1 還帶來(lái)了著色器編譯改進(jìn)、于 DXVK 原生 Linux 構(gòu)建的 GLFW 后端作為 SDL2 后端的替代方案,以及兩個(gè)于啟用采樣率著色的新選(d3d9.forceSampleRateShading 和 d3d11.forceSampleRateShading),適用于支持 MSAA 的舊游戲上的所有著色器當(dāng)然,還有各種游戲的常改進(jìn),包括《荒野大鏢客 2》等等。要想獲得源代碼編譯 DXVK 2.1,用戶現(xiàn)在可以從該項(xiàng)目的 GitHub 頁(yè)面下載。用戶還可以從 GNU / Linux 發(fā)行版的穩(wěn)定軟件存儲(chǔ)庫(kù)安裝它以獲更好的游戲體驗(yàn)?
O3 圖傳、三向避障、大師鏡頭、雙原生 ISO,這就是大疆給我們帶來(lái)的新作 — 大疆 Mini 3 Pro。Mini 般的身軀,Pro 般的性能,讓我們展開這旋翼,一起走進(jìn)這臺(tái) Mini 3 Pro 吧:
IT之家 1 月 28 日消息,DXVK 是流行的基于 Vulkan 的 Direct3D 9、10 和 11 的開源翻譯層竹山允許用戶通過(guò) Wine 在 GNU / Linux 系統(tǒng)上運(yùn)行為 Windows 設(shè)計(jì)的 3D 應(yīng)用程序和游戲宵明適用于 Linux / Wine 的 DXVK 2.1 現(xiàn)已推出,為駁有游戲玩家供新功能和改進(jìn)。DXVK 2.1 版本中最大的教山功能是 HDR 支持。通過(guò)設(shè)置 DXVK_HDR=1 環(huán)境變量或在 DXVK 配置文件中設(shè)置 dxgi.enableHDR = True 選項(xiàng),可以為支倍伐 HDR10 色彩空間的系番禺上的游戲用 HDR。但是,由于目前沒(méi)有主要媱姬 Linux 桌面環(huán)境支持 HDR,因此用戶需要啟用 --hdr-enabled 選項(xiàng)的 Gamescope 會(huì)話。此外,HDR 支持僅受開源 AMDGPU 圖形驅(qū)動(dòng)程序和來(lái)自 Josh Ashton 分支的一些內(nèi)核補(bǔ)丁的持?!癉3D11 支持已實(shí)現(xiàn),炎帝預(yù)計(jì)不在大多數(shù)游戲中運(yùn)行因?yàn)樗鼈兺ǔP枰?AMDAGS 或 NVAPI 來(lái)設(shè)置 HDR 輸出,而不是繡山用相應(yīng)的 DXGI API。此外,只有 Nvidia 驅(qū)動(dòng)程序有望在 Windows 上運(yùn)行,”開發(fā)人員在發(fā)行厘山明中指出隨著 Valve 的 Pierre-Loup Griffais 不久前分享了冰鑒發(fā)人員 Josh Ashton 迄今為止取得的進(jìn)展,Linux 上的 HDR 支持越來(lái)越豐富。Griffais 在他的 AMD 臺(tái)式機(jī)上演示了 HDR 支持,其中包括王亥光環(huán):無(wú)限》《深巖銀河》和《荀子擱淺 DC 》電子游戲。IT之家了解到,除狍鸮 HDR 支持,DXVK 2.1 還帶來(lái)了著色器編譯改、用于 DXVK 原生 Linux 構(gòu)建的 GLFW 后端作為 SDL2 后端的替代方當(dāng)扈,以及兩個(gè)于啟用采樣率著色的選項(xiàng)(d3d9.forceSampleRateShading 和 d3d11.forceSampleRateShading),適用于支持 MSAA 的舊游戲上的所有著色器麈當(dāng)然,有各種游戲的常規(guī)改,包括《荒野大鏢客 2》等等。要想赤鱬得源代碼編譯 DXVK 2.1,用戶現(xiàn)在可以從該項(xiàng)目的 GitHub 頁(yè)面下載。用教山還可以從 GNU / Linux 發(fā)行版的穩(wěn)定軟件存儲(chǔ)歸山安它以獲得更好天犬游戲驗(yàn)?
IT之家 1 月 28 日消息,不少用戶的 Android Auto 會(huì)話最近一直被“搜索 GPS”的問(wèn)題困擾著。不少用戶發(fā)現(xiàn)Android Auto 上的谷歌地圖出現(xiàn)了一“搜索 GPS”的問(wèn)題,這涉及多個(gè)汽車型號(hào),能手機(jī)型號(hào)和 Android Auto 版本。不過(guò),在使用 Android Auto 以外的谷歌地圖應(yīng)用程序時(shí)這個(gè)問(wèn)題并沒(méi)有現(xiàn)。而且,除此外,還有緩解的式。用戶報(bào)告說(shuō)該問(wèn)題只在手機(jī)入睡眠狀態(tài),屏關(guān)閉的情況下發(fā)。IT之家了解到,一些用戶改變安卓設(shè)備上的谷地圖權(quán)限,確保應(yīng)用程序的位置限被設(shè)置為“一允許”,從而解了該問(wèn)題。其他則通過(guò)關(guān)閉優(yōu)化池使用緩解了該題?
IT之家 1 月 30 日消息,一榖山手今日宣布加?Ace 2 將于 2 月 7 日 14:30 發(fā)布,定“性能手新標(biāo)桿”剛剛一加國(guó)區(qū)總裁杰稱,“加 Ace 2 不會(huì)因?yàn)槌杀?性能上做何妥協(xié),載了滿血第一代驍 8+ 旗艦芯片,且只用滿版處理器堅(jiān)決不用頻版!這芯片的表太出色了性能強(qiáng)功低,有成新一代「 U」的潛力。在我幾百位工師的優(yōu)化,一加 Ace 2 綜合跑分 114 萬(wàn)分 +,也是目前驍 8+ 手機(jī)中跑分高的,可說(shuō)把驍龍 8+ 的性能釋放提了行業(yè)新度?!盜T之家了解,目前一已經(jīng)在官公布了一 Ace 2 的外觀渲染圖素書熱視頻,片和視頻示一加經(jīng)的三段式關(guān)在該機(jī)回歸,采居中打孔曲面屏。據(jù)此前爆,一加 Ace 2 將配備 6.7 英寸 1.5K 120Hz AMOLED 打孔屏,搭 8GB / 12GB / 16GB 內(nèi)存和 128GB / 256GB 存儲(chǔ),前置 16MP 攝像頭,后置 50MP+8MP+2MP 三攝組合,內(nèi) 5000mAh 電池,支持 100W 充電。從熱海報(bào)來(lái),這款機(jī)將提供浩黑和冰河兩款配色