H Ιστορία του λειτουργικού συστήματος CP/M
Το CP/M (Control Program for Microcomputers) ήταν ένα λειτουργικό σύστημα που προορίζονταν για μικροϋπολογιστές βασισμένους στους επεξεργαστές Intel 8080 και Zilog Z80 και δημιουργήθηκε ανάμεσα στο 1973 και 1974 από τον Gary Kildall. Ήταν το κυρίαρχο λειτουργικό σύστημα για πολλούς μικροϋπολογιστές (Microcomputers) από το 1975 έως και τα πρώτα χρόνια της δεκαετίας του 80.
Η Αρχή
Το 1972 ο Gary Kildall δίδασκε πληροφορική στην Ναυτική Μεταπτυχιακή Σχολή του Monterey. 'Οταν είδε μια διαφήμιση για το πρώτο μικροεπεξεργαστή της Intel, τον 4μπιτο 4004, σε έναν πίνακα ανακοινώσεων του κολεγίου ο Gary αποφάσισε να αγοράσει ένα και άρχισε να γράφει προγράμματα για αυτόν. Λίγο μετά προσέγγισε την Intel και άρχισε να εργάζεται part-time (τις ελεύθερες ώρες του από το Κολέγιο) ως σύμβουλος για το (τότε πολύ μικρό) τμήμα μικροεπεξεργαστών. Στη συνέχεια η Intel του πρότεινε τη σύνταξη μίας υψηλού επιπέδου γλώσσας για τα μοντέλα επεξεργαστών 8008 και 8080. Έτσι ο Gary δημιούργησε τη γλώσσα PL/M (Programming Language for Microcomputers), το όνομα της οποία ήταν λογοπαίγνιο του ονόματος της γλώσσας ΙΒΜ PL/I και ως μερική πληρωμή για το έργο του η Intel του έδωσε ένα σύστημα ανάπτυξης Intellec-8 για δική του χρήση.
Αυτό το σύστημα ανάπτυξης σταδιακά αναβαθμίστηκε απο την Intel για να τρέχει με τον επεξεργαστή 8080, έναν αναγνώστη χαρτοταινίας, και μια οθόνη. Το 1973 σε αντάλλαγμα για την συνεχιζόμενη εργασία του ο Gary έλαβε μια μονάδα δισκέτας της Shugart Associates και ζήτησε από έναν φίλο του, τον John Torode, να δημιουργήσει έναν ελεγκτή ώστε να μπορέσει να συνδέσει την μονάδα δισκέτας με το σύστημα ανάπτυξης του. Η πρσθήκη του δίσκου αποτέλεσε τεράστια βελτίωση σε σχέση με χαρτοταινία και μετέτρεψε το σύστημα σε πραγματικό μικροϋπολογιστή, χρειαζόταν όμως λογισμικό για να γίνει χρήση του δίσκου. Ο Gary χρησιμοποιείησε την γλώσσα PL/M για να γράψει αυτό το λογισμικό, το πρώτο λειτουργικό σύστημα για μικροεπεξεργαστές, το οποίο ονόμασε CP/M (Control Program for Microcomputers).
Εμπορική Eπιτυχία
Ο Gary ολοκλήρωσε τη σύνταξη του CP/M, το 1974 και το πρόσφερε στην Intel για $20.000. Η Intel δήλωσε ότι δεν ενδιαφέρονταν για το συγκεκριμένο λειτουργικό σύστημα, αν και αγοράσε την PL/M. Μετά την απόλυσή του από το Πολεμικό Ναυτικό το 1976 ο Gary άρχισε να εργάζεται με πλήρη απασχόληση ως σύμβουλος και μαζί με την σύζυγό του, Dorothy McEwen, ξεκίνησαν μια νέα εταιρεία που ονομάστηκε Intergalactic Digital Research (αργότερα μετονομάστηκε σε Digital Research Inc.) ώστε να αρχίσουν οι πωλήσεις του CP/M.
Οι συγκυρίες δεν θα μπορούσαν να ήταν καλύτερες για την εμφάνιση του CP/M στην αγορά μιας και στα μέσα της δεκαετίας του 1970 άρχισαν να εμφανίζονται οι πρώτοι μικροϋπολογιστές. Πολλοί κατασκευαστές ξεκίνησαν την διανομή των μηχανημάτων τους σε μορφή κιτ για χομπίστες, αν και κάποιοι υπολογιστές μπορούσαν να αγοραστούν συναρμολογημένοι. Κανείς από τους κατασκευαστές δεν ήθελε να γράψει το λογισμικό τους από το μηδέν οπότε είτε προσλάμβαναν προγραμματιστές για να το κάνουν είτε αγόραζαν έτοιμα πακέτα. Το CP/M ήταν ένα από αυτά!
Το 1976 δύο από τους μεγαλύτερους κατασκευαστές κιτ, η MITS και η IMSAI, εφοδίαζαν τις μηχανές τους με μονάδες δισκέτας. Η IMSAI αγόρασε μια άδεια από την Digital Research για την εγκατάσταση του CP/M σε όλα τα συστήματα δισκέτας και ξαφνικά το CP/M άρχιζε να είναι ένας υπολογίσιμος παίχτης στην αγορά. Αρκετοί άλλοι κατασκευαστές ήθελαν να εγκαταστήσουν το CP/M, έτσι ο Gary ξαναέγραψε το σύστημα ώστε να είναι εύκολα μεταφέρσιμο σε νέο υλικό (portable). Πρόσθεσε ένα ξεχωριστό module που έκανε όλη την βασικές λειτουργίες I/O, το Basic Input / Output System ή το BIOS, το οποίο θα μπορούσε να ξαναγραφτεί για ένα νέο μηχάνημα, ενώ το υπόλοιπο του συστήματος παρέμεινε άθικτο. Πρόσθεσε, επίσης, ένα πρόγραμμα επεξεργασίας, έναν assembler, έναν debugger, καθώς και διάφορες εφαρμογές ώστε να καταστήσει ένα πλήρες σύστημα ανάπτυξης.
Κατά τη διάρκεια της δεκαετίας του 1970 η Digital Research παρήγαγε δύο σημαντικές εκδόσεις του CP/M. Την πρώτη έκδοση (CP/M 1.4) η οποία δεν χρησιμοποιούνταν ευρέως και την δεύτερη έκδοση (CP/M 2.2) η οποία αποτέλεσε στάνταρντ στην βιομηχανία των μικροϋπολογιστών εκείνα τα χρόνια. Αν αγοράζατε ένα μηχάνημα στη δεκαετία του 1970 το οποίο βασίζονταν στους επεξεργαστές 8080 ή Z80, τότε σίγουρα το μηχάνημα θα ήταν εφοδιασμένο με το CP/M 2.2. Η Digital Research πούλησε πάνω από 250.000 αντίτυπα του λειτουργικού της συστήματος.
Λόγω του ότι ήταν τόσο δημοφιλής πάρα πολλοί προγραμματιστές έγραψαν εργαλεία και βοηθητικά προγράμματα (καθώς και μερικά παιχνίδια, φυσικά) για το CP/M και όλα αυτά τα προγράμματα θα μπορούσαν να τρέξουν σε οποιοδήποτε μηχάνημα έτρεχε το λειτουργικό σύστημα. Έτσι το CP/M μετατράπηκε σε ένα στάνταρντ λειτουργικό σύστημα που μπορούσε να τρέξει σε μη τυποποιημένες μηχανές με μια μεγάλη βάση χρηστών και εφαρμογών. Το CP/M βρισκόταν στο απόγειο της δόξας του.
Η παρακμή
Το 1980 η IBM αναζήτούσε ένα λειτουργικό σύστημα για τον υπο ανάπτυξη προσωπικό υπολογιστή της (IBM PC). Έως τα μέσα της χρονιάς, πραγματοποιούνταν συνομιλίες με τη Microsoft σχετικά με τον σχεδιασμό της νέας μηχανής και το λογισμικό που θα συμπεριλάμβανε, ιδιαιτέρως την BASIC την οποίο επρόκειτο να παράσχει η Microsoft. Η IBM επικοινώνησε επίσης με τον Gary Kildall και πρόσφερε 200 χιλιάδες δολάρια στην εταιρεία του για την άδεια χρήσης του CP/M-86 (μια νέα έκδοση του λειτουργικού συστήματος που η Digital Research ανέπτυσσε ώστε να τρέχει στον επεξεργαστή Intel 8086). Για διάφορους λόγους ο Gary Kildall απέρυψε την πρόταση της IBM και έτσι αυτή στράφηκε στη Microsoft και μέχρι το Σεπτέμβριο του ιδίου έτους η συμφωνία να εργαστούν από κοινού είχε οριστικοποιηθεί. Η Microsoft επρόκειτο να παρέχει τόσο τη BASIC, κάτι που είχε κάνει πολλές φορές στο παρελθόν για άλλες εταιρείες, καθώς και το λειτουργικό σύστημα, ένα αντικείμενο με το οποίο δεν είχε προγούμενη εμπειρία.
Στις αρχές του έτους η Seattle Computer Products που παρήγαγε ένα κιτ υπολογιστή βασισμένο στον μικροεπεξεργαστή 8086 προσέλαβε τον Tim Patterson για να δημιουργήσει ένα λειτουργικό σύστημα το οποίο θα μπορούσε να τρέξει στον υπολογιστή τους. Η παραγωγή του CP/M-86 από την Digital Research καθυστερούσε και έτσι η Seattle Computer Products (φοβούμενη ότι αυτό θα είχε αρνητικές επιπτώσεις στις πωλήσεις του υπολογιστή τους) ανέθεσε στον Tim να γράψει ένα σύστημα με την εμφάνιση και την αίσθηση του CP/M για τη νέα μηχανή και το ονόμασε Quick and Dirty OS, QDOS. Η Seattle Computer Products ξεκίνησε τη διακίνηση του QDOS τον Αύγουστο και το έδειξε στη Microsoft τον Σεπτέμβριο, όταν η Microsoft τροποποίησε την BASIC για το μηχάνημα. Έτσι η Microsoft βρέθηκε με ένα λειτουργικό σύστημα ακριβώς τη στιγμή που το χρειαζόταν. Τον Οκτώβριο ο Paul Allen της Microsoft ήρθε σε επαφή με την Seattle Computer Products και για μόλις 50 χιλιάδες δολάρια αγόρασε τα δικαιώματα για την πώληση του QDOS, χωρίς φυσικά να αποκαλύψει ότι επρόκειτο να πουληθεί στην IBM.
Η Microsoft προσέλαβε τον Tim Patterson και του ανέθεσε να μετατρέψει το QDOS ώστε να μπορεί να τρέξει στο νέο μηχάνημα της ΙΒΜ. Έπεισε ακόμη και την IBM να της επιτρέψει την πώληση αντιγράφων του λειτουργικού συστήματος ξεχωριστά από τον υπολογιστή. Έτσι γεννήθηκαν το PC-DOS το οποίο άνηκε στην IBM και το MS-DOS, το οποίο άνηκε στην Microsoft. Τελικά η Digital Research δημιούργησε το CP/M-86 για το IBM PC το 1982 που τελικά μετατράοηκε σε DR-DOS το 1988. Αυτός είναι και ο λόγος που υπήρξαν τόσες πολλές παραλλαγές του DOS (PC-DOS, MS-DOS, και DR-DOS) και φυσικά όλα προέρχονταν από το CP/M.
Δυστυχώς για τον CP/M ήταν ήδη πολύ αργά μιας και η αγορά προσωπικών υπολογιστών μετατοπίστηκε από τους ανεξάρτητους κατασκευαστές μικροϋπολογιστών (home-micros) σε προσωπικούς υπολογιστές συμβατούς με την αρχιτεκτονική του IBM PC και φυσικά το λειτουργικό σύστημα που κυριάρχησε ήταν το MS DOS. Τελικά η Digital Research αγοράστηκε από τη Novell, το 1991, και στη συνέχεια η Novell πούλησε τα δικαιώματα για το λογισμικό στην Καλντέρα, το 1997.
Πηγές: A Short History of CP/M, Wikipedia