{"id":1115,"date":"2025-10-09T10:55:58","date_gmt":"2025-10-09T08:55:58","guid":{"rendered":"https:\/\/www.ilbytecidio.it\/?p=1115"},"modified":"2025-10-09T10:56:00","modified_gmt":"2025-10-09T08:56:00","slug":"windows-95-laccrocco-che-ha-portato-il-pc-nelle-nostre-case","status":"publish","type":"post","link":"https:\/\/www.ilbytecidio.it\/?p=1115","title":{"rendered":"Windows 95: l&#8217;accrocco che ha portato il PC nelle nostre case"},"content":{"rendered":"\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"767\" src=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup-1024x767.png\" alt=\"\" class=\"wp-image-1169\" srcset=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup-1024x767.png 1024w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup-300x225.png 300w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup-768x575.png 768w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup-400x300.png 400w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95startup.png 1172w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">La schermata di avvio di Windows 95<\/figcaption><\/figure>\n\n\n\n<p>Sto vedendo da un po&#8217; di tempo post nostalgici che mostrano schermate di Windows 95 o foto di clienti entusiasti col pacchetto d&#8217;installazione in mano. La prima volta ho pensato che fosse buffo, poi mi sono ricordato che ormai sono passati 30 anni dalla sua pubblicazione e che quindi molti informatici di oggi sono semplicemente troppo giovani per averne vissuto il lancio, cos\u00ec ho pensato di raccontarlo un pochino. Andiamo quindi a scoprire perch\u00e9 l&#8217;ho definito &#8220;accrocco&#8221;.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p>A met\u00e0 anni &#8217;90 gi\u00e0 si intuiva che l&#8217;informatizzazione era il futuro, ma la tecnologia disponibile si sposava male con l&#8217;idea che i prossimi anni 2000 sarebbero stati anni iper-tecnologici. Nel famoso dibattito <a href=\"https:\/\/groups.google.com\/g\/comp.os.minix\/c\/wlhw16QWltI\" data-type=\"link\" data-id=\"https:\/\/groups.google.com\/g\/comp.os.minix\/c\/wlhw16QWltI\" target=\"_blank\" rel=\"noreferrer noopener\">LINUX is obsolete<\/a>, Andrew Tanenbaum, informatico di fama internazionale, ipotizzava che in pochi anni si sarebbero diffusi i processori RISC, considerati allora molto promettenti, ma diffusi solo negli ultimi anni grazie all&#8217;architettura ARM, quella dei cellulari. Le cose sono andate diversamente: l&#8217;accoppiata PC IBM + MS-DOS ai suoi tempi si rivel\u00f2 cos\u00ec vincente che stabil\u00ec uno <em>standard de facto<\/em> per tutti gli anni a venire. In pratica, la maggior parte dei computer in circolazione negli anni &#8217;90 erano basati sulla stessa architettura, coi suoi limiti che la rendevano pi\u00f9 economica di altre, e con MS-DOS, che per\u00f2 era un sistema a riga di comando e quindi considerato ostico per molti potenziali utenti, nonch\u00e9 obsoleto, dato che sfruttava molto poco dei processori x86 di allora: niente multitasking, architettura a 16 bit ed esecuzione senza protezione della memoria n\u00e9 memoria virtuale (modalit\u00e0 reale). Microsoft aveva gi\u00e0 messo in atto alcune strategie per superare questi limiti. Per cominciare, lanci\u00f2 Windows, che inizialmente era solo un ambiente grafico che girava su MS-DOS e ne conservava molti limiti, poi speriment\u00f2 Windows NT, primo vero sistema operativo grafico a 32 bit, che per\u00f2 richiedeva macchine potenti e costose per girare.<\/p>\n\n\n\n<p>Microsoft rischiava a lungo andare di perdere terreno rispetto ad altre aziende, come la Apple che vendeva computer pronti all&#8217;uso dotati di un&#8217;interfaccia grafica intuitiva. Aveva bisogno di un prodotto moderno che mantenesse la compatibilit\u00e0 coi vecchi programmi, girasse con poca memoria sui processori pi\u00f9 diffusi (minimo 80386 e 80486) e offrisse per la prima volta il Plug &amp; Play, cio\u00e8 la capacit\u00e0 (oggi data per scontata) di riconoscere automaticamente l&#8217;hardware connesso riducendo la configurazione manuale al minimo.<\/p>\n\n\n\n<p>Il problema venne risolto riutilizzando varie parti a 16 bit di MS-DOS e Windows 3.1, integrando con alcune altre a 32 bit scritte ad-hoc. Vediamo nel dettaglio:<\/p>\n\n\n\n<p>Windows 95 si avviava ancora tramite MS-DOS 7.0, che forniva:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>IO.SYS<\/strong>: inizializza il sistema e carica i driver base.<\/li>\n\n\n\n<li><strong>MSDOS.SYS<\/strong>: ristrutturato come file di configurazione, non pi\u00f9 contenente codice.<\/li>\n\n\n\n<li><strong>COMMAND.COM<\/strong>: shell testuale DOS, ancora disponibile per compatibilit\u00e0.<\/li>\n\n\n\n<li><strong>CONFIG.SYS \/ AUTOEXEC.BAT<\/strong>: supportati ma non pi\u00f9 essenziali; servono per caricare driver in modalit\u00e0 reale.<\/li>\n<\/ul>\n\n\n\n<p>La presenza di MS-DOS 7 permetteva la compatibilit\u00e0 piena con le vecchie applicazioni per DOS, ancora diffusissime, che potevano essere lanciate a tutto schermo nel proprio ambiente nativo com&#8217;era sempre stato fatto. Era in particolare utile per i giochi che bypassavano il sistema operativo accedendo direttamente all&#8217;hardware e che non avrebbero avuto le stesse prestazioni in una finestrella dell&#8217;ambiente grafico. Per gli utenti che lavoravano soprattutto con programmi per DOS c&#8217;era la possibilit\u00e0 di configurare l&#8217;avvio in modalit\u00e0 MS-DOS e lasciare l&#8217;avvio dell&#8217;ambiente grafico al comando WIN, come con Windows 3.1.<\/p>\n\n\n\n<p>Quando il sistema era avviato in modalit\u00e0 grafica, il DOS poteva comunque essere emulato con la classica applicazione &#8220;Prompt dei comandi&#8221;.<\/p>\n\n\n\n<p>Molti moduli a 16 bit di Windows 3.x sono stati mantenuti:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>GDI e USER (in parte)<\/strong>: alcune API grafiche e di gestione della GUI sono ancora a 16 bit.<\/li>\n\n\n\n<li><strong>Sottosistema Win16<\/strong>: per eseguire applicazioni Windows 3.x.<\/li>\n\n\n\n<li><strong>Driver a 16 bit<\/strong>: stampanti, modem, schede video, ecc.<\/li>\n\n\n\n<li><strong>Librerie DLL condivise<\/strong>: come COMMDLG.DLL, SHELL.DLL, TOOLHELP.DLL.<\/li>\n<\/ul>\n\n\n\n<p>Questo permetteva di eseguire le applicazioni di Windows 3.x in modo nativo, senza emulazioni, e di riutilizzare almeno in parte i driver per periferiche esistenti. <br>In questo modo, inoltre, il sistema grafico era pi\u00f9 leggero e quindi adatto a girare su molti dei computer gi\u00e0 presenti nelle case e negli uffici o comunque dal prezzo pi\u00f9 accessibile, strategia che sappiamo essere vincente ancor pi\u00f9 alla luce del disastro di Windows Vista di anni dopo, che richiedeva macchine ben pi\u00f9 potendi della media presente in circolazione.<\/p>\n\n\n\n<p>Accanto a tutto ci\u00f2, furono aggiunti:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>VMM32.VXD<\/strong>: Virtual Machine Manager, che gestisce multitasking, memoria virtuale, protezione.<\/li>\n\n\n\n<li><strong>Kernel32.dll<\/strong>: API di base per processi, file, memoria.<\/li>\n\n\n\n<li><strong>User32.dll \/ Gdi32.dll<\/strong>: versioni a 32 bit delle API grafiche, che coesistono con le controparti a 16 bit.<\/li>\n\n\n\n<li><strong>Explorer.exe<\/strong>: nuova shell grafica con desktop, taskbar e menu Start.<\/li>\n\n\n\n<li><strong>Registro di sistema (SYSTEM.DAT \/ USER.DAT)<\/strong>: sostituisce WIN.INI e SYSTEM.INI per le configurazioni.<\/li>\n<\/ul>\n\n\n\n<p>Queste componenti permettevano di eseguire le applicazioni a 32 bit, che sarebbero diventate lo standard negli anni a venire man mano che i produttori aggiornavano o riscrivevano i propri programmi.<\/p>\n\n\n\n<p>Ci fu inoltre una grande novit\u00e0: <strong>DirectX<\/strong>. Si tratta di una serie di librerie che favoriscono lo sviluppo di videogiochi sfruttando tutte le potenzialit\u00e0 dell&#8217;hardware. Le prime versioni di Windows infatti erano pensate per lavorare, ma il sistema era troppo rigido perch\u00e9 si potessero sviluppare giochi con la grafica e la fluidit\u00e0 di quelli che giravano in DOS. I giochi per Windows 3.1 sono infatti molto semplici e con grafica 2D. Per evitare che i produttori di giochi ignorassero la nuova piattaforma spingendo i loro clienti su altre, venne dunque l&#8217;idea di creare delle apposite librerie per superare questi problemi. L&#8217;idea fu vincente e infatti le DirectX vivono ancora oggi.<\/p>\n\n\n\n<p>E fin qui pare che tutto fosse rose e fiori: un sistema che offriva compatibilit\u00e0 nativa a ben tre sistemi, DOS, Win16 e Win32, ma nella realt\u00e0 non era proprio cos\u00ec:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Un software molto complesso ed eterogeneo, con componenti cos\u00ec diverse che devono comunicare fra loro \u00e8 pi\u00f9 soggetto a bug;<\/li>\n\n\n\n<li>L&#8217;ambiente 16 bit, per compatiblit\u00e0, non poteva fornire una completa separazione dei processi, ed in particolare una completa protezione della memoria come in modalit\u00e0 32 bit. Significa che un&#8217;applicazione o un driver a 16 bit malfunzionante poteva finire per sovrascrivere la memoria di un&#8217;altra o una struttura di sistema mandandolo completamente in crash. Applicazioni malevoli inoltre potevano letteralmente rubare dati alle altre;<\/li>\n\n\n\n<li>Alcune parti del sistema avevano strutture di memoria in comune, col risultato che un bug in una parte poteva bloccarne un&#8217;altra;<\/li>\n\n\n\n<li>Windows 95 aveva una politica permissiva sui driver, anche in virt\u00f9 del fatto che supportava i vecchi a 16 bit, ma un driver scritto male pu\u00f2 bloccare l&#8217;intero sistema, specialmente se non adeguatamente protetto;<\/li>\n\n\n\n<li>Le applicazioni a 16 bit giravano all&#8217;interno dello stesso thread, nel quale era implementato il multitasking cooperativo come su Windows 3.1. Nel multitasking cooperativo l&#8217;applicazione deve cedere volontariamente il controllo al sistema di tanto in tanto. Se un&#8217;applicazione si blocca e non cede il controllo, si bloccano anche tutte le altre.<\/li>\n<\/ul>\n\n\n\n<p>Ne venne fuori un sistema bello da vedere, col caratteristico pulsante &#8220;Start&#8221; che usiamo ancora oggi, e che traghettava gli utenti verso la diffusione di massa dell&#8217;informatica e che aveva costi economici ridotti sia perch\u00e9 supportava hardware vecchio sia perch\u00e9 non richiedeva programmi nuovi, ma che nel complesso era fragile e poco sicuro: un accrocco, insomma. Il Plug and Play inoltre spesso si limitava a rilevare che era stata collegata una periferica nuova, mentre era richiesta ancora una certa competenza per configurarla, specialmente se vecchia. Questo perch\u00e9 l&#8217;hardware stesso era ancora pensato per essere configurato tramite deviatori fisici sulle schede e assegnazioni manuali di risorse, i driver erano su dischetto e non certo in qualche archivio online e andavano installati a mano, avendo cura di scegliere la versione giusta.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"768\" src=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724-1024x768.png\" alt=\"\" class=\"wp-image-1171\" srcset=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724-1024x768.png 1024w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724-300x225.png 300w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724-768x576.png 768w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724-400x300.png 400w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/Captura-de-pantalla-2025-10-07-084724.png 1439w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Windows 95 in esecuzione<\/figcaption><\/figure>\n\n\n\n<p>Nonostante i problemi fu un grande successo, che and\u00f2 aumentando con Windows 98, che ne condivideva l&#8217;architettura ibrida. Il punto di forza dunque furono: un&#8217;interfaccia semplice da usare anche per i meno esperti; la multimedialit\u00e0; la compatibilit\u00e0 con software esistente; la compatibilit\u00e0 con hardware datato.<\/p>\n\n\n\n<p>Fatto curioso, Windows 95 aveva un leggero vantaggio teorico sul sistema Apple di allora (System fino alla versione 7, Mac OS poi), al quale mancava il multitasking preemptivo e la protezione della memoria, ma il sistema di casa Apple poteva vantare una maggiore stabilit\u00e0 per il fatto di essere progettato e ottimizzato per funzionare su un numero molto ristretto di macchine: i Macintosh di quegli anni.<\/p>\n\n\n\n<p>Fu solo con Windows XP del 2001 che si abbandon\u00f2 l&#8217;architettura ibrida di Windows 95 per passare completamente all&#8217;architettura di Windows NT, che si \u00e8 evoluto in Windows 2000, XP, Vista, e cos\u00ec via fino ad arrivare all&#8217;attuale versione 11. Windows NT forniva un sistema completamente a 32 bit, stabile, sicuro e con la stesso aspetto di Windows 95, ma richiedeva hardware pi\u00f9 potente ed era meno orientato alla multimedialit\u00e0. Mancava completamente DirectX, per esempio, trattandosi di un sistema destinato alle aziende. Il supporto alle applicazioni a 16 bit era invece emulato e non nativo, cosa che le rendeva pi\u00f9 sicure, ma anche pi\u00f9 pesanti e potenzialmente inclini ad andare in crash se facevano uso di tecniche di programmazione poco comuni. Il supporto per le applicazioni a 16 bit \u00e8 ufficialmente finito con l&#8217;introduzione dei sistemi a 64 bit, ma \u00e8 possibile reintrodurlo con software di terze parti come <a href=\"https:\/\/www.dosbox.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">DosBox<\/a> e <a href=\"https:\/\/github.com\/otya128\/winevdm\/\" data-type=\"link\" data-id=\"https:\/\/github.com\/otya128\/winevdm\/\" target=\"_blank\" rel=\"noreferrer noopener\">WineWDM<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"767\" src=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown-1024x767.png\" alt=\"\" class=\"wp-image-1170\" srcset=\"https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown-1024x767.png 1024w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown-300x225.png 300w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown-768x575.png 768w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown-400x300.png 400w, https:\/\/www.ilbytecidio.it\/wp-content\/uploads\/2025\/10\/win95shutdown.png 1172w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><figcaption class=\"wp-element-caption\">Non tutti i computer si spegnevano automaticamente all&#8217;epoca. Quelli dotati di alimentazione AT avevano un interruttore da azionare manualmente, ma era comunque importante arrestare il sistema per evitare errori sul disco e perdite di dati. Un grosso cambiamento rispetto al DOS, col quale si poteva spegnere una volta chiuso il programma in esecuzione.<\/figcaption><\/figure>\n\n\n\n<p>Ora conoscete un po&#8217; meglio la storia ed alcuni dettagli tecnici. Io che all&#8217;epoca ero bambino m&#8217;innamorai di Windows 95 dopo averne visto un dimostrativo chiamato &#8220;Windows 95 Virtual Tour&#8221; ed insstetti tanto per averlo sul nostro 486 di casa. Ironicamente, tempo dopo incominciai a sentire la mancaza del prompt di MS-DOS, ma ormai la storia aveva gi\u00e0 deciso in favore dei sistemi grafici.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sto vedendo da un po&#8217; di tempo post nostalgici che mostrano schermate di Windows 95 o foto di clienti entusiasti col pacchetto d&#8217;installazione in mano. La prima volta ho pensato che fosse buffo, poi mi sono ricordato che ormai sono &hellip; <a href=\"https:\/\/www.ilbytecidio.it\/?p=1115\">Continua a leggere<span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[146,147,148],"class_list":["post-1115","post","type-post","status-publish","format-standard","hentry","category-windows","tag-sistemi-operativi","tag-windows","tag-windows-95"],"views":116,"_links":{"self":[{"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=\/wp\/v2\/posts\/1115","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1115"}],"version-history":[{"count":9,"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=\/wp\/v2\/posts\/1115\/revisions"}],"predecessor-version":[{"id":1172,"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=\/wp\/v2\/posts\/1115\/revisions\/1172"}],"wp:attachment":[{"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ilbytecidio.it\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}