Ogni buon programmatore deve conoscere innanzitutto la macchina sulla quale lavora, per rendersi conto innanzitutto di ciò che può o non può fare, e poi per saper individuare con precisione la strada più breve per fare quello che si può fare (e a volte anche quello che non si può!).
Ecco allora quello che IO so del calcolatore elettronico.
L'interno del computer è costituito da fumo denso e nero. Quando esso fuoriesce dal computer, quest'ultimo termina di funzionare. Il tentativo di rimpiazzare il fumo inserendo una Marlboro accesa nell'unità per la lettura dei dischetti raramente porta a risultati concreti.
Per permettere il funzionamento di una architettura così complicata, occorre un sistema operativo avanzato che ci permetta di accedere con semplicità ai vari componenti del computer. Vediamo di studiare nel dettaglio come è composto il sistema operativo di un moderno computer.
Un sistema operativo standard è costituito da cinque filosofi cinesi, altrimenti detti "i cinque imbecilli", che stanno seduti dentro il computer, avvolti dal fumo nero e denso di cui sopra, seduti intorno ad un tavolo su cui si trovano cinque piatti di spaghetti e cinque bacchette.
Ora, i cinque filosofi sanno fare solo due cose: pensano e mangiano. Quando pensano non mangiano e viceversa. Tali azioni si manifestano all'utente in maniera evidente: quando sul vostro monitor un personaggio poligonale fa schizzare la materia grigia di un cattivo poligonale e renderizzato a 256 colori in tempo reale, è perchè almeno un filosofo (o imbecille, come preferite...) ci sta pensando; quando sentite provenire dei rumori sospetti dall'interno dello chassis del computer, vuol dire che almeno un filosofo sta mangiando.
Naturalmente, essendo cinesi, i filosofi hanno bisogno di n=2 bacchette per tirar su gli spaghetti. In effetti potrebbero anche mangiare con le mani, o sollevare il piatto e portarselo direttamente alla bocca, ma ciò sarebbe poco elegante da vedere, e quindi di regola non succede, almeno in un sistema operativo educato. Allora sorge il problema che non ci sono bacchette a sufficienza per ogni imbecille. Solo due di essi possono sbafare contemporaneamente.
A questo punto, gli imbecilli rivelano tutta la loro... imbecillità: supponiamo che ad un certo punto tutti vogliano mangiare la loro pappa. Tutti prendono una bacchetta, e siccome sono educati si mettono buonini buonini ad attendere che un'altra bacchetta si liberi. Morale: tutti aspettano fino a che non crepano di fame! Tale vicissitudine si manifesta quando Windows 95 rimane incastrato per il tempo sufficiente a farvi crescere la barba di un palmo.
Nota: in una delle lezioni del corso di Informatica II, il docente ha fatto una affermazione per me illuminante: "Ci sono server con sistema operativo Unix che funzionano ininterrottamente da quindici anni. E ci sono server con sistema operativo MS Windows NT che devono essere spenti e riaccesi ogni tre giorni, altrimenti vanno in palla". C'è da aggiungere qualcosa?
Marcello Mac Mancini Home Page
by Marcello Mancini
Versione 3.0