MIKADOS

Fra DDHFwiki
Spring til navigation Spring til søgning

MIKADOS operativsystemet var udviklet af Dansk Data Elektronik (DDE) fra midten af halvfjerdserne til deres ID-7000 og SPC/1 mikrodatamater. Det var et flerbrugersystem med op til otte samtidige brugere. MIKADOS kører på Intel 8080 og 8085 mikroprocessorerne, og for SPC/1 var det muligt at køre CP/M som et brugerprogram hvis maskinen havde et 8537 CP/M hukommelseskort. Brugerne ville derved få den oplevelse at de brugte CP/M sammen med andre personer på samme maskine.

MIK

Kernen i systemet stammer fra et projekt forfattet af Bodil Schrøder og udgivet af Datalogisk Institut, Københavns Universitet som Teknisk rapport 76/1. MIK - et korutineorienteret styresystem til en mikrodatamat. Rapporten analyserer principperne bag korutiner og parallelle processer, behandler de underliggende problemer i parallel programmering og gennemgår fire ældre lignende systemer. MIK er designet som et system baseret på korutiner, hvormed menes at det kørende program selv vælger hvornår det vil lade et andet program få noget kørselstid. Drivprogrammer for eksterne enheder får dog lov til at afbryde kørende programmer. Der er også en systemklokke, som afbryder CPUen 50 gange i sekundet, men dens eneste opgave er at opdatere køen af ventende programmer.

MIK blev udviklet med en Intel 8080 emulator, som var skrevet i AlgolRC4000. Selve MIK kernen er skrevet i assembler. Kildekoden for både MIK og emulatoren er med i rapporten.

MIK-systemet fik en meget bred anvendelse, da det blev brugt som basis/inspiration for kernen i styresystemet til apparater og små systemer hos adskillige firmaer i den danske elektronikindustri i det følgende årti. Det hang bl.a sammen med at rapporten blev benyttet som undervisningsmateriale på Datalogisk Institut og DTH.

DDE brugte MIK som grundlag for et operativsystem til ID-7000 hvis installeret uden baggrundslager (ikke usædvanligt for en industriel datamat). For også at kunne understøtte disketter lagde DDE en overbygning på, de kaldte DOS (Disk Operating System). Kombinationen blev til MIKADOS (med et 'A' imellem af hensyn til en nemmere udtale).

MIKADOS kommandoer

PLINI Formaterer en disk - både harddisk og diskette. PL står for 'PladeLager'. KATLG Viser diskens katalog.
PKOPI Kopiering af en disk. FCOPY Kopiering af én eller flere filer fra én disk til en anden.
KOMPR Genindvinder diskplads der er brugt af slettede filer (komprimer). RENAME Ændrer navn på en fil.
FPURG Sletter filer (file purge) OPR0FIL Opretter en "nulfil".
MONITOR Læs og udfør kommandoer i en tekstfil. PROM Skriv data til en programérbar ROM.
BRO Send en besked til en anden terminal på systemet (broadcast). SUBMIT Udføre et program med I/O til en anden terminal
GENSTART Generér et start-program, dvs. det første program der køres når maskinen tændes. START Bruges til at sætte systemets dato og tid.

Applikationsprogrammer

Følgende applikationsprogrammer var til rådighed: Teksteditor, Assembler, Pascal og COMAL:

Teksteditor
Et linieorienteret redigeringsprogram, der foruden grundlæggende redigeringskommandoer indeholder faciliteter for søgning efter bestemte tegnmønstre og erstatning af bestemte tegnmønstre med andre.
Assembler
Til oversættelse af programmer skrevet i symbolsk maskinsprog fandtes en relokerende assembler med begrænsede makro-faciliteter.
Pascal
Pascal oversætteren var en modificeret udgave af UCSD Pascal oversætteren, der igen er baseret på professor Niklaus Wirths originale Pascal oversætter.
COMAL
Dette var en portering af ID-COMAL — en udgave af COMAL udviklet ved Instituttet for Datateknik (ID), Danmarks Tekniske Højskole (DTH) under ledelse af Tom Østerby i de sene 1970'ere.

Hukommelse

En 8080 CPU kan adressere 64 KB RAM. Den residente del af MIKADOS bruger de første 16 KB. De resterende 48 KB er til rådighed for brugeren. Hvis der er mere end én bruger, så laves bank-switching når systemet skifter til at eksekvere den næste process.

Filorganisering

Filerne i MIKADOS var organiseret i logiske diske, hvilket svarede til en diskette, eller en partition på en harddisk. På hver (logiske) disk var der et område til filkataloget og et område til filerne. Størrelsen på en fil var beskrevet i sektorer på 256 bytes.

En fil kunne identificeres med et filnavn, en filtypekode og en disk-id.

Filnavn: Maximum 8 tegn
Filtypekode: Ét alfanumerisk tegn, som brugeren selv kunne vælge
Disk-id: P1, P2, P3 osv.

Mere information