Kacam.net

Sistemi

一次上下文切换,贵在哪

切换的成本主要不是保存寄存器 —— 那是什么?

Copia l'istruzione e scegli un modello. Farà l'intervistatore e ti interrogherà atto per atto invece di servirti la risposta.

Su un telefono con l'app installata, il sistema apre direttamente l'app. Dentro WeChat i collegamenti non aprono app esterne: aprilo prima in un browser.

Il testo copiato finisce con la griglia di correzione che il modello usa per valutarti. Non leggerla prima: vale l'averci arrivato da solo.

「切换有开销」人人会说,但开销在哪、量级是多少就开始分人了。直接成本(保存现场、跑调度器)只有一两微秒,真正贵的是切完之后缓存全冷、新线程要重新捂热的那几十微秒。

想明白这一点,「线程池该开多大」「协程凭什么便宜」「为什么任务粒度太小时多线程反而更慢」就都是它的推论。

最后一幕问怎么在线上看:自愿切换和非自愿切换特别高,分别说明什么。

★★★★☆ · circa 30 min · Cosa si valuta: 直接成本 vs 间接成本、线程池该开多大、协程凭什么便宜

Che cosa allena questa

Scheduling e cambio Cache e linee di cache Ordini di grandezza

Già fatto questo?

Accedi per segnare che l'hai fatto: la prossima volta vedrai in che giorno è stato.

Appunti di chi l'ha fatto

Non ha ancora scritto nessuno. Dopo averlo fatto, racconta cosa è venuto fuori: quale atto ti ha bloccato, quale conclusione hai cambiato dopo.

Accedi per scrivere un appunto.

Come si usa

Questa serie insegna invece di interrogare: ti guida invece di incalzarti finché non hai più nulla da dire. Quando ti blocchi chiede prima a che livello (mai sentito / lo so ma non so perché / so perché ma non lo applico) e poi decide che cosa darti. Solo dopo averti guidato due volte te lo dice, e allora ti chiede di ripeterlo con parole tue.

Ti chiederà numeri di continuo: se rispondi «ha un costo» o «è più veloce» ti interrompe. Una conclusione senza ordine di grandezza è una conclusione imparata a memoria — ed è proprio ciò che questa serie allena.

Come iniziare

  1. Scegline una, aprila, copia il prompt.
  2. Incollalo in una conversazione nuova e vuota, non dire nulla e aspetta la prima domanda.
  3. Preparati a dare ordini di grandezza: quanti nanosecondi, quanti microsecondi, quante volte più lento. Dire che non lo sai va bene: lo annota e prosegue.

Quattro comandi da lanciare in qualsiasi momento

  • 跳过 passa subito alla scena successiva
  • 换个说法 rispiega questo punto da un'altra angolazione
  • 直说吧 dai la risposta completa e poi fammela ripetere
  • 复盘 salta alla chiusura e stampa la scheda di bilancio

Tre trappole

  • Non leggere prima la soluzione in fondo: quella sezione sugli «errori di ragionamento più comuni» è la risposta a ogni domanda.
  • Non buttarti sul termine tecnico. Dire «è un TLB miss» è facile; dire di quanto costa meno di un page fault è ciò che conta.
  • Quando comincia a lodarti, rimandalo alla regola «non lodarmi». Guidare non è coccolare.

Per farti gli ordini di grandezza: letture casuali e poi il primo byte. Per il debug in produzione: malloc, stalli TCP, cambi di contesto. Per il codice concorrente: riordino e falsa condivisione.