Apollo Guidance Computer

Apollo Guidance Computer (AGC) oli tietokone, jota käytettiin Apollo-ohjelman avaruusaluksissa. Tietokone hoiti aluksen ohjaukseen ja navigointiin liittyviä tehtäviä. AGC oli ensimmäinen moderni sulautettu tietokonejärjestelmä. AGC:n suunnitteli Massachusetts Institute of Technology vuonna 1962 ja laitteet valmisti Raytheon. AGC oli varhainen merkittävä käyttökohde integroidulle piirille.

Kaikilla Kuussa käyneillä Apollo-lennoilla (paitsi Apollo 8:ssa, jossa ei ollut kuumodulia) avaruusaluksen komento- ja kuumoduulissa oli omat AGC-tietokoneet.

AGC käytti integroituja piirejä. RAM-muisti oli ferriittirengastyyppinen ja ROM-muisti rope-core-tyyppinen. RAM-muistia oli 2 kilosanaa, ja ROM-muistia 36 kilosanaa; sanan pituus oli 16 bittiä. Kellokide värähteli 2,048 MHz:n taajuudella, joka jaettiin tai skaalattiin tarpeen mukaan eri käyttötarkoituksiin; pääasiallinen sisäinen kellotaajuus oli 1,024 MHz.

AGC:n käyttöliittymänä toimi DSKY (display and keyboard, näyttö ja näppäimistö), jossa oli numero- ja merkkivalonäyttö, sekä komento- ja numeronäppäimistö. AGC:lle annettiin komentoja "verbin" (V) ja "substantiivin" (N) yhdistelminä, jotka ilmaistiin kahden numeron yhdistelminä. Verbi ilmaisi komennon, ja substantiivi komennon lisämääreen.

ROM-muistiin tallennettu yksinkertainen käyttöjärjestelmä kykeni ajamaan kahdeksaa prosessia yhtä aikaa. Ajettavat ohjelmat pystyttiin priorisoimaan.

 Ohjelmisto 
pienoiskuva|oikea|Margaret Hamilton tulostetun ohjelmakoodin vieressä
Ohjelmiston kehittämisestä oli vastuussa Margaret Hamilton.

Ohjelmisto oli edelläjäkävijä huippuluotettavien ohjelmistojen suunnittelulle. Ohjelmistossa käytettyjä konsepteja olivat muun muassa asynkroninen ohjelmointi () ja tärkeysjärjestyksessä ajoittaminen ().

Hamilton on saanut muun muassa NASAn Exceptional Space Act Award -palkinnon tunnustuksena työstään.

Ohjelmisto kykeni toipumaan itsestään tunnetussa tilanteessa, jossa tietokone sai laskeutumisen lähestyessä ylimääräistä sitä kuormittavaa dataa.
Astronauttien tarkistuslistassa oli virhe, jonka vuoksi tutkalaitteiston kytkin oli väärässä tilassa.

 Lähteet 

 Aiheesta muualla 

 Computers On Board The Apollo Spacecraft 
 Original Apollo 11 Guidance Computer (AGC) lähdekoodit GitHub-palvelussa 
 Virtual AGC 

Luokka:Apollo-ohjelma
Luokka:Sulautetut järjestelmät