Andrew Tanenbaum o Windows: Architektura, chyby a zabezpečení

  • Systém Windows je sužován nedostatky kvůli své monolitické složitosti a špatnému celkovému pochopení systému.
  • Tanenbaum navrhuje modularitu ve stylu MINIXu pro izolaci chyb a zlepšení zabezpečení.
  • Každodenní problémy (aktualizace, ovladače, černé obrazovky) odrážejí tuto nadměrnou propojenost.

Chyby systému Windows od Andrewa Tanenbauma

Název vám může znít povědomě, nebo ne, ale Andrew S. Tanenbaum Patří k těm akademikům, kteří ovlivnili několik generací počítačových vědců. V nedávném rozhovoru, o kterém informovala média jako Clarín a který se objevil ve specializovaných zpravodajích, pronesl důrazné prohlášení o Windows: Systém Microsoftu je sužován příliš mnoha chybami protože jeho složitost z něj udělala něco, čemu plně nerozumí ani jeho vlastní inženýři.

Za poutavým titulkem se skrývá něco jiného. kritika architektury a filozofie vývoj. Tanenbaum, tvůrce MINIXu a autor klíčového díla, jako je „Operační systémy: Návrh a implementace“, již po celá desetiletí obhajuje modularitu oproti monolitickým návrhům. Jeho argumenty nejsou jen technickými preferencemi: spojují se s každodenní chyby, kterým uživatelé čelí a bezpečnostní problémy které se dostanou ke kritické infrastruktuře.

Kdo je Andrew S. Tanenbaum a proč je jeho hlas důležitý?

Pokud existuje učitel, který vysvětlil, jak operační systém funguje odshora dolů, je to on. TanenbaumJeho akademická kariéra a práce popularizátora byly zásadní pro pochopení základů moderních operačních systémů a jeho MINIX Zrodil se přesně s tímto vzdělávacím cílem: aby kdokoli mohl studovat skutečný systém a bez obav ho otestovat.

Není náhoda, že Linus Torvalds K uvedení Linuxu na trh ho inspiroval systém MINIX: studoval jeho design, opíral se o filozofii nástrojů GNU a s tímto impulsem vytvořil jádro, které dnes řídí servery, superpočítače, mobilní telefony a značnou část cloudu. Semeno MINIX sehrál klíčovou roli ve vzniku moderního hnutí open source.

V rámci příprav na technologické akce, jako např. Nerdearla 2025 v Buenos Airesa v rozhovoru reprodukovaném v Clarínu a okomentovaném hlasy, jako je zpravodaj Dark News Juana Brodersena, se Tanenbaum vrátil k důležitým otázkám: bezpečnost, stabilita a věčný boj mezi monolitickými jádry a mikrojádry.

Jeho přístup není jen akademický. Podle jeho vlastní metafory se mnoho současných systémů nakonec stalo „Obrovský talíř špaget“ kde se všechno dotýká všeho. A když je všechno takto propojeno, vedlejší účinky změny stát se nepředvídatelnými.

Složitost a chyby ve Windows

Okna pod mikroskopem: ohromná složitost a malá kontrola

Tanenbaum měl jasno: „Windows je plný chyb, protože ani Microsoft mu plně nerozumí.“Co se může jevit jako výbuch, je založeno na zničujícím faktu: systém překračuje 100 milionu řádků kódu, napsaný v několika jazycích (mimo jiné C, C++ nebo C#) a žádný inženýr neovládá více než malý zlomek z celkového počtu.

Když o tom nikdo neví víc 10 % systému, jakákoli lokální modifikace může mít neočekávané důsledky na globální úrovni. Proto, záplaty jsou konstantní a často, zavést nové chyby nebo díry zatímco opravují ty staré. Je těžké tuto smyčku přerušit: velikost a propojení ztěžují samotnou údržbu. zdroj nestability.

Pro ilustraci toho Tanenbaum používá metaforu talíř špaget: Když zatáhnete za nudli, celý talíř se pohne. V kódu, kde je vše propleteno, předvídat účinky domluvy je téměř nemožný úkol a týdenní aktualizace Stávají se zároveň nutností i rizikem.

To je cena systému, který po celá desetiletí rostl, aby pokryl potřeby tisíce případů použití, podpora heterogenního hardwaru, zpětná kompatibilita a všechny druhy integrací. Souhrn komponent, vrstev a závislostí nakonec zvýšil účet za složitost až do současného bodu.

Mikrojádra a modularita: Tanenbaumův recept

Alternativa, kterou navrhuje a kterou ztělesňuje MINIX, je modulární architektura s jasnými hranicemi mezi komponentami. V ní každá část – například ovladač – pracuje ve svém vlastním prostoru, s omezená oprávnění a odpovědnostiVýsledkem je, že lokální selhání nezpůsobí výpadek celého systému.

Klasickým příkladem, který Tanenbaum nabízí, je ovladač zvukuV modulárním designu je nejhorším scénářem po chybě to, že zvuk přestane fungovat nebo zní špatně. Nesmí se dotknout puku ani sítě, ani neohrozit globální bezpečnost. Je to téměř chirurgické zvládání škod.

Tváří v tvář tomu systémy tradiční monolitické (jako Windows nebo Linux) soustředit velkou část logiky do jednoho prostoru s pevně propojenými komponentami. Tato operační blízkost usnadňuje výkon a zjednodušuje určité interakce, ale zesiluje účinky chyby.

Problém s modularitou? Obvykle existuje náklady na výkonVíce kroků, více přepínání, více zpráv mezi procesy nebo servery v systému. Pro Tanenbauma se kompromis vyplatí: lepší o něco pomalejší systém, ale mnohem stabilnější a bezpečnější než ten, který letí, ale spadne nebo je odkrytý.

Tváří v tvář s Linusem Torvaldsem: Výkon versus bezpečnost

Toto napětí mezi monolitickým a mikrojádrovým designem není nové. V 90. letech 20. století Tanenbaum a Torvalds Vedli slavnou debatu: Linus obhajoval monolitické jádro (jednodušší na sestavení a s dobrým výkonem), zatímco Andrew Sázel jsem na mikrojádra (bezpečnější a odolnější vůči chybám).

Přesčas, Linux „zvítězil“ v ​​přijetí a stal se de facto standardem napříč servery, cloudy a zařízeními. Tanenbaum však vznáší nepříjemnou otázku: vzhledem k dnešní nejisté situaci, Je to vítězství tak jasné? Možná by bylo lepší obětovat pár výkonnostních bodů pro získat robustnost v planetárním měřítku.

V každém případě jeho úvahy nepopírají technické přednosti Linuxu ani ohromné ​​inženýrství Windows; zaměřují se na skutečnost, že model zabezpečení již od návrhu má stále větší váhu v hyperpropojeném světě, kde selhání v subsystému může stát globální incident.

Chyby, se kterými se uživatelé setkávají: od ovladače po černou obrazovku

Co teoreticky zní jako architektura, se v praxi promítá do každodenní nepříjemnostiZprávy z nástrojů jako Wondershare Recoverit uvádějí řadu běžných chyb v Windows 10 a 11 to vám bude znít povědomě, pokud systém používáte často.

  • Aktualizace, které se nedokončíAktualizace procesů, které se zaseknou, a vynucení restartu nebo obnovení.
  • Problémy s ovladačiKonflikty po instalaci nebo aktualizaci ovladačů hardwaru.
  • Černé obrazovkySystém se spustí, ale plocha se nezobrazí nebo zůstává nepřístupná.
  • zvukové chyby: Výpadky zvuku, mizení nebo nereagování zařízení.
  • Změny výchozích aplikacíNastavení, která jsou po opravách nebo nových sestaveních změněna bez povolení.

Podle Tanenbauma je kořenem mnoha z těchto problémů vnitřní vzájemná závislost: dotknete se jedné součásti a omylem změníte jinou. Nakonec se každý patch stane na malém dobrodružstvía řetězec aktualizací se zdá být nikdy nekončící.

Ti, kteří spravují vozové parky, to dobře vědí: plánovat intervaly údržby, testovat ovladače a ověřovat kompatibilitu a... záložní kopie s kritickými aplikacemi vyžaduje čas a metodu. Pokud chování není předvídatelné, provozní náklady se zvyšují a s nimi i riziko nedostupnosti.

Bezpečnost: když selhání již není domácího charakteru

Nastává bod, kdy konverzace opouští domácí sféru a přeskakuje do národní sféry. Tanenbaum zdůrazňuje, že státem sponzorovaní herci Podařilo se jim infiltrovat kritickou infrastrukturu více než 80 země, zneužívání zranitelností v klíčovém softwaru, se zvláštním zmínkou o Windows.

Podle jeho slov, určité komponenty „Ztrácejí data jako přes síto„Je to hrubý obrázek, ale efektivní pro pochopení rozsahu: pokud je systém tak složitý, že není možné předvídat interakce,“ množí se útočné plochy a soupeři mají více příležitostí.

Bludný kruh záplaty, které opravují a otevírají jiné dveře vytváří složitou dynamiku. I když Microsoft rychle opravuje, architektura pozadí se nadále vnucuje jeho limity předvídatelnosti.

To neznamená, že v oblasti bezpečnosti nedochází k žádnému pokroku – v tomto odvětví se výrazně zlepšila– ale Tanenbaum nám připomíná, že „jak“ je návrh navržen, může být stejně rozhodující, nebo dokonce ještě více, než „kolik“ zdrojů investovaných do nápravy.

Viditelná zlepšení, která se nedotýkají jádra problému

Společnost Microsoft představila uživatelům řadu nových funkcí: Cortana (nyní ukončeno), virtuální plochy, Hyper-V pro virtualizaci a nejrůznější vylepšení rozhraní a produktivity. To jsou užitečné pokroky, které přidaná hodnota pro mnoho profesních i domácích profilů.

Tanenbaum však varuje, že základní výzvou je strukturálníPokud srdcem systému zůstane gigantický monolitický blok, schopnost tomu porozumět komplexní porozumění je omezené. A bez tohoto komplexního porozumění se předpovídání vedlejších účinků stává otázka pravděpodobnosti více než jistoty.

Jinými slovy, můžete vylepšit zážitek, přidat funkce a zlepšit pracovní postupy, ale pokud nezměníte spojovací model, náklady spojené se složitostí jsou stále přítomny. Proto prosazuje vizi, kde modularita Stává se to nezbytnou nutností, nikoli luxusem.

Tento přístup odpovídá tomu, co dnes mnoho bezpečnostních týmů požaduje: izolace poruch, nejnižší privilegia, segmentace a dobře definované hranice mezi službami. Cokoli, co snižuje poloměr šíření, je v souladu s moderní osvědčené postupy.

Transparentnost, komunita a role open source

Dalším klíčovým bodem je průhlednostTanenbaum tvrdí, že velká část komerčního softwaru – Windows, macOS a v širším smyslu i populární aplikace – je neprůhledný i pro své tvůrceSarkasticky se ptá: „Ví někdo, co dělají?“ Facebook, Instagram, TikTok nebo Photoshop „Vážně tam?“

Open source je na druhou stranu spíše jako vědecký výzkumNápady jsou sdíleny, reprodukovány a vylepšovány veřejně. Linux, BSD a další projekty si udržují vitalitu, která pohání inovace a často umožňuje „amatérům“ přispívat řešeními které konkurují velkým korporacím.

Pro Tanenbauma není open source jen otázkou filozofie, ale také... kvalita a bezpečnostKdyž více očí sleduje a testuje, chyby se odhalí dříve a návrhy se rychleji vylepší. Je zřejmé, že to není všelék, ale snižuje informační asymetrii který existuje v uzavřených produktech.

V tomto scénáři se jeho závazek k modulární architektuře dobře integruje s distribuovaná spolupráceKaždý modul může mít jasné správce, definované hranice a specifické procesy kontroly, které podporují odpovědnost a kontrola.

Co se odvětví může (a mělo by) naučit

Aniž bychom předstírali, že nabízíme kouzelné recepty, z Tanenbaumovy analýzy vyplývá několik myšlenek. rozumné postupy které by mohla zvážit každá organizace, pokud se chce vyhnout syndromu „obřích špaget“.

  • Modularita s přísnými limitydefinovat hranice odpovědnosti, minimální oprávnění a dobře specifikované komunikační kanály.
  • Pozorovatelnost již od návrhuSledovat, měřit a korelovat události pro pochopení dopadu změn.
  • Technická správa dluhůEliminujte zbytečná propojení a refaktorujte kritické součásti dříve, než se zhroutí pod vlastní vahou.
  • Preventivní zabezpečeníIzolujte ovladače a služby, zpevněte exponované povrchy a postupně ověřujte změny.
  • Transparentnost a přezkumZavádět postupy otevřeného recenzování nebo, kde je to možné, využívat komponenty s otevřeným zdrojovým kódem v aktivní komunitě.

Přijetí těchto principů nevyžaduje replikaci MINIXu ani zahození toho, co bylo vytvořeno; znamená to nastavit směr tak, aby se systém s každým krokem vylepšoval. méně křehké a srozumitelnějšíTo je již ve střednědobém horizontu hmatatelný zisk.

Při pohledu na obrázek, který namaloval Andrew S. Tanenbaum, je těžké nevidět vzorec: obrovský kód, těsné propojení a částečné pochopení Jsou perfektním receptem na opakující se chyby. Modularita, izolace chyb a kultura transparentnosti ukazují na klidnější cestu: nemusí být nejrychlejší, ale je to ta, která vás dovede nejdál, aniž byste uvízli v polovině.

odhalovač rootkitů
Související článek:
RootkitRevealer: Ultimátní průvodce detekcí krádeží ve Windows