Loading AI tools
sistema operativo Da Wikipedia, l'enciclopedia libera
AmigaOS, inizialmente anche scritto Amiga OS, è il sistema operativo della piattaforma informatica Amiga, pubblicato a partire dal 1985.
AmigaOS sistema operativo | |
---|---|
Sviluppatore | Commodore Amiga, Inc. (1.0-3.1) Haage & Partner (3.5-3.9) Hyperion Entertainment (4.0-4.1) |
Famiglia | Amiga OS |
Release iniziale | (23 luglio 1985 ) |
Release corrente | 4.1 Final Edition Update 2 (23 dicembre 2020 ) |
Tipo di kernel | microkernel atipico |
Piattaforme supportate | Motorola 68k, PowerPC |
Interfacce grafiche | Grafica |
Tipo licenza | Software proprietario |
Licenza | Closed source |
Stadio di sviluppo | in corso |
Predecessore | TripOS |
Successore | AROS |
Sito web | www.amigaos.net |
Basato su TripOS, nacque nel 1983 e fu pensato come sistema operativo per coordinare le potenzialità hardware di un prototipo di computer denominato "Lorraine" sviluppato dalla Hi-Toro, in seguito rinominata Amiga Corporation.
Sebbene nel 1983 molte parti di Lorraine non fossero state ancora realizzate, già a quel tempo Dale Luck e un gruppo di ingegneri si stavano occupando della progettazione del sistema operativo che avrebbe accompagnato la nuova macchina, simulando via software l'hardware non ancora disponibile per mezzo di una workstation Sun. Alla fine del 1983 il sistema operativo offriva già un'interfaccia grafica con finestre e menù: era stata realizzata tutta la gestione grafica (Intuition) progettata e implementata da Robert J. Mical; il tutto era controllato da un microkernel (Exec) creato da Carl Sassenrath.
Nel 1984 il progetto Lorraine assieme all'Amiga Corporation fu acquistato da Commodore International, in quel momento il sistema operativo era ancora incompleto, pertanto Commodore decise di mettere da parte alcune componenti del progetto (CAOS) e cercò di integrare caratteristiche lontane da quello che Jay Miner e il suo team avevano ideato. Al fine di completare in fretta il progetto, Commodore commissionò a MetaComCo, una società di sviluppatori, l'integrazione di parte del sistema operativo TripOS all'interno del sistema operativo di Lorraine. Da questa integrazione, il cui diretto responsabile fu Tim King, nacque il modulo AmigaDOS.
Nel 1985 venne finalmente commercializzato il primo computer derivato dal progetto Lorraine, Amiga 1000, coordinato da un sistema operativo che venne in seguito chiamato AmigaOS. Dopo l'acquisizione da parte di Commodore ed il fallimento di questa nel 1994, i diritti sul sistema operativo sono stati rilevati nel 2000 da Amiga Inc., che ne concesse lo sviluppo su licenza della società belga Hyperion Entertainment.
AmigaOS è un sistema operativo monoutente multiprogrammato e si distingue per:
Gli eseguibili Amiga sono in formato Amiga Hunk fino alla versione 3.9. A partire dalla versione 4.0, e così anche per i sistemi operativi derivati da Amiga AROS e MorphOS, gli sviluppatori hanno preferito adeguarsi allo standard ELF.
Il formato Amiga Hunk prevede che l'eseguibile sia diviso al suo interno in tanti spezzoni, detti appunto hunk, che possono ospitare sia il codice, sia i dati dell'eseguibile. Il file eseguibile viene riconosciuto dal sistema tramite una sequenza esadecimale speciale posta nell'intestazione (header) del file eseguibile stesso, chiamata in gergo "magic cookie" (biscottino magico), analoga al magic number del mondo Unix.
I moderni AmigaOS e i sistemi operativi da esso derivati MorphOS e AROS hanno adottato il formato ELF.
AmigaOS riconosce altri diversi tipi di file eseguibili, AmigaOS in versione classica, fino al numero di revisione 3.9 riconosce eseguibili in formato PPC, che vengono fatti girare dalle schede acceleratrici create nel passato per gli hardware Amiga Classic (A2000/A3000/A1200/A4000). Grazie alle librerie WarpUP e PowerUP, Amiga indirizza questi file al processore PPC presente sulla scheda acceleratrice, dove vengono eseguiti in modalità PPC nativa.
La commercializzazione di Amiga 1000 nel 1985 presentò al pubblico anche la prima versione del suo sistema operativo: AmigaOS 1.0. Molte parti di AmigaOS 1.0 furono scritte con il linguaggio BCPL e già il sistema presentava preemptive multitasking, GUI a colori e la possibilità di avere per ogni programma in funzione uno schermo grafico indipendente, con risoluzione e numero di colori propri. Ognuno di questi schermi era trascinabile con il mouse, permettendo all'utente di visualizzare il lavoro che stavano compiendo gli altri programmi in "background" (ossia tecnicamente "non prioritari"), e, davano a qualsiasi spettatore, una visione di sicuro impatto, mostrando concretamente all'opera il concetto, altrimenti astratto di cosa fosse in realtà il multitasking preemptive di Amiga.
Con la versione 1.3 vennero introdotti inoltre AutoConfig, che sarà poi conosciuto solo in seguito sugli altri sistemi come Plug and play e il FastFileSystem.
La versione 2 accompagnava la seconda generazione di computer Amiga del 1990; subì una larga conversione di parti vitali in linguaggio assembly 68000 a partire dalla precedente versione. Questa seconda versione conteneva numerosi cambiamenti, i più visibili riguardavano l'interfaccia grafica che presentava un nuovo look pseudo-3D e dei nuovi caratteri di tipo vettoriale. Inoltre furono aggiunti: GadTools, ASL e "Basic Object-Oriented Programming System for Intuition". Fu inoltre aggiunto l'interprete del linguaggio REXX. Venne infine introdotto il supporto alle "Commodities" che estendono principalmente le funzionalità del gestore dell'input utente e la variante di Amiga Filesystem chiamata International.
Con la versione 3 di AmigaOS nel 1993 furono riscritte alcune parti in linguaggio C e furono introdotte molte novità sia tecniche sia concettuali. Graficamente la GUI di AmigaOS acquistò uno stile sempre più tridimensionale grazie ai sensibili miglioramenti apportati a GadTools ed ASL. Fecero il loro esordio tra le tante nuove tecnologie: Datatype (un sistema modulare espandibile che consente ai programmi che lo sfruttano l'accesso a numerosi tipi di file) e MultiView (un programma di sistema che attraverso l'uso dei Datatypes permette la visualizzazione di numerosi formati di file video e audio). Anche il modulo AmigaDOS subì numerose migliorie, ad esempio il filesystem vide il supporto per gli hard e soft link, nonché la gestione dei blocchi adibiti alla cache per le directory (DCFS). Venne infine migliorato il formato ipertestuale Amigaguide.
Il sistema rimaneva tuttavia legato pesantemente ai chip custom della piattaforma hardware Amiga. La mancanza della protezione della memoria rendeva il sistema operativo molto sensibile ad errori di programmazione: fino all'avvento della versione 3 del sistema operativo non era raro assistere a blocchi del sistema dovuti a errori di programmazione del Sistema Operativo o più frequentemente delle applicazioni che non programmate correttamente danneggiavano le strutture dati del sistema.
Dalla versione 4 pubblicata nel 2004 il sistema operativo è stato totalmente riscritto in linguaggio C, slegandolo non solo dalla vecchia architettura hardware Amiga ma anche dai processori 68k di Motorola. AmigaOS 4 presenta un nuovo kernel retrocompatibile (ExecSG) che implementa molte nuove tecnologie come memoria protetta, memoria virtuale, resource tracking, paginazione della memoria ecc. Ciascun modulo che compone AmigaOS 4 è stato riscritto e ciò ha permesso di introdurre tante novità da tempo ricercate dagli utenti Amiga come un AmigaDOS slegato dal codice TripOS, FastFileSystem2, una nuova Intuition completamente riconfigurabile dall'utente e molto altro.
Nel 2008 è uscito AmigaOS 4.1 (giunto negli anni fino all'Update 6, in seguito alla quale è stato integrato un sistema di aggiornamenti automatici). AmigaOS è adesso un sistema operativo per processori PowerPC e accompagna la nuova piattaforma hardware AmigaONE.
L'AmigaOS è composto principalmente da tre parti:
Vi sono tre interfacce principali che permettono l'interazione tra l'utente e AmigaOS:
Exec è il microkernel di AmigaOS. Esso gode di alcune peculiari caratteristiche che hanno reso le sue prestazioni più efficienti rispetto ad altre alternative. Exec ha il compito di gestire l'intero sistema comprese le risorse, i task, le porte messaggi e i semafori.
Exec, sino alla versione 3.1, risiedeva sotto forma di libreria all'interno di una ROM insieme agli altri moduli fondamentali di AmigaOS. Tale ROM veniva identificata come Kickstart. Con la versione del Kickstart è possibile identificare anche le versioni di Exec:
Nella versione 4 dell'AmigaOS, a cura di Hyperion, i sorgenti di Exec sono stati totalmente riscritti, comportando un salto generazionale del microkernel di questo sistema operativo: 'Exec Second Generation', in breve ExecSG, rappresenta la nuova versione del kernel di AmigaOS. In ExecSG vi sono cambiamenti sostanziali rispetto ad Exec, che comportano sia la modifica di alcuni aspetti importanti del kernel, sia l'implementazione di ulteriori funzionalità, in particolare:
Versioni messe in commercio:
AmigaDOS è uno dei moduli principali di AmigaOS e si occupa della memorizzazione dei dati su dispositivi come hard disk e floppy disk. Commissionato a MetaComCo da Commodore, AmigaDOS deriva principalmente dal Sistema Operativo TripOS scritto in BCPL ed è anche responsabile della gestione di alcuni task particolari che vengono identificati singolarmente con il nome di processo. I processi possono accedere ad alcune funzioni fornite dal modulo AmigaDOS, in particolare quelle legate all'I/O su memorie di massa, a loro volta interfacciate, a basso livello, con AmigaDOS per mezzo di un particolare processo, noto come Amiga FileSystem.
ARexx è l'interprete ufficiale AmigaOS del linguaggio REXX di IBM, accluso al sistema operativo a partire dalla versione 2.0, permettendo all'utente di realizzare script di uso generico.
La sua caratteristica più interessante, che a rende unico AmigaOS ed il relativo parco software, è la possibilità di pilotare qualsiasi software che integri una "porta ARexx" consentendo quindi l'automazione di taluni compiti (si pensi ad esempio alla conversione di un gruppo di immagini da GIF a PNG) e non solo: è possibile anche coordinare il lavoro di più software, svolgendo attività non previste dai loro stessi autori. Ciò di fatto consente di implementare funzionalità aggiuntive al software senza bisogno di modificarne il codice.
Nome dell'interfaccia grafica (GUI) realizzata inizialmente da Robert J. Mical. Pur essendo nata nel 1985, fu un'interfaccia grafica relativamente moderna basata su mouse, menù, finestre sovrapponibili, eventi e tutto quanto siamo abituati a vedere ancora in Windows, Linux e Macintosh e formulata per prima da Xerox. Il suo merito fu che a quei tempi (1985) l'interfaccia standard dei sistemi personal computer era ancora MS-DOS, basata su un'interfaccia grafica a carattere, ovvero soltanto sulla classica tastiera alfanumerica. Intuition comprende i sottomoduli Graphics, Layers, GadTools, ASL, BOOPSI/Reaction, Workbench. Dalla versione 4 di AmigaOS Intuition permette all'utente di cambiare ufficialmente (senza alcun programma di terze parti come avviene su altri sistemi operativi) qualsiasi aspetto dell'interfaccia grafica offrendo all'utente la possibilità di avere un ambiente di lavoro personalizzato e quasi mai uguale a quello di un altro utente.
Il Workbench ("banco di lavoro" in inglese) è il nome dato all'ambiente desktop disponibile su AmigaOS. Al momento della commercializzazione la defunta Commodore assegnò erroneamente il nome Workbench all'intero sistema operativo Amiga, per questo motivo fino alla versione 3.0 di AmigaOS il sistema veniva identificato universalmente come Workbench. Il Workbench è un programma di sistema, lanciato di solito all'avvio dell'AmigaOS, avente un'interfaccia utente di tipo grafico (GUI). Il Workbench utilizza simboli grafici, detti icone, con cui è possibile interagire con l'Amiga FileSystem, cioè il file system offerto da AmigaOS.
Tale rappresentazione iconica è ottenuta attraverso i file '.info'. Ciascun file, disco e cartella che si ritiene dover essere sempre visibile sul Workbench gode di un file ".info" personalizzato. Ciascun file contiene sia l'immagine grafica da associare all'elemento del filesystem, sia una serie di informazioni usate da Workbench per visualizzarlo. Relativamente ai file tipizzati, ossia quei file dei quali si conosce il formato, essi vengono visualizzati dal Workbench mediante icone predefinite per mezzo dell'applicazione di sistema DefIcons, il quale permette di associare i tipi di file non solo alle icone, ma anche agli applicativi che devono trattarli, grazie ad un database facilmente estensibile.
Le versioni del Workbench messe in commercio sono:
Introdotto con AmigaOS 3.9 ed esteso notevolmente su AmigaOS 4.0, AmiDock è una componente fondamentale della GUI del sistema operativo Amiga. AmiDock consente all'utente di creare a piacimento una o più barre grafiche (chiamate dock) contenenti file, cartelle, dischi e molto altro -come il Dock di macOS dal quale si differenzia per alcune interessanti funzionalità-. I dock di AmigaOS infatti possono:
AmigaOS a partire dalla versione 2.0 si dota di alcune interessanti componenti addizionali, e comodità varie che vengono messe "di serie" a disposizione dell'utente.
A partire dall'AmigaOS 2.0 è stato reso disponibile, tra gli altri servizi, un boot menù accessibile tenendo contemporaneamente premuti entrambi i tasti del mouse all'atto dell'accensione o al reset.
Il menù permette di fare il boot da qualsiasi dispositivo o disco rigido collegato al sistema, e, nelle versioni successive, anche di inibire il caricamento di alcune partizioni rispetto ad altre per nasconderle così al sistema. Amiga non ha limiti riguardo al numero di partizioni, il numero di unità disponibili è limitato soltanto dal tipo di interfaccia usata (IDE o SCSI). Più schede di espansione con bus IDE o SCSI possono essere però collegate contemporaneamente, aumentando il numero di unità disponibili e moltiplicando le possibilità di suddividerle in partizioni.
Dalla versione 3.0 dell'OS, oltre a scegliere da quale dispositivo (floppy o hard disk) fare il boot, e soprattutto da quale partizione, il bootmenu di Amiga permette di monitorare, con una propria procedura di check, le schede montate sul bus Zorro e di segnalare eventuali problemi: una delle caratteristiche più innovative di AutoConfig, poi ripreso come Plug and play in altri sistemi operativi (Windows 95). L'unica pecca del Bootmenu Amiga è che non è in grado di effettuare il boot di altri sistemi operativi alternativi disponibili anche per Amiga.
Infine il menù permette di cambiare anche la risoluzione dello schermo, senza dover intervenire a posteriori una volta caricato il sistema operativo. La cosa è utile nel caso fossero state impostate per errore modalità grafiche che potessero danneggiare il monitor o l'apparecchio televisivo al quale Amiga è stato collegato.
Mentre su altri sistemi operativi la procedura di installazione dei programmi è piuttosto laboriosa, confusa, non standardizzata e potenzialmente pericolosa (in quanto potrebbe sovrascrivere file di sistema) Amiga invece si è dotata, sin dalla versione 3.0 dell'OS, di un programma di installazione standard chiamato Installer, usato sia per i programmi da installare sulla macchina, sia per aggiornare lo stesso sistema operativo AmigaOS.
Installer gestisce le procedure di installazione sotto Amiga e ha alcune caratteristiche davvero interessanti. Completo di localizzazione (ossia della possibilità di usare la lingua madre dell'utente), permette anche di creare nuove directory (anche a mano) qualora il programma in fase di installazione ne faccia richiesta. Offre un comodo Help OnLine (Aiuto In Linea), presente in ogni livello della fase di installazione, in modo da seguire sempre passo-passo l'utente inesperto. Infine, con una caratteristica ancora ineguagliata in altri sistemi operativi, Amiga Installer permette addirittura di fare una installazione fittizia di prova per verificare in anticipo il buon fine dell'operazione, prima che l'utente si avventuri in un'installazione effettiva col rischio di trovarsi a possibili incompatibilità con il software già presente sul sistema.
Installer è in realtà un interprete di linguaggio LISP. Le procedure di installazione Amiga sono file formattati come listati di questo particolare linguaggio informatico.
InstallerNG è la nuova versione di Installer presente su AmigaOS dalla versione 4.x. Questa versione è caratterizzata da nuove caratteristiche tra le quali:
Petunia è il nome dell'emulatore task-based introdotto in AmigaOS a partire dal quarto aggiornamento della versione 4.0 PreRelease.
Petunia, basato sulla tecnica JIT risiede tra le componenti base di sistema sotto forma di libreria, viene utilizzato da AmigaOS per l'esecuzione di programmi compilati per 68k, in modo che questi ultimi abbiano una resa paragonabile a quella dei programmi compilati per PowerPC.
Più precisamente AmigaDOS, durante il boot, carica Petunia, il quale resta in attesa di eventuali chiamate 68k da parte di programmi. Nel momento in cui un programma 68k viene eseguito, Petunia controlla una speciale lista, la blacklist, la quale riporta i programmi che Petunia non deve eseguire. Se il programma non è riportato nella black list, allora Petunia intercetterà le sue chiamate e lo eseguirà secondo la tecnica JIT, altrimenti lascerà il compito di gestire tale programma all'emulatore integrato in ExecSG. Questo espediente permette di eseguire su AmigaOS i programmi non del tutto compatibili con Petunia -il quale è un emulatore che pone l'accento sulla velocità di esecuzione dei programmi 68k, piuttosto che sulla compatibilità di tutto il set di istruzioni della famiglia di processori 68k-, lasciando la loro esecuzione all'emulatore di ExecSG che, operando in modalità interpretativa, permette una migliore compatibilità, non solo con l'intero set di istruzioni dei processori 68k, ma anche con chiamate ad interrupt, in modo da offrire una compatibilità anche nei confronti di vecchi driver 68k.
La blacklist di Petunia, come da tradizione in AmigaOS, è totalmente gestibile e configurabile da parte dell'utente, il quale potrà impiegare lo strumento di preferenze "Compatibility" (risiedente in SYS:Prefs/) per aggiungere o rimuovere programmi, in modo da avere piena libertà decisionale sulla relativa esecuzione dei programmi 68k.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.