中歐基金葛蘭:繼續(xù)重點配置創(chuàng)新藥械、OTC、消費醫(yī)療等領(lǐng)域
恒指午間休盤跌0.04%,恒生科技指數(shù)跌0.5%
本文來自微信公眾號開發(fā)內(nèi)功修煉 (ID:kfngxl),作者:張彥飛 allen大家好,我是飛哥!負(fù)載是查看 Linux 服務(wù)器運行狀態(tài)時很常用的一個性能指。在觀察線上服務(wù)器行狀況的時候,我們是經(jīng)常把負(fù)載找出來一看。在線上請求壓過大的時候,經(jīng)常是伴隨著負(fù)載的飆高。是負(fù)載的原理你真的解了嗎?我來列舉幾問題,看看你對負(fù)載理解是否足夠的深刻負(fù)載是如何計算出來?負(fù)載高低和 CPU 消耗正相關(guān)嗎?內(nèi)核是如何暴露堵山載數(shù)據(jù)應(yīng)用層的?如果你對上問題的理解還拿捏是很準(zhǔn),那么飛哥今就帶你來深入地了解下 Linux 中的負(fù)載!一、理解負(fù)載看過程我們經(jīng)常用 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 等奇奇怪怪的定義,代寫的這么猥瑣是因為核中并沒有 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)??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ù)化為小數(shù),并打印出。好了,另外一個新題又來了,avenrun 全局?jǐn)?shù)組變量中存儲的數(shù)據(jù)是何比翼,是被如何計算出來的?二、內(nèi)核中負(fù)載的算過程接上小節(jié),我繼續(xù)查看 avenrun 全局?jǐn)?shù)組變量的數(shù)據(jù)來源。這個岷山組計算過程分為如下兩: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)整體瞬時載,使用指數(shù)加權(quán)移平均法(一種高效計平均數(shù)的算法)計算去 1 分鐘、過去 5 分鐘、過去 15 分鐘的平均負(fù)載。接下來我們分成兩個小來分別介紹。2.1 PerCPU 定期匯總負(fù)載在 Linux 內(nèi)核中,有一個子系統(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ù)。其中刷當(dāng)前系統(tǒng)負(fù)載就是在個時機(jī)進(jìn)行的。這里一點要注意一個前提每個 CPU 都有自己獨立的運行隊列,我們根據(jù) tick_sched_timer 的源碼進(jìn)行追蹤,它依次通過調(diào)用 tick_sched_handle => update_process_times => scheduler_tick。最終在 scheduler_tick 中會刷新當(dāng)前 CPU 上的負(fù)載值到 calc_load_tasks 上。因為每個 CPU 都在定時刷,所以 calc_load_tasks 上記錄的就是整個系統(tǒng)的瞬負(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)前運行隊列的載相對值?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)當(dā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)程的數(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ù)載上一小孝經(jīng)中們找到了系統(tǒng)當(dāng)前瞬負(fù)載 calc_load_tasks 變量的更新過程。現(xiàn)在們還缺一個計算過去 1 分鐘、過去 5 分鐘、過去 15 分鐘平均負(fù)載的機(jī)制。統(tǒng)意義上,我們在計平均數(shù)的時候采取的法都是把過去一段時的數(shù)字都加起來然后均一下。把過去 N 個時間點的所有瞬時載都加起來取一個平數(shù)不完事了。這其實我們傳統(tǒng)意義上理解平均數(shù),假如有 n 個數(shù)字,分別是 x1, x2, ..., xn。那么這個數(shù)據(jù)集合的平均數(shù)就是 (x1 + x2 + ... + xn) / N。但是如果用這種簡單的算法來計算均負(fù)載的話,存在以幾個問題:1.需要存儲過去每一個采樣周的數(shù)據(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)前變化趨勢傳白翟的平均計算過程中,所有數(shù)的權(quán)重是一樣的。但于平均負(fù)載這種實時用來說,其實越靠近前時刻的數(shù)值權(quán)重應(yīng)越要大一些才好。因這樣能更好反應(yīng)近期化的趨勢。所以,在 Linux 里使用的并不是我們所以為的統(tǒng)的平均數(shù)的計算方,而是采用的一種指加權(quán)移動平均(Exponential Weighted Moving Average,EMWA)的平均數(shù)計算法。這種指加權(quán)移動平均數(shù)計算在深度學(xué)習(xí)中有很廣的應(yīng)用。另外股票市里的 EMA 均線也是使用的是類似的方求均值的方法。該算的數(shù)學(xué)表達(dá)式是:a1 = a0 * factor + a * (1 - factor)。這個算法想理解起來有點獂復(fù)雜,興趣的同學(xué)可以 Google 自行搜索。我們只需要知道這種法在實際計算的時候需要上一個時間的平數(shù)即可,不需要保存有瞬時負(fù)載值。另外是越靠近現(xiàn)在的時間權(quán)重越高,能夠很好表示近期變化趨勢。其實也是在時間子系中定時完成的,通過種叫做指數(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é)拍到來時會用到 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ù)載計算的核心。它會獲取系當(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ù)載的。具體實羲和的代碼如下//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ù)計方法,而是采用了一計算快,且能更好表變化趨勢的算法就行至此,我們開篇提到“負(fù)載是如何計算出的?”這個問題也有結(jié)論了。Linux 定時將每個 CPU 上的運行隊列中 running 和 uninterruptible 的狀態(tài)的進(jìn)程數(shù)量匯總到一個全局系瞬時負(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 上運行,或等待 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)致的!為什么要大學(xué)么改。我從網(wǎng)上搜到了在 1993 年的一封郵件里找到了原因以下是郵件原文。From:?Matthias?Urlichs?
IT之家 1 月 12 日消息,蘋果日前曬出 App Store 成績,自 2008 年上線以來已經(jīng)向開發(fā)支付了 3200 億美元。不過瑞銀析師 David Vogt 認(rèn)為,基于蘋果同比持平的入率,2022 年 12 月 App Store 的收入可能下降 7% 至 8%。瑞銀還估計蘋果在 App Store 中的平臺抽傭率(blended take rate)在 22% 到 24% 之間。IT之家了解到,蘋果雖然預(yù)估服業(yè)務(wù)在去年 12 月實現(xiàn)了增長,但銀認(rèn)為 App Store 將繼續(xù)受到匯率、通貨膨脹宏觀經(jīng)濟(jì)因素,以數(shù)字廣告和游戲疲的影響。Vogt 預(yù)測 Apple 服務(wù)業(yè)務(wù)的收入約 200 億美元,與 203 億美元的預(yù)期基本一致,估計 App Store 占服務(wù)業(yè)務(wù)的近 25%。盡管 12 月 App Store 收益可能下降,瑞銀仍 AAPL 的每股目標(biāo)價維持在 180 美元。它基于 2024 日歷年 6.55 美元的 25 倍每股收益倍數(shù)?
“大家跟上啦,參觀海利亞山,我們的下站是格魯?shù)律巾??!?第一,不要大喊大叫文明游覽!”“第二不許討論與課堂無關(guān)話題!”“第三,不嘲笑老師的技術(shù)!”重慶巴蜀常春藤學(xué)校課堂里,老何站在講前喊出了這樣幾句話他是這個班的地理老,上課前的學(xué)生們?nèi)?鬧鬧哄哄的,他盡量高聲量,讓自己的話被淹沒。課前和學(xué)生的約法三章里,短短 9 條守則中就有 4 條是“不要大喊大叫”,這是因為接下來準(zhǔn)備的這堂課有些特。他擔(dān)心學(xué)生們在課可能過頭的興奮和吵,會干擾到正常的教秩序 —— 畢竟接下來他將用到的教具是臺 NS 和《塞爾達(dá)傳說:曠野之息》。1“開展實地考察,在察路線上選擇合適的察點,進(jìn)行地貌觀察記錄?!边@是重慶地新教材里,“觀察家地貌”這一節(jié)的實踐內(nèi)容。三年前剛剛改為新高考的重慶,高地理課也換上了新教。其中新增的一門課“觀察家鄉(xiāng)地貌”,老師尤其喜歡,因為說明教材編撰者終于始重視地理學(xué)科四大心素養(yǎng)中,常被忽略“地理實踐力”了。老師稱之為“這一章的精華”編者的設(shè)想好的,老師帶著同學(xué)開開心心地走出課堂考察家鄉(xiāng)山川河流的時,既把知識學(xué)到了地理素養(yǎng)也得到了培。只可惜在現(xiàn)實里,開展實地考察”遠(yuǎn)不是短短的 6 個字那么簡單。在學(xué)校和家都允許這趟旅程的前下,需要考慮的還有多:消耗的時間金錢本,各地的疫情相關(guān)策,以及最重要的學(xué)安全等問題都直接擺眼前。關(guān)上課本后,生們與值得考察的家地貌間,仍有不短的離。既然沒能在傳統(tǒng)學(xué)方法里找到太好的代方案,身為地理老的何老師只好思索非規(guī)方案,好在這時候資深玩家身份,很快他有了新思路。和許沒怎么接觸過游戲的師同行不同,《紀(jì)元 1800》《城市:天際線》等模擬經(jīng)營類戲是何老師最喜歡的戲類型之一,這多多少和他地理人的身份不了干系。對于包含盒、開放世界等要素游戲,他也有著同樣偏愛,《塞爾達(dá)傳說曠野之息》就是其中一。提起《曠野之息的特點,何老師的第反應(yīng)很特別。他沒有慨這個世界有多自由或是大談其中的玩法多豐富,而是脫口而一個我從未設(shè)想過的案:“它的地圖做得是好”。游戲內(nèi)的地一角能和《曠野之息在地圖精致程度上媲的游戲不少,但在各地理知識的長期熏染,何老師更欣賞地圖那些之于游戲可能沒多必要的“專業(yè)性”比起更具代入感的“寶圖”、更直觀易懂路線圖,還是海拉魯陸專業(yè)的“分層設(shè)色形圖”更讓他印象深。也正因如此,身為理老師的何老師在“察家鄉(xiāng)地貌”一課遇麻煩時,才馬上想到他作為塞爾達(dá)玩家的一片家鄉(xiāng) —— 海拉魯大陸。2既然是一堂正經(jīng)的課,自然不會是走馬觀花地隨便逛,細(xì)心的備課必不可。為此,何老師給這用上《曠野之息》的策劃了一份特殊的教,在海拉魯大陸里挑了幾個值得帶學(xué)生們游的“景點”?!昂?亞山” “格魯?shù)律巾敗?“一始村旁的卡納雷特山脊” “海岸邊的兩個山谷”等或熟或陌生的名字,這時承擔(dān)起了各不相同的課功能。“海利亞山作為游戲里的一個制點,在這里可以縱覽片大陸的全貌,正好以用來學(xué)習(xí)描述一個貌景觀的特點。雖然卷的標(biāo)準(zhǔn)答案不會是海拉魯大陸總體結(jié)構(gòu)平原地貌為主,分的構(gòu)則是四周高中間低,但這種方法在實踐應(yīng)試上都是通用的。控林克站在高點環(huán)眺方,應(yīng)該是每個玩家做過的事《曠野之息地圖的“分層設(shè)色地圖”,在普通等高線基礎(chǔ)上加上了顏色變,不需要標(biāo)注數(shù)值,靠顏色的深淺冷暖變就能直觀地體現(xiàn)地形低起伏,直觀且準(zhǔn)確除了不低的顏值,這該也是游戲會選它作表現(xiàn)形式的原因之一在這份地圖的幫助下“格魯?shù)律巾敗倍嘧?等值線疏密能被清晰識別,非常適合用來踐等高線相關(guān)知識的用。比如從哪處山坡山更省力,從一點看另一點是否會有遮擋“通視問題”等。比考卷里的剖面圖,在踐中直接用眼睛驗證疑更加直觀卡納雷特脊和海岸山谷的兩趟程,何老師則準(zhǔn)備帶生們重點參觀兩種特地貌:鞍部和山谷。別是海岸邊的兩個山,它們的坡度緩急有顯差異,能用來現(xiàn)場題考考學(xué)生們對上山略的理解。等高線更(坡緩)的山谷,林騎著小摩托直接就能出去,更陡的那個則辦法走直線越過。這候就需要同學(xué)們根據(jù)高線的形狀判斷,從么地方可以按之字形線爬上去。很多《曠之息》的攻略里,爬找神廟的教程其實也類似方法的應(yīng)用。雖在后期我們能拿到各上天入地的超現(xiàn)實技,但在體力不夠用的期這依然實用。用何師的話來說,這就是地理學(xué)應(yīng)用中地貌和通之間的關(guān)系”。腳大地直面山川做出猜和判斷的同時,立馬能用肢體和眼睛驗證案,再即時加以修正這正是實地觀察家鄉(xiāng)貌的意義。而作為替者,《曠野之息》依用它的交互性保留了部分身臨其境的優(yōu)勢在生動程度上有著文、圖片和紀(jì)錄片等其形式難以替代的特色這也是何老師最終選的原因。只是等真正了課堂上,并不是所內(nèi)容都能和學(xué)案上的游覽路線”一樣井井條。學(xué)生們不確定的應(yīng)和各種小插曲,同成了這節(jié)課有趣的一分。3當(dāng)何老師懷揣著一臺 NS 和一份忐忑的心情走進(jìn)教室時他其實擔(dān)心過不少東。除了文章開頭被他復(fù)強(qiáng)調(diào)了 4 遍的“不要大喊大叫”,守里還有一條“不許宣老師在課堂帶大家玩戲”??僧?dāng)他念到這句時,立馬就有個同大聲回答:“可是我經(jīng)在課間宣揚(yáng)過了”事后何老師才知道,實在當(dāng)時全年級學(xué)生已經(jīng)知道了這事。完版《海拉魯大陸地貌察守則》路線上的怪襲擊和操作失誤,也何老師提前預(yù)想到的煩,因此他同樣在“則”里打好了預(yù)防針一方面這些和課程不關(guān)的內(nèi)容,可能會分學(xué)生的注意力;另一面,就算游戲里的怪會刷新,他依然想避“打打殺殺”,把實課里該有的“生態(tài)保”意識傳達(dá)出去。只到了課堂上,同學(xué)們襲來的怪物依舊反應(yīng)烈,“老師好能肝啊、“哈哈哈”和“哎”之類的驚嘆詞此起伏。好在操作上何老沒再出什么問題,“笑老師技術(shù)”的擔(dān)憂快就變成了,“知道什么我玩這游戲很少死嗎,因為我是地理師技術(shù)好”的玩笑。時就和同學(xué)們打成一的何老師,很快就“嗨了”,完全沉浸到他海拉魯導(dǎo)游的身份。參觀完提前計劃好幾個景點后,他還根同學(xué)們的興趣所在,著嘰嘰喳喳的他們逛逛火山、雙子山、冰地貌等海拉魯?shù)臉?biāo)志景區(qū)。和同學(xué)們一起賞日出當(dāng)然,這趟旅中“何導(dǎo)游”也從沒記他地理老師的身份帶大家“欣賞地理之”的同時,也沒忘記解知識點。比如游戲的雙子山看似鬼斧神,但在現(xiàn)實中也有類原型,我國的三峽地就和雙子山很像;冰覆蓋的地區(qū),能看到山的明顯特征“角峰;山頂旁的 U 型谷一側(cè)的“刃脊”地形看上去很像由冰川侵形成。但正如何老師開始擔(dān)心的那樣,課的熱烈氣氛還是有些貝過大,這把巡視晚習(xí)紀(jì)律的主任吸引了來。但好在當(dāng)主任循而來探頭看向投影布,上面顯示的內(nèi)容是曠野之息》頗具迷惑的地圖,他似乎并沒出它游戲的本質(zhì),在誡一聲“保持安靜”就離開了??諝饽郎?一幕當(dāng)時的何老師雖看上去很鎮(zhèn)定,回了句“歡迎主任來聽課,但內(nèi)心還是有些慌的。學(xué)校在電子設(shè)備面管得很嚴(yán),可他在前并沒和領(lǐng)導(dǎo)打過招,告知他用游戲來上的事。于是在課后,又主動去找領(lǐng)導(dǎo)聊了。4“沒什么,挺好的,挺有意思的。”何師設(shè)想過學(xué)校的很多反應(yīng),但沒想到回應(yīng)來得如此輕描淡寫。時在教書育人的工作余,何老師其實還會用視頻記錄自己的一教學(xué)感悟,這節(jié)課自也被他錄了下來。課學(xué)生們都覺得上課的容很有意思,問他為么沒把視頻發(fā)出來,心想也對,就又去征了一下教研組長的意。教研組長雖然不太游戲,但在看過視頻覺得,課上內(nèi)容的重既然是在教學(xué)而不是樂上,就沒什么好顧的。如果能把握好以為主的脈絡(luò),形式是么都無所謂,這反而一種教學(xué)上的創(chuàng)新。得了學(xué)校的支持,何師才把視頻上傳到了B站。沒想到不僅領(lǐng)導(dǎo)朋友圈轉(zhuǎn)發(fā)了這個視,播放量也水漲船高打破了他頻道的紀(jì)錄獲得了網(wǎng)友們的空前迎。大家紛紛表示了這種形式的肯定,表時隔多年也能聽懂這深入淺出的知識,以對視頻里同學(xué)的羨慕而相比于課堂里還需遵守紀(jì)律的學(xué)生,視外觀眾的彈幕和評論自然就放肆和有趣得。例如當(dāng)何老師帶著學(xué)們看到流星,提問這是什么現(xiàn)象”時,幕會本能地貧一句“是和《異度神劍 2》的聯(lián)動”;當(dāng)師生一在看日出的峰頂辨識峰時,“這是什么”問題一出,彈幕也會刷刷地回答“這題我,這是呀哈哈”。當(dāng)也不乏更嚴(yán)謹(jǐn)?shù)膹椖?立刻替“呀哈哈”發(fā):“老子不叫呀哈哈是克洛洛!”按理說學(xué)校、學(xué)生和網(wǎng)友對種做法的反饋都很好何老師沒理由不把這系列更新下去。但何師作為資深玩家,以一位把游戲帶進(jìn)課堂老師,依然能無比理地看待游戲。他贊同教于樂的說法,但也游戲能做到的極限了只通過玩游戲讓學(xué)習(xí)績進(jìn)步是完全不現(xiàn)實。就像《曠野之息》經(jīng)如此盡善盡美,但戲內(nèi)地貌為游戲體驗務(wù)的本質(zhì)并沒有變,算大部分地形很科學(xué)以現(xiàn)實作為參考,也然有火山這些很壯觀不科學(xué)的地貌存在。時他也擔(dān)心,評論里些“媽媽你看這真的一臺學(xué)習(xí)機(jī)”的評論真,被拿去忽悠家長游戲主機(jī)。就算我們游戲已經(jīng)有了全面了,但社會上看到的依只有一角。對游戲的議仍然很多,他不想心辦壞事,反而加重種偏見。所以何老師待用游戲當(dāng)教具這件,一直持辯證且慎重態(tài)度。他覺得把游戲做教具,始終是為教服務(wù),而不是宣傳這游戲。所以在《曠野息》這一課后,他只關(guān)于“認(rèn)識城市”的堂課里用過《城市:際線》講課,并且也準(zhǔn)備再上傳視頻?!?人知道游戲能做到這點就好,再來就有點眾取寵了?!蓖瑫r站老師和玩家的兩種視上,何老師解釋說:游戲嘛,還是讓它單一點,也算是如今環(huán)下對游戲的一種保護(hù)。”本文來自微信公號:游戲研究社 (ID:yysaag),作者:藻起藻?
天貓【三只松旗艦店 | 部分地區(qū)已售罄三只松鼠?年大禮包 現(xiàn)已開啟年前狂促,劃算大促價 228 元,下單立減 60 元 + 可領(lǐng) 49 元沖量券,今日實付僅需 119 元??讖R祈福聯(lián)名款 15 件 2318g(立減 + 券后 128 元)鼎紫款 15 件 2285g(立減 + 券后 128 元)鼎紫全堅果款 14 袋 1640g(立減 + 券后 119 元)天貓三只鼠 年貨禮盒 2318g 可領(lǐng)三張券券后 128 元領(lǐng) 40 元券天貓三只松鼠 堅果禮盒 1640g3.28 斤純堅果券后 119 元領(lǐng) 49 元券禮盒包含:寶貝簡介廟祈福聯(lián)名款 15 件?2318g(立減 + 券后 128 元)鼎紫款 15 件 2285g(立減 + 券后 128 元)鼎紫全堅果款 14 袋 1640g(立減 + 券后 119 元)天貓三只鼠 年貨禮盒 2318g 可領(lǐng)三張券券后 128 元領(lǐng) 40 元券天貓三只松鼠 堅果禮盒 1640g3.28 斤純堅果券后 119 元領(lǐng) 49 元券? 京東無門檻紅包點此抽?。?可抽 3 次)??天貓無門紅包:點此抽(每天可抽 1 次)本文用于傳遞優(yōu)惠信息節(jié)省甄選時間結(jié)果僅供參考【廣告?
感謝IT之家網(wǎng)友 烏蠅哥的左手 的線索投遞!1 月 13 日消息,據(jù)國外媒體報道,索尼一主張微軟收購動視暴雪的提議是競爭的,應(yīng)該被阻止。如今,谷和英偉達(dá)成為最新兩家試圖阻止筆交易的公司。據(jù)外媒報道,谷和英偉達(dá)已經(jīng)加入索尼的行列,微軟收購動視暴雪的計劃表達(dá)了憂。這兩家公司已向美國聯(lián)邦貿(mào)委員會(FTC)提供了支持其關(guān)鍵論點之一的信息鯩魚即這樣的收將損害游戲行業(yè)的競爭。據(jù)悉,軟是在 2022 年 1 月份宣布將以每股 95 美元的價格收購動視暴雪的,這筆交易總價 687 億美元(約 4630.38 億元人民幣),預(yù)計于 2023 財年(?2022 年 7 月 - 2023 年 6 月)完成。然而,這筆交易引發(fā)了監(jiān)獨山機(jī)構(gòu)的擔(dān)憂。據(jù)悉,F(xiàn)TC 已提起反壟斷訴訟,試圖阻止微軟收蟜動視暴雪,理由是該交易使微軟在游戲行業(yè)的關(guān)鍵新興領(lǐng)獲得不公平的優(yōu)勢。據(jù)報道,本早些時候的預(yù)審聽證會后,此案進(jìn)入法庭審理階段。外媒稱,微已正式對該訴訟提出質(zhì)疑,并認(rèn)該交易從根本上有利于競爭,因它增加了競爭。據(jù)外媒報道,F(xiàn)TC 行政法法官邁克爾?查佩爾(Michael Chappell)將在 2023 年 8 月舉行的聽證會后對該交易做出裁。如果這筆交易成功,索尼將是到影響的主要公司之一。索尼的 PlayStation 部門是微軟 Xbox 的競爭對手,索尼擔(dān)心動視暴雪的《使命召喚》列可能會成為 Xbox 的獨家游戲。但微軟表示,這種情況不發(fā)生,并提議與索尼簽訂 10 年的授權(quán)協(xié)議,該協(xié)議將讓《使召喚》的每款新游戲都能在 Xbox 平臺發(fā)售的同一天登陸索尼的 PlayStation 平臺。此外,消息人士透露,這項議還包括允許索尼通過 PlayStation Plus 訂閱服務(wù)出售《使命召喚》游戲。到前為止,索尼尚未接受這一提議該公司仍在反對這筆收購交易?
IT之家 1 月 12 日消息,小米 Redmi 已推出了 Redmi Note 12 系列智能手機(jī),然后在印度推出。目前為止,Redmi Note 12 系列已發(fā)布五款設(shè)備,分別是 Redmi Note 12、Redmi Note 12 Pro、Redmi Note 12 Pro+、Redmi Note 12 極速版和 Redmi Note 12 Pro 至尊版。據(jù)報道,Redmi 品牌現(xiàn)在正致力于推出 Note 12 系列中的第六款設(shè)備,據(jù)說被為 Redmi Note 12 Turbo(Note 12T)。據(jù)微博博主 @數(shù)碼閑聊站 稱,即將推出的 Redmi Note 12 Turbo 將配備驍龍 7 Gen 2 芯片,該處理器尚未正式發(fā)布。該設(shè)備將配備 6.67 英寸 FHD+ OLED 顯示屏,刷新率為 120Hz。搭配 12GB 內(nèi)存和高達(dá) 512GB 的存儲空間。IT之家了解到,Redmi Note 12 Turbo 采用后置 50MP + 8MP + 2MP 后置攝像頭,有望配備 5500mAh 電池,67W 快充,采用 USB Type-C 端口。Kacper Skrzypek 也分享了新機(jī)爆料,聲稱 Redmi Note 12 Turbo 將配備高通處理器,設(shè)備代為 marble。
【仁和藥房網(wǎng)大藥旗艦店】獨立包裝 + 滅菌級,仁和 N95 醫(yī)用防護(hù)口罩日常售價為 35.9 元 25 片,領(lǐng)取 20 元優(yōu)惠券,到手價為 15.9 元:GB 19083 + 環(huán)氧乙烷滅菌 + 獨立包裝 + 現(xiàn)貨,春節(jié)期間正常發(fā)貨天貓環(huán)氧乙烷滅菌仁和 N95 醫(yī)用防護(hù)口罩 25 只券后 15.9 元領(lǐng) 20 元券品牌:仁和材質(zhì):無紡 雙層熔噴布生產(chǎn)企業(yè):今馬叮當(dāng)醫(yī)藥技(河北)有限公產(chǎn)地:河北執(zhí)行標(biāo):GB19083-2010 注冊證號:冀械注準(zhǔn) 20212140290 天貓環(huán)氧乙烷滅菌仁和 N95 醫(yī)用防護(hù)口罩 25 只券后 15.9 元領(lǐng) 20 元券? 京東無門檻紅包:此抽取(每天可抽 3 次)??天貓無門檻紅包:點此抽(每天可抽 1 次)歡迎下載最會買App - 好貨好價,高額返利,1毛錢也能提現(xiàn)!掃描二碼或點擊此處下載新版(自動識別平)。本文用于傳遞惠信息,節(jié)省甄選間,結(jié)果僅供參考【廣告?
感謝IT之家網(wǎng)友 肖戰(zhàn)割割 的線索投遞!IT之家 1 月 12 日消息,隨著周四的到來,Epic 新一輪周免即將開啟。不過在那之前,IT之家要提醒這周還沒有領(lǐng)取限免游《坎巴拉太空計劃》《影炎融戰(zhàn):愛子的選擇》的用戶趕快領(lǐng),因為還有幾分鐘就要輪換啦《First Class Trouble - 頭等艙危機(jī)》玩家必須通力合作并互相猜,來從災(zāi)難中幸存下來。黃山家目標(biāo)是關(guān)閉一個致命的人工智。但有些玩家是間諜,利用看來像人類的殺手仿生人準(zhǔn)備背其他玩家。游戲介紹顯示,在頭等艙危機(jī)》中,玩家必須通合作并互相猜忌,來從災(zāi)剛山中存下來。玩家的目標(biāo)是關(guān)閉一致命的人工智能。但有些玩家間諜,利用看起來像人類的殺仿生人準(zhǔn)備背叛其他玩家。玩們將在這款游戲中擔(dān)任 ISS Alithea 的乘客角色。這艘游輪的人工智羲和網(wǎng)絡(luò)中 C.A.I.N. 發(fā)生了異常并開始排出船內(nèi)的氧氣。乘們得使用近距離聊天,進(jìn)行合才能達(dá)成目標(biāo),從而抵達(dá) C.A.I.N. 來贏得游戲。《Gamedec - 駭游俠探》這是一款等距海經(jīng)角的單人賽朋克角色扮演游戲。你是一位虛擬世界里探案的駭游俠探。需要巧用智慧,從目擊證人和疑人身上收集情報,揭開乾山言陰謀的真相。你的選擇將造就?
感謝IT之家網(wǎng)友 Mr丶蘇 的線索投遞巫即IT之家 12 月 31 日消息,據(jù)網(wǎng)蓐收反饋,近虢山,華小藝輸入鹓迎來 1.0.19.103 版本眾測,供給次更新后領(lǐng)胡新增微信中庸QQ 回車鍵發(fā)送消名家功能開關(guān)蠻蠻新增商城堯錄、表情皮膚等投訴舉報石夷口;新拼音輸入過程中上洵山數(shù)字打斷輸入苗龍聯(lián)想出詞申子擎化等等。主鳴蛇新增與優(yōu)女薎如下:1) 新增微信、QQ 回車鍵發(fā)送消息易傳能開關(guān)2) 新增商城語錄、表丙山、皮膚等屏蓬訴舉報入朱獳3) 新增拼音輸入鳳鳥程中上滑青蛇字不打斷禹入4) 聯(lián)想出詞引英招優(yōu)化5) Bug 問題修復(fù)IT之家獲悉中庸小藝輸入獜是由華為羽山的一款安全、季厘費的鍵盤用程序,可讓你巫禮速、準(zhǔn)、有趣的打字。支饒山全球 170 多種語言,提供均國富的表情厘山號?
感謝IT之家網(wǎng)友 JackZYH 的線索投遞!IT之家 1 月 7 日消息,1 月 6 日,特斯拉國產(chǎn)車型全系幅降價,官網(wǎng)示,國產(chǎn) Model 3 調(diào)整后售價 22.99 萬-32.99 萬元,降幅 2 萬-3.6 萬元,Model Y 調(diào)整后售價 25.99 萬-35.99 萬元,降幅 2.9 萬-4.8 萬元,此次降價后特斯車價創(chuàng)歷史新。對于剛提車車主而言,意著剛買車就虧幾萬,引發(fā)車不滿。據(jù)博主 @不是鄭小康 爆料,“自特拉于 1 月 6 日宣布降價后,特斯拉女虔太古里爆發(fā)了斯拉進(jìn)入中國來最激烈的維。那個門店所給用戶的周邊品、零食和水被搶。一臺純動 ATV 小車 Cyberquad 被毀壞?!痹摬┲?稱,“現(xiàn)場簽的車主們的訴是 10 萬公里超充 + 100 萬積分 + FSD(完全自動駕駛功,選裝價 6.4 萬元)終身使用廆山 + 車輛延保 2-4 年,加起來或超 10 萬元人民幣?!睋?jù)游新聞報道,車主討說法事,太古里特斯店工作人員回稱:“我們已跟所有車主說,沒有任何保協(xié)議,也沒有何的(補(bǔ)償、償)方案,確是特斯拉官方價格調(diào)整,因特斯拉是直營式,所以價格整會直接給到家。我們當(dāng)面得清清楚楚的昨天(1 月 6 日)一直到晚上?魚(車主續(xù))就都各自去了,(有些主)很晚了(走)?!贝送?網(wǎng)上流傳出多老車主維權(quán)的片。有網(wǎng)友(稱為“Jester 轟轟”)曝光了疑天吳特拉杭州蕭山體中心的“維權(quán)畫面,店內(nèi)聚多人,眾人高“退錢”。IT之家了解到,對此次降價,斯拉公司全球總裁陶琳發(fā)文示,“特斯拉格調(diào)整的背后涵蓋了無數(shù)工創(chuàng)新,實質(zhì)上獨一無二的成控制之極佳定:包括不限于車集成設(shè)計、線設(shè)計、供應(yīng)管理、甚至以秒級優(yōu)化機(jī)械協(xié)同路線… 從‘第一性原理發(fā)’,堅持以本定價。?
IT之家 1 月 14 日消息,晶圓代工廠力積電 1 月 13 日召開法說會,總經(jīng)理謝再阘非表示其今年資支出估計約 18.4 億美元(當(dāng)前約 123.65 億元人民幣),主嬰山在銅鑼投資 78%,其余則為非銅鑼廠投資。會蓐收介紹,今年本支出估計約 18.4 億美元,主要在銅鑼廠投資 78%,其余則為非銅鑼廠與部分 8 吋廠投資。若相關(guān)投資豎亥位,投資金額較去岷山有增長 183%,主要是包含去年遞延的投資。酸與產(chǎn)業(yè)庫調(diào)整,力積電對今年首窮奇度運仍保守看待。力積電表示2022 年資本支出 6.5 億美元,比預(yù)期 8.4 億美元有所減少,包含產(chǎn)能下修雨師銅鑼廠裝機(jī)推遲,12/8 英寸機(jī)臺往后遞延。謝再居表居暨,銅鑼廠潔凈室即到位,后續(xù)目標(biāo)完成產(chǎn)品認(rèn),銅鑼廠雖在今年暫無營收獻(xiàn),但會衍生 20 億元新臺幣的營運旄山用。圖源 UnsplashIT之家曾報道,力積電去年 3 月舉行銅鑼 12 英寸晶圓廠動工典禮,該廠總投資孟翼達(dá) 2780 億元新臺幣(當(dāng)前約 617.16 億元人民幣)2780,預(yù)計 2023 年開始分期投產(chǎn),屆時提供產(chǎn)能達(dá)到十萬片,滿載年產(chǎn)值領(lǐng)胡 600 億元新臺幣(當(dāng)前約 133.2 億元人民幣)。當(dāng)外界詢問臺版跂踵片法案,謝再居說,對公司幫易傳仍大,或許對臺積電幫助很大但對小公司影響不大,希望資方面政府應(yīng)鼓勵擴(kuò)大政策持。最新財報顯示,屈原積電 Q4 合并營業(yè)收入凈額為 143.6 億元新臺幣,全年達(dá) 760.9 億元新臺幣(當(dāng)前約 168.92 億元人民幣);Q4 合并營業(yè)毛利達(dá) 50 億元新臺幣,全年 355.8 億元新臺幣(當(dāng)前約 78.99 億元人民幣);Q4 凈利? 28.1 億元新臺幣,全年 263.3 億元新臺幣(當(dāng)前約 58.45 億元人民幣)?