Amiga OS

Amiga OS

AmigaOS 3.9 desktop
Udvikler Commodore International (1.0-3.1)
Haage & Partner (3.5-3.9)
Hyperion Entertainment (3.1.4-3.2.1, 4.0-4.1)
OS familie Amiga
Første udgave 23. juli 1985
nyeste version AmigaOS 4.1 Final Edition (PPC) opdatering 2
AmigaOS 3.2.1 (68K)  (
12. januar 2021 ( PPC )
21. december 2021 ( 68K ))
Seneste testversion
Understøttede platforme Motorola 680x0 og PowerPC
Kernel type atypisk mikrokerne
Licens Proprietære
Stat udviklingen fortsætter
Tidligere TRIPOS
Næste AROS
Internet side amigaos.net
 Mediefiler på Wikimedia Commons

AmigaOS  er et operativsystem til computere fra Amiga -familien , som har en atypisk mikrokerne . Det klassiske AmigaOS betragtes normalt som en kombination af to komponenter: Kickstart og Workbench. Kickstart giver en abstraktion fra Amigas unikke hardware og inkluderer: en forebyggende multitasking-planlægger (Exec), et diskoperativsystem (AmigaDOS) og GUI-biblioteker (Intuition). Workbench er en grafisk brugergrænseflade og er normalt repræsenteret af skrivebordet med samme navn eller en anden filhåndtering.

Oversigt

AmigaOS er baseret på delt biblioteksteknologi (filer med filtypenavnet .library ), hvilket gør det modulopbygget og kan udvides. Biblioteker er samlinger af funktioner, inklusive dem, der sørger for, at selve operativsystemet fungerer.

I denne henseende ligner AmigaOS-bibliotekerne biblioteksteknologierne i andre operativsystemer , men de har også egenskaberne adskillelighed og relaterbarhed (løsningen har sine fordele og ulemper).

Oprindeligt blev det antaget, at det eneste bibliotek, der har en hårdkodet adresse i hukommelsen og ikke kan opdateres af brugeren, er exec.library på adresse 4 . Efterfølgende førte tredjemands udvikling af Amiga -hardwaren og Commodore Corporations konkurs til fremkomsten af ​​løsninger ( acceleratorer og emulatorer ), der gør det muligt at flytte og opdatere exec.library (den såkaldte "skyggemekanisme"). godt. Dette bibliotek er kernen i AmigaOS.

AmigaOS- drivere (filer med filtypenavnet .device ) er også biblioteker med funktioner, der håndterer perifere og Amiga-enhedsspecifikke opkald og har en standard forespørgselsgrænseflade. Der er også det AmigaOS-specifikke koncept for en " handler " ( eng.  handler ) - en driver, der har et højere abstraktionsniveau. Handlere giver kontrol over allokeringen af ​​Amiga-ressourcer og er processer , der kører, når AmigaOS starter.

En af de vigtigste AmigaOS-handlere er filsystem- behandleren . AmigaOS kan bruge ethvert filsystem, som en handler er skrevet til. Denne funktion bruges i CrossDOS  - et program til udveksling af filer, for eksempel med FAT - og dets analoger. Til AmigaOS er der handlere til alle de mest almindelige filsystemer, såvel som nogle eksotiske. Følgende filsystemhandlere er mest populære blandt brugere: OFS , FFS , FFS2 , PFS , PFS2 , SFS .

Som regel videregiver handlere til DOS navnet på den enhed, der er knyttet til dem, men der er undtagelser. For eksempel giver Speak-handleren (svarende til SPEAK:-enheden) dig mulighed for at styre en software-talesynthesizer (svarende til OS/2 Warp - implementeringen og senere Windows NT -implementering ) og er et eksempel på en ikke-perifer service.

AmigaOS skelner mellem store og små bogstaver, hvor enhedsnavnet er indtastet (det er sædvanligt at bruge store bogstaver), og enhedsidentifikatoren er kolontegn (:) efter enhedsnavnet. Efter tyktarmen kan der følge yderligere information til handleren, som angiver objektet og kontrolmetoden. For en filsystemhandler er dette normalt information om stien til filen. For andre behandlere kan dette være en indikation af I/O-strømmen (f.eks. accepterer SER:-enheden, der er forbundet til den serielle port, data om bithastighed, start/stop-bit osv.).

Filsystemer bruger deres serienumre i systemet i deres enhedsnavne. For eksempel er DF0: -enheden som standard knyttet til det første drev i systemet, og DH0:  er knyttet til den første partition på harddisken.

Derudover kan enhedsbehandlere kommunikere med hinanden på ubestemt tid. I dette tilfælde kan stien til enheden være ret "vikling". Enhedsvolumenetiketter betragtes også som enheder. Hvis f.eks. disketten i drevet DF0: har en Workbench-volumenetiket, så kan brugeren få adgang til den som en Workbench: LUN .

Hvis brugeren ønsker at få adgang til fillinjen i Foo-mappen på arbejdsdrevet i DF0: -drevet , kan han skrive det sådan:

DF0:Foo/Bar

eller sådan her:

Arbejde: Foo/Bar

Disse notationsformer er dog ikke helt analoge. Sidstnævnte form bruges, når systemet allerede ved, at disketten med navnet "Work" ikke er en hvilken som helst diskette i DF0: -drevet . Derfor, hvis vi forsøger at indsætte en kopi af vores diskette, men med en anden volumetiket, i det samme drev DF0: og refererer til det som Work:Foo/Bar, vil systemet opdage en fejl og vise en meddelelse:

Indsæt venligst volumen "Work" i et hvilket som helst drev

AmigaOS-applikationer har ofte brug for at få adgang til en fil uden at kende dens placering (inklusive enhedsnavnet og volumenetiketten): de kender kun dens type, om filen er et bibliotek, dokumentation, lokalisering af programmeddelelser osv. Dette spørgsmål afgøres på niveau standard logiske enheder forbundet med filer af visse typer. Søgningen efter den tilsvarende fil foretages først og fremmest i disse enheder. Som standard accepterer AmigaOS følgende logiske enheder:

Komponenter af AmigaOS

Det klassiske AmigaOS betragtes normalt som en kombination af to komponenter: Kickstart og Workbench. Før AmigaOS 3.5 blev de betragtet som uadskillelige og afhængige af hinanden.

Kickstart (i version V0 til V42) antog brugen af ​​visse versioner af Workbench. For eksempel på en Amiga 500 , der kører Kickstart V36, kan Workbench 1.3 køre, men Workbench 3.1 kan for eksempel ikke indlæses korrekt. Den eneste undtagelse fra denne regel er Workbench 2.1, som kan downloades på Amigas, der kører den tidligere Kickstart V37. De seneste versioner af Workbench - 3.5 og 3.9 - bruger Kickstart V40 til indledende opstart, hvorefter den opdateres til V42 (eller V44) i et særligt tildelt og beskyttet hukommelsesområde (ROM-erstatningsfunktion til acceleratorer).

Kickstart

Kickstart  er navnet på den systemsoftware , der starter Amiga op for første gang . På Amiga 1000 (den første model udgivet) startede Kickstart fra en 3,5″ disk og var 256 KB i størrelse. I senere modeller blev Kickstart flyttet til skrivebeskyttet lagring , og dens størrelse voksede til 512 KB. Alle versioner af Kickstart er bagudkompatible , på trods af adskillige ændringer til den klassiske Amigas chipsæt med hver ny model.

Ud over koden, der er ansvarlig for den første download af Workbench, indeholder Kickstart også en betydelig del af selve AmigaOS. Denne del kaldes Amiga ROM-kernen og inkluderer intuition (biblioteker, der giver en GUI ), Exec (en mikrokerne, der implementerer forebyggende multitasking ) og AmigaDOS (biblioteker, der giver diskhåndtering). Sidstnævnte komponent er baseret på TRIPOS , porteret specifikt til Amiga af MetaComCo , og skrevet på BCPL -sproget (som betragtes som "progenitor" til C -sproget ).

Nylige versioner af Kickstart indeholder drivere til IDE- og SCSI -controllere, en PCMCIA -port og forskellige Amiga-ydre enheder.

Ved hjælp af tredjepartssoftware er det muligt at erstatte Kickstart, placeret i Amiga ROM'en , med en anden version af Kickstart, placeret i et særligt dedikeret og beskyttet område med RAM. For eksempel kan Kickstart V34 bruges af ejeren af ​​en computer med Kickstart V37 til at køre ældre spil mere korrekt. Programmer, der udfører denne substitution, kaldes "softkickers" (Softkickers). Der er også hardware Kickstart-switche, der giver dig mulighed for at bruge en computer, der ser ud til at have to chipsæt - forældede og almindelige. Der er således mange midler til dynamisk ROM-erstatning.

Workbench

Workbench er den grafiske standardskal til AmigaOS. Navnet på skallen er en metafor for udtrykket "desktop" (bogstaveligt talt - "arbejdsbænk"), så analogien blev videreført: mapper er afbildet som skrivebordsskuffer, eksekverbare filer er værktøjer, data er projekter, og resten af GUI  er alle mulige enheder. De fleste AmigaOS-applikationer bruger pop op-menuer, der traditionelt begynder med ordet Projekt ("Projekt") og ikke Fil ("Fil"), som på andre platforme. Strengt taget refererer udtrykket Workbench kun til AmigaOS-filhåndteringen, selvom det ofte bruges til at henvise til hele den del af den, der er placeret uden for ROM'en (dvs. uden for Kickstart).

Grænsefladen på Workbench ligner Mac OS Finder : den bruger også hovedmenulinjen øverst på skærmen. I modsætning til standard Macintosh -musen , som har en enkelt knap, har den klassiske Amigas standardmus to knapper. Holder du den højre knap nede, åbnes en pop-up-menu, når du slipper den, vælges en indstilling. Venstre museknap bruges til at styre vinduer, der er åbne på skrivebordet (flytte, minimere, lukke, fremhæve osv.). Senere blev der tilføjet understøttelse af en mus med flere knapper og et hjul.

Exec

Exec (ExegSG siden AmigaOS 4) er multitasking- mikrokernen i AmigaOS. Exec leverer funktionalitet til multitasking , hukommelsesallokering, afbrydelseshåndtering og dynamisk delt bibliotekshåndtering . Det fungerer som en planlægger for de opgaver, der kører på systemet, og giver foretrukken multitasking med planlægningsprioriteter i det grafiske miljø . Exec giver også adgang til andre biblioteker og kommunikation på højt niveau mellem processer via meddelelsesoverførsel. Andre sammenlignelige mikrokerner har haft ydeevneproblemer på grund af behovet for at kopiere meddelelser mellem adresseområder . Da Amiga kun har ét adresseområde , er Exec et ret effektivt værktøj til at sende beskeder på systemet.

Amiga DOS

AmigaDOS leverer systemdelen af ​​AmigaOS -operativsystemet . Dette inkluderer filsystemet , fil- og mappestyring, kommandolinjegrænseflade , filomdirigering, konsolvinduer og så videre. Systemgrænsefladen er rig på funktioner, herunder kommandoomdirigering, effektiv meddelelsesoverførsel, scripting med en primitiv programmeringsskabelon og et system af globale og lokale variabler .

I den første generation af AmigaOS var AmigaDOS baseret på TRIPOS , som blev skrevet i BCPL -programmeringssproget . Interoperabilitet med andre sprog viste sig at være en vanskelig opgave og førte nogle gange til fejl, i forbindelse med hvilke TRIPOS -porten blev anset for at være ikke særlig effektiv.

I anden generation af AmigaOS blev AmigaDOS omskrevet til C -programmeringssproget og Assembler , mens BCPL- kompatibiliteten blev bevaret . Det inkluderede det komplette første generationsprogram og en del af programmet fra tredje batch af AmigaDOS Resource Project (ARP), som allerede havde fundet erstatninger for mange af BCPL -softwareværktøjerne og -grænseflader.

Efterfølgende leverede ARP også en af ​​de første standardiserede Amiga-filanmodere, der introducerede Amiga -arbejdsbordet til at bruge flere UNIX -stil skabelon (format) funktioner i kommandolinjeindstillinger. Andre innovationer var betydelige forbedringer i rækken af ​​filformater implementeret af systemet som OS -objekter , hvilket gjorde det muligt kun at indlæse visse oplysninger i hukommelsen én gang, gemme dem i hukommelsen og væsentligt reducere systemets opstartstid til efterfølgende brug.

AmigaOS 4.0 droppede BCPL -arven helt som en del af DOS , og fra AmigaOS 4.1 blev den fuldstændig omskrevet til fuldt ud at understøtte 64-bit-arkitekturen .

Det siger sig selv, at der ofte bruges forskellige udvidelser i AmigaOS, men de er ikke obligatoriske, og de håndteres ikke på en særlig måde af DOS , som i øjeblikket kun refererer til mapper og filer på systemet. Eksekverbare programmer implementeres ved hjælp af det, der er kendt som et magisk tal eller datasignatur .

ARexx

AmigaOS indeholder understøttelse af det REXX -fortolkede programmeringssprog ( ARExx  er den officielle forkortelse for Amiga Rexx ). Denne understøttelse "trænger bogstaveligt talt igennem" alle dele af operativsystemet og giver dig mulighed for at: skrive OS -kontrolscripts ( svarende til bash i GNU / Linux ), administrere applikationer (senere analog - VBA -integration i Microsoft Office ) og også udveksle meddelelser mellem applikationer , der understøtter ARexx - porte (analog - D-Bus ).

Programmer kan åbne ARexx -porte og lytte efter tekstbeskeder fra andre programmer eller OS. Disse meddelelser kan fortolkes, som om brugeren brugte GUI'en eller kommandolinjen til direkte at styre applikationen. For eksempel kan et ARExx -program (almindelig tekstfil) starte en e-mail-klient, gemme modtagne e-mails, ringe til programmet for at behandle dem og derefter ringe til en ekstern tekstfremviser for at vise dem. På denne måde tillader ARExx en applikation at styre en anden ved at skylle data gennem hukommelsen, i stedet for at oprette mange små filer og lade diskoperationerne styre dem på brugerens skuldre.

Versioner

AmigaOS 1.0 - 3.0 (oprindeligt kaldet Amiga Workbench ) blev skabt af Commodore SG Corporation

AmigaOS 3.1 blev skabt af ESCOM , som også relancerede produktionen af ​​den klassiske Amiga i Europa og USA . Den nye version blev oprettet baseret på kilderne modtaget fra Commodore SG

AmigaOS 3.5-3.9 blev skabt af Amiga Inc. , ejer af Amiga-varemærket i 2004 . Den nye version blev skrevet fra bunden i C ved hjælp af reverse engineering .

AmigaOS 3.1.x blev skabt af Hyperion Entertainment baseret på kilder solgt af Amiga Inc.

AmigaOS 3.2.x blev skabt af Hyperion Entertainment baseret på kilder solgt af Amiga Inc.

AmigaOS 4.0 - 4.1 blev skabt af Hyperion Entertainment [3] med aktiv assistance fra ACube Systems SRL, som bidrog med en væsentlig del til udviklingen af ​​systemet og gjorde systemet virkelig populært på grund af dets avancerede og komfortable grafiske interface og en bred vifte af ansøgninger.

Se også

Noter

  1. https://blog.hyperion-entertainment.com/amigaos-4-1-update-6-released/
  2. 1 2 AmigaOS 3.1.4(.1) Release Notes og Locale Extras tilgængelig - 2020.
  3. Hyperion Underholdning . Hentet 7. juli 2015. Arkiveret fra originalen 7. juli 2015.
  4. Hyperion Underholdning . Hentet 12. april 2006. Arkiveret fra originalen 22. august 2010.

Links