Apple DOS

Ajalugu

Otseselt ei olnud olemas sellist asja nagu Apple DOS 1 või 2. Need olid lihtsalt nummerdatud versioonid mis tehti arendamise käigus. Apple DOS 3.0, mis oli ümbernimetatu 2.8 jäi avaldamata, sest tal oli liiga palju vigu.
Apple DOS 3.1 tuli välja 1978. aasta juunis. See oli esimene disketipõhine operatsioonisüsteem, mis oli Apple'i arvutile tehtud. Hiljem lisandusid sellele ka versioonid, kus oli vigu parandatud. Kui seda esimest korda tutvustati, oli tal kaasas väga vähe dokumentatsiooni. Kuna disketiseadmete nõudlus oli nii suur, tegid Apple'i insenerid palju tööd, et nõudlust rahuldada ja seetõttu polnud neil aega korralikku kasutusjuhendit teha ja sellepärast said nad palju kaebusi.
Apple DOS 3.2 tuli välja 1979, et kajastada suuri muutusi arvuti käivitumismeetoditele, mis oli Apple II järglasele – Apple II Plusile sisse ehitatud. Originaalse Integer BASICu asemel oli nüüd uuem Applesoft II. Uuel tarkvaral oli ka automaatkäivitus, mis otsis automaatselt disketi kontrolleri ja käivitas süsteemi ning teenis endale sellega nime "Autostart ROM".
Apple DOS 3.3 tuli välja 1980. See parandas mitmeid funktsioone, mis olid olemas versioonil 3.2 ja samuti kaasnesid sellega suured salvestusruumi tõusud. Originaalis olid disketid disainitud nii, et nad suudaksid lugeda ja kirjutada 35 rada 13 sektoril. Iga sektor oli 256 baiti ja disketi suurus oli 113,75 kB ja kuna iga disketi kolmel esimesel rajal oli DOS ja kataloog võttis enda alla lisaks veel ühe raja, oli kasutajale vaba kõigest 100,75 kB salvestusruumi. Steve Wozniak aga leidis viisi, kuidas Apple'i diskettide mahtu suurendada. Ta muutis natuke kodeerimismeetodit, mida kasutati ja tulemuseks oli 16 võimalikku sektorit disketi kohta. See tähendas, et diskettide suurus oli nüüd 140 kB (124 kB, kui 4 rada DOS-i ja kataloogi jaoks maha arvata). Märkimisväärne asi selle uuenduse juures oli, et disketiseadet ei pidanud muutma, muutma pidi ainult ROM programmi Disk II kontrolleri kaardil. Versioon 3.3-ga oli kaasas ka kõvasti suurem kasutusjuhend.

Tehniline info

Apple DOS 3.1 disketid kasutasid infosalvestuseks 13 sektorit ja 35 rada. Iga sektor oli 256 baiti. 35 rada oli kasutusel disketi ühel poolel ja need said ligipääsu ainult ühele poolele. Disketti võis ka ümber keerata ja see tähendas, et ühe poole kohta oli 113,75 kB, millest tuli maha arvata umbes 10 kB DOS-i ja disketi kataloogi jaoks. See tähendas, et kasutaja programmide jaoks oli vaba umbes 100 kB. Hiljem suurenes sektorite arv disketi kohta 16 peale. Diskettide suurus oli nüüd 140 kB, millest kasutajale oli vaba umbes 124 kB.
Kui võrrelda Apple DOS-i praeguste operatsioonisüsteemidega, siis oli ta suhteliselt algeline. Esimene operatsioonisüsteemi kiht kandis nime RWTS (read/write track sector 'kirjutamis/lugemisraja sektor'). See koosnes alamfunktsioonidest radade otsimiseks (liigutas disketi "kätt" vajalikule rajale), sektorite lugemiseks (laadis sektori disketilt mälusse) ja kirjutamiseks (salvestas sektori mälust disketile) ning disketi vormindamiseks (tühjendas disketi ja lõi tühja kataloogi raja). Selle peale ehitati failihaldur (File Manager), mis suutis rakendada järgmisi funktsioone: avamine, sulgemine, lugemine, kirjutamine, kustutamine, lukustamine (näiteks kirjutamise takistamine), avamine (näiteks kirjutamise võimaldamine), ümbernimetamine, failide terviklikkuse kontrollimine. Lisaks oli veel kataloogifunktsioon, mis loetles disketil olevad failid ja init-funktsioon, mis vormindas disketi, et seda kasutada DOS-iga ja pani kõrvale käivitamisel kasutatavad programmid.
Järgmine kiht, mis asetses failihalduri peal, hoidis endas põhilisi DOS-i rutiine (Main DOS Routines). Need rutiinid olid ühendatud BASICuga ja vastutasid selle eest, et BASIC oleks disketiga liidestatud. See andis käske salvestamiseks (BSAVE), laadimiseks (BLOAD) ja binaarprogrammide laadimiseks ja jooksutamiseks (BRUN). SAVE, LOAD ja RUN olid mõeldud BASICu programmidele ja EXEC-käsk oli mõeldud selleks, et käitada tekstipõhiseid faile, mis koosnesid BASIC-u ja DOS-i käskudest. Oli 4 tüüpi faile, mida sai tuvastada tähega kataloogis.

Liigutatav tarkvara

Erinevalt tänapäevastest arvutitest ei jooksutanud Apple II arvutid tavaliselt korraga rohkem, kui ühte programmi, seetõttu polnud 8-bitistel programmidel vaja muretseda masinkoodi liigutamise pärast. Programmid kirjutati üldiselt nii, et nad leiaksid oma masinkoodi alati samast kohast mälust. Täielikult liigutatavat koodi oli raskem teha ja see oli ka keerulisem. 
Apple DOS pidi aga arvestama, et Apple II arvutitel võis olla mälu 16–48 kB. See tähendas, et DOS laadis ennast kõige kõrgemas võimalikus punktis, et alumised mälukohad oleksid vabad BASIC-u programmidele ja graafikale. Arvutites, kus oli mälu rohkem kui 48 kB, võttis DOS enda alla ala $9600 kuni $BFFF (kolm failipuhvrit + 10 kB tarkvara), aga suutis samuti laadida madalamas mälualas, kui vähem mälu oli saadaval. 
Vahemik $03D0 kuni $03FF andis programmidele võimaluse leida DOS-i, ükskõik kuhu ta mällu laaditud oli. Näiteks kui DOS-i haakuvus BASIC CLI-sse lakkas töötamast, sai DOS ennast taaskäivitada, kui ta kutsus välja asukoha $03D0, sealt on pärit ka traditsiooniline "3DOG" käsk, et pöörduda BASIC-ust tagasi System Monitori.

Integer BASIC ja Applesoft BASIC

Integer BASIC oli Apple I ja esimestel Apple II arvutitele mõeldud BASIC-u tõlkimiseks. Algselt oli see saadaval kassetil, hiljem oli Apple II arvutite ROM-i sees. See oli esimene BASIC-u versioon, mis tavakasutajatel oli. 
Steve Wozniak, kes töötas varem ATARI-ga "Breakouti" kallal, seadis endale eesmärgiks, et Apple II arvuti suudab selle mängu järgi teha kasutades ainult BASIC-ut. See tegi Apple II-st ühe esimesi arvuteid, mis kasutas värvigraafikat, kui nad said valmis programmi Little Brick Out. Peab veel märkima, et Wozniakil polnud tööriistu 6502 protsessori jaoks ja seepärast kirjutas ta koodi paberile ja hiljem sisestas selle käsitsi 4096 tükina arvutisse.
Enim välja toodud viga BASIC-u juures oli see, et tema muutujad oli 16-bitised täisarvud ja seega oli raske teha programme. 
Apple sai endale parema (kuid aeglasema) BASIC-u Microsofti käest natuke pärast seda, kui Apple II 1977. aastal välja tuli. Nad tegid mõned muudatused, panid sellele nimeks "Applesoft BASIC" ja lisasid selle Apple II Plusile, mis tuli välja 1979. Samuti oli Applesoft BASIC kaasas ka hilisemate mudelitega ja lõpuks tehti temaga palju rohkem programme kui Integer BASIC-uga.

DOS-i kadumine

Apple II ja DOS hakkasid ära vajuma pärast 1980. aastat, kui Apple keskendus Apple III arvutile ja SOS operatsioonisüsteemile. Kui Apple III hüljati firma poolt, tuli välja veel teine Apple DOS-i versioon, mis olid mõlemad numbriga 3.3, sest nad olid kõigest veaparandused.
Apple DOS suutis lugeda ainult 5,25-tolliseid diskette, mis olid Disk II seadmes, kuid ei suutnud lugeda muid asju nagu kõvakettad, virtuaalsed muutmälu seadmed ja 3,5-tollised disketid. DOS oli tehtud nii, et ühe seadme jaoks oli saadaval kõigest 400 kB ja see oli üks peamisi põhjuseid, miks Apple DOS-i hülgas 1983. aastal. Apple DOS-i asemele tuli nüüd ProDOS.
ProDOS suutis lugeda 5,25-tolliseid diskette, kuid lisandusid veel uued formaadid. ProDOS oli sobiv seadmetele, mis olid kuni 32 MB, see tähendas, et sellega sai kasutada 3,5-tolliseid diskette ja kõvakettaid. Kõik Apple II Plusist uuemad arvutid suudavad jooksutada nii DOS 3.3 kui ka ProDOS-i, kuigi Apple II Plus nõuab eraldi "Language Card" (eesti "Keelekaart") mälulaiendit, et ProDOS-i kasutada. ProDOS võimaldas ka kopeerida faile Apple DOS diskettidelt. 
Paljudel inimestel polnud siiski vaja uuendusi, mida ProDOS pakkus, ja Apple DOS või mõni tema kloon oli kasutuses veel pärast 1983. aastat. Apple keelas DOS 3.3 jagamise aastaid tagasi ära, kuid vaid firmal Syndicomm on olemas litsents, et DOS 3.3 müüa.