SymbOS - SymbOS

SymbOS
Skærmbillede af SymbOS -skrivebordet på Amstrad CPC
Skærmbillede af SymbOS -skrivebordet på Amstrad CPC
Udvikler SymbiosiS
Skrevet i Monteringssprog ( Zilog Z80 )
Arbejdstilstand Nuværende
Kildemodel Freeware
Første udgivelse 1. maj 2006 ; 15 år siden ( 2006-05-01 )
Seneste udgivelse 3.0 / 30. august 2017 ; 3 år siden ( 2017-08-30 )
Tilgængelig i engelsk
Platforme Amstrad CPC , MSX , Amstrad PCW , Enterprise 64/128
Kernel type Mikrokernel
Standard
brugergrænseflade
Grafisk brugerflade
Officiel hjemmeside www .symbos .de

SYmbiosis Multitasking Based Operating System ( SymbOS ) er et multitasking -operativsystem til Zilog Z80 -baserede 8 -bit computersystemer .

I modsætning til tidlige 8-bit operativsystemer er det baseret på et mikrokernel , som giver præventiv og prioriteret multitasking og administrerer random access memory (RAM) med en størrelse på op til 1024  KB . SymbOS indeholder en Microsoft Windows som grafiske brugergrænseflade (GUI), understøtter harddiske med en kapacitet på op til 128 GB og kan allerede være startet på en ikke-ekspanderet Amstrad CPC -6128, en 128K- MSX 2 og en Amstrad PCW .

Den 30. august 2017 er den tilgængelig for Amstrad CPC- serien af ​​computere, alle MSX- modeller, der starter fra MSX2- standarden, MSX med V9990 grafikchip, alle Amstrad PCW- modeller, CPC-TREX, C-ONE og Enterprise 64/128 computere .

Motivation og begrundelse

SymbOS blev oprindeligt startet som et eksperiment for at finde ud af, i hvilket omfang det er muligt at implementere et multitasking-operativsystem med et vindues-GUI på en 8-bit computer fra 1985. GEOS bidrog til motivationen, men strukturen og funktionerne i SymbOS aren ' t ligner det system. Udgivelsen i 2006 viste, at et sådant "mini windows" -system er muligt på en dengang 20-årig hjemmecomputer med kun kvantitative begrænsninger. SymbOS er et af de største retro computing -softwareprojekter i de seneste år. Et af målene med projektet er at tillade, at disse gamle maskiner kan bruges som en moderne pc ved hjælp af hardwareudvidelser.

Selvom det kun er en 8-bit CPU, kan Z80 køre et præventivt multitasking- operativsystem . Funktioner såsom hukommelsesbeskyttelse , som Z80 mangler, er ikke afgørende i sådan et OS. For eksempel mangler AmigaOS også hukommelsesbeskyttelse. Den MP / M OS bevist, at multitasking på Z80 CPU var muligt. Alligevel var det generelt ikke tilgængeligt for hjemmecomputere.

Selvom MOS Technology 6502 ikke kan flytte stakkemarkøren , kan Z80 frit flytte den til enhver position i hukommelsen, hvilket gør det lettere at implementere præventiv multitasking . Eksistensen af ​​et alternativt register sæt fremskynder kontekstskift mellem opgaver dramatisk. Begrænsningen af ​​Z80 -systemet til et 64 KB -adresserum kan løses med bankskift . På denne måde kan computere som Amstrad CPC og PCW , MSX , Enterprise eller SAM Coupé få adgang til hundredvis eller tusinder af kilobytes hukommelse.

Design

SymbOS indeholder en mikrokerne, som kan udføre opgavestyring, hukommelsesstyring og kommunikation mellem processer .

Opgavehåndtering

Til opgavestyring blev en kombination af præventiv og kooperativ multitasking valgt, hvilket gør forskellige opgaveprioriteter mulige. Præventiv betyder, at opgaver afbrydes efter et bestemt tidsrum af operativsystemet for at dele CPU -tiden med andre opgaver. Kooperativt betyder, at en opgave stopper med at bruge CPU -tid i sig selv. Det gør den, hvis den er færdig med sit nuværende job eller venter på en bestemt begivenhed. På grund af denne kombination er det muligt at tildele prioriteter. Opgaver med lav prioritet får kun CPU -tid, hvis alle opgaver med højere prioriteter ikke derefter fungerer.

Hukommelse og bankforvaltning

Hukommelsesadministration deler hele RAM'en op i små 256 byte blokke, som kan tildeles dynamisk. Applikationer kører altid i en sekundær 64 KB RAM -bank, hvor ingen hukommelsesplads optages af operativsystemet eller videohukommelsen. Det gør det muligt at reservere op til 63 KB i et stykke.

Bankadministration sikrer, at systemet kan administrere hukommelse med en størrelse på op til en megabyte, selvom Z80 CPU'en kun har en 16-bit adressebus. Det gør gennemsigtig adgang til hukommelse og funktioner placeret i andre 64 KB banker mulig.

Interprocess kommunikation

Kommunikation mellem forskellige opgaver og operativsystemet foregår normalt ikke via opkald , men sker via beskeder . Dette er nødvendigt i et multitasking -miljø for at undgå organisationsproblemer med stakken, globale variabler og delte systemressourcer. SymbOS -kernen understøtter synkron og asynkron IPC.

Styring af filsystem

SymbOS understøtter filsystemerne CP/M , AMSDOS og File Allocation Table (FAT) 12-16-32 på alle platforme. Med den sidste kan SymbOS adressere masselagringsenheder med en kapacitet på op til 128 GB. Muligheden for at administrere filer med en størrelse på op til 2 GB er også ualmindelig for et 8-bit system. På grund af FAT -understøttelsen er dataudveksling med andre computere ret let, da de fleste 32 og 64 bit operativsystemer understøtter de tre FAT -filsystemer.

Grænseflade

Image
Skærmbillede af MSX -versionen af ​​SymbOS

Den grafiske brugergrænseflade (GUI) i SymbOS fungerer fuldt ud objektorienteret . Udseendet efterligner Microsoft Windows . Den indeholder den velkendte proceslinje med uret og "start" -menuen og kan åbne op til 32 vinduer, der kan flyttes, ændres i størrelse og rulles. Hele systemet er skrevet i optimeret samlingssprog , hvilket betyder, at GUI kører lige så hurtigt som værtsmaskinen understøtter.

Indholdet i et vindue er defineret med "kontroller", der er primitive GUI -elementer, såsom skyder, afkrydsningsfelter, tekstlinjer, knapper eller grafik. Baggrunden eller usynlige områder af et vindue behøver ikke at blive gemt i en separat bitmap -buffer. Hvis et område skal gendannes på displayet, tegnes dets indhold i stedet. Dette gør SymbOS GUI meget mere hukommelsesvenlig i forhold til de fleste andre 8-bit GUI'er.

Ansøgninger

Der findes flere standardprogrammer til SymbOS, der er designet til at ligne lignende software, der er tilgængelig på andre operativsystemer. Eksempler inkluderer Notesblok , SymCommander (ligner Norton Commander ), SymShell ( cmd.exe ), SymZilla ( Mozilla Firefox ), SymPlay ( QuickTime ), SymAmp ( Winamp ) og Minesweeper .

Kommandoer

Følgende liste over kommandoer understøttes af SymShell.

Udvikling og frigivelse

SymbOS blev oprindeligt udviklet til Amstrad CPC. Dens modulære struktur, med streng adskillelse af generelle og hardwarekomponenter, gør portation til andre Z80-baserede systemer forholdsvis let.

De MSX -computere starter med MSX2 standarden er blevet støttet siden sommeren 2006. Amstrad PCW porten har været tilgængelig siden august 2007. Versioner for Enterprise 128 , den SAM Coupé og sådanne kloner af ZX Spectrum som ATM-turbo 2+ og ZX-Evolution /BaseConf er også mulige, da de opfylder kravene til SymbOS.

Ved at bevare en grundbetingelse for et operativsystem, den strenge adskillelse af hardware og applikationssoftware med et mellemlag, kører SymbOS-applikationer platformuafhængigt på hver computer og behøver ikke at blive tilpasset til forskellige systemer, med den indlysende undtagelse af applikationer der får direkte adgang til særlig hardware.

Se også

Referencer

eksterne links