Bogdan Miś: To już pół wieku, czyli jubileusz polskich komputerów
Wakacje 1958 roku były ładne. Pogoda sympatyczna. Ciepło niemęczące. Miałem mnóstwo do przemyślenia: skończył się czwarty rok studiów, przede mną stał problem wyboru tematu magisterium i miejsca pracy, a na dodatek zaczynały się bezsensownie komplikować sprawy osobiste; coś się psuło z moją dziewczyną i bardzo mi to dokuczało…
Zaaferowany tym wszystkim nie miałem zielonego pojęcia, że kilku moich – niewiele w sumie starszych, tyle że już dumnie piszących przed nazwiskiem trzy magiczne litery „mgr” – kolegów z wydziału matematyki pracuje od miesięcy pod kierunkiem młodego docenta, Leona Łukaszewicza, z niezwykłą intensywnością nad czymś, co miało w jakiejś mierze niebawem zmienić oblicze Polski, wprowadzając ją w „prawdziwy” XX wiek. Nie chwalili się tym; podejrzewam zresztą, że „kto trzeba” poprosił ich o zachowanie dyskrecji. To „coś” miało także wkrótce zasadniczo zmienić i moje życie…
Tym czymś był pierwszy polski „prawdziwy” komputer. Przesławny historyczny XYZ.
Właściwie nie był to – w pełni znaczenia tych słów - ani pierwszy komputer, ani prawdziwy. Nie był „prawdziwy” w tym sensie, że nie był przewidziany do produkcji seryjnej. Nie był nawet prototypem; miał status zaledwie modelu laboratoryjnego: wszystko w nim można było jeszcze zmienić, przekonstruować, udoskonalić… Był zatem jedyny w swoim rodzaju, absolutnie wyjątkowy. I przez to właśnie całkowicie cudowny. Po prawej stronie na zdjęciu - to on właśnie.
Nie był też w pełni pierwszy. Poprzedzają go w czasie dwie inne historyczne konstrukcje o nazwach EMAL i EMAL-2 (choć ten ostatni został oddany do użytku już nieco po uruchomieniu XYZ…), stworzone przez zespoły inżyniera Romualda Marczyńskiego. EMAL, budowany w wielkiej tajemnicy w latach 1953-55, był wzorowany dość dokładnie na słynnym angielskim komputerze EDSAC; miał tę tylko wadę, że nie dał się nijak uruchomić (złośliwcy mówili: EMAL liczy niemal…). Po prostu, ten sprzęt nie działał. Nie był to zresztą komputer w pełnym tego słowa znaczeniu, bowiem nie wykorzystywał wdrożonej już w świecie w pełni technologii lamp elektronowych, tylko tzw. przerzutniki lampowe. Słowem – EMAL już w momencie konstruowania był obiektem muzealnym. Ale pamięć – jak wiadomo, jeden z podstawowych elementów każdego komputera do dziś – miał ekstra. Marczyński wymyślił ją bezbłędnie. Wrócimy do tego.
EMAL-2 (budowany w latach 1957-58, oddany oficjalnie do użytku niedługo po XYZ, ale testowo uruchamiany nieco wcześniej) już działał. Liczył, choć jego szybkość działania – 150 operacji na sekundę – nawet wówczas nie powalała na kolana. Można by zatem od biedy powiedzieć, że to on był pierwszym polskim komputerem… gdyby nie to, że była to maszyna bezlampowa, oparta na diodowo-ferrytowych układach przełączających; nie spełniająca zatem encyklopedycznej definicji komputera. Mówiąc po ludzku, była to po prostu raczej trochę bardziej skomplikowana centrala telefoniczna, niż komputer; tyle, że umiała liczyć. W dodatku oparta była na zupełnie zwariowanym pomyśle matematycznym: na przedziwnym i nienaturalnym systemie arytmetyki „uzupełnień do 2”; efektywnym i łatwym technologicznie do wdrożenia, ale – jak się niebawem okazało – stanowiącym zupełnie boczną linię w ewolucji maszyn matematycznych. Co nie zmienia faktu, że przez jakiś czas wydawało się, że właśnie ta arytmetyka będzie miała przed sobą piękną przyszłość. Ale było to mniemanie błędne.
Wróćmy jednak do pamięci roboczej (dziś określamy ją skrótem RAM) EMAL-a, którą z powodzeniem zastosowano w XYZ. Otóż wykorzystywała ona pomysł taki, że impulsy elektryczne, zamienione na ultradźwięki i przepuszczone przez rurę, wypełnioną rtęcią, ulegają opóźnieniu – a więc zapamiętaniu. Jak dowiodła historia, nie był to pomysł najszczęśliwszy – od dawna nie istnieją już żadne wykorzystujące go maszyny – ale tani i prosty konstrukcyjnie. Fizycznie pamięć maszyny XYZ była to zatem całkiem spora metalowa szafa, w której znajdowało się kilkadziesiąt wypełnionych rtęcią długich rur. Uprzedzając nieco wydarzenia powiem, że gdy w jakieś dwa lata po uruchomieniu XYZ-a pokazywałem go – jako rzecznik Biura Obliczeń i Programów – wycieczkom szkolnym, to złośliwi koledzy uprzedzali co ładniejsze panienki, że to, co pan magister pokaże im za tym dużym metalowym pudłem, to wcale nie musi być rura pamięci…
W ogóle byliśmy w zespole, obsługującym XYZ-a, nieco figlarni. Brodaty Krzyś Moszyński, jeden z absolutnie pierwszych polskich programistów (dziś od dawna full professor), spytany kiedyś przez panie ze Związku Literatów Polskich, które przyszły obejrzeć „pierwszy polski mózg elektronowy” co takiego robi, odparł z wyraźną niechęcią (bo okropnie nie lubił, jak mu przeszkadzano) wstyd powiedzieć, macierz odwracam, co wzbudziło u owych pań niejaką panikę, obserwujących zaś wydarzenie matematyków przeturlało po podłodze ze śmiechu…
Innym razem podłączony sprytnie do maszyny i skrzętnie ukryty w jej zakamarkach magnetofon po naciśnięciu przez pewnego działacza państwowego (na szczęście, niezbyt wysokiego szczebla) przycisku START na konsoli sterowniczej, wygłosił głębokim basem kolegi Wiśniewskiego tekst mniej więcej taki „a weź się i odp…”, co wprawdzie wzbudziło niejaką konsternację, ale nie zakończyło się żadnym „wpadunkiem”.
Wróćmy jednak do chronologii.
Późną jesienią 1958 roku (w listopadzie tegoż roku rzecz opisały „Problemy”) XYZ ruszył. Owo cudo - zbudowane przez zespół wspomnianego wyżej, 35-letniego wówczas doc. dr inż. Leona Łukaszewicza (ukłony, Panie Profesorze…) – było pewną modyfikacją i uproszczeniem amerykańskiego komputera IBM 701, od którego różniło się m. in. konstrukcją pamięci RAM, a także tym, że użyte przez Amerykanów diody próżniowe zastąpiono nowocześniejszymi germanowymi. Elektronika maszyny była wzorowana na dynamicznych przerzutnikach radzieckiej maszyny M-20, wymagających dwa razy mniej lamp niż IBM 701. Komputer posługiwał się w liczeniu układem dwójkowym.
W nowym roku akademickim (1958/59) uruchomiono na wydziale pierwsze seminarium z programowania i teorii maszyn matematycznych. Oczywiście, zapisałem się – maszyny liczące to było moje hobby od lat. Mieliśmy w toku studiów obowiązkową pracownię obliczeniową, którą prawie wszyscy traktowali jak nieszczęście: obliczanie wartości wielomianu schematem Hornera czy tablicowanie sinusa za pomocą arytmometru, choćby nawet elektrycznego, rzeczywiście nie jest pewno najbardziej pasjonującym zajęciem świata. Ale mnie fascynowało i szczerze zazdrościłem kolegom, którzy do obliczeń używali wielopozycyjnego niemieckiego Rheinmetalla; mnie przypadł w udziale, niestety, ruski „kręciołek”, niezbyt odbiegający w użyciu od XVII-wiecznego arytmometru Leibniza… Ale go też lubiłem.
Czegoś się na tym seminarium nauczyłem (ale, prawdę mówiąc, bardzo niewiele; uczenie się programowania bez dostępu do maszyny to trochę jakby trenowanie pływania na brzegu…). Nie pamiętam, kto je prowadził – chyba Anton Mazurkiewicz (uszanowanie, Panie Profesorze...) z zespołu XYZ-a, ale może Jurek Swianiewicz? Było nas kilkoro: Baśka Pałłasz, Hanka Sawicka, Andrzej Jacek Blikle (tak, tak – ten sam, dzisiejszy profesor i magnat cukierniczy); w sumie – nie więcej niż 10 osób. Gdybym pomyślał, że uczestniczę w historii – to były pierwsze w dziejach Uniwersytetu Warszawskiego zajęcia poświęcone komputerom, my zaś mieliśmy wkrótce stworzyć pierwszy w Polsce profesjonalny zespół programistów – pewno bym notował wszystkie szczegóły. Ale trzeba mieć jakiś chyba specjalny zmysł, by wyczuć powiew wiatru historii; ja go nie miałem, udowodniłem to wielokrotnie. Nie mam go do dziś.
Nie pamiętam też, kiedy zobaczyłem XYZ po raz pierwszy. Musiało to być zaraz po uruchomieniu, jesienią 1958 roku, w ramach owego seminarium; nie pomnę jednak dokładnej daty. Pamiętam jednak widok; dla dzisiejszego młodego człowieka zapewne równie egzotyczny, jak dla mnie wówczas – tyle, że z innych powodów. Tego młodego człowieka pewno by rozśmieszył; mnie dosłownie wtarł w ziemię.
XYZ był bowiem gigantyczny. Zajmował ogromną salę na drugim piętrze Instytutu Matematyki przy ul. Śniadeckich 8 w Warszawie; dokładnie taką samą, jak mieszcząca się piętro niżej duża sala posiedzeń, w której zbierało się Polskie Towarzystwo Matematyczne. Wchodząc do tej sali skrajnie po lewej stronie widziało się dziwne urządzenie, wielkości sporej lodówki, które niemiłosiernie hałasowało, pochłaniając lub wypluwając z siebie stosy kart perforowanych; to było wejście i wyjście – tędy się wprowadzało dane do obliczeń i tu się odbierało wyniki. Po prawej stronie na zdjęciu - konsola sterująca i dwie pierwsze szafy z panelami XYZ.
Po skosie w lewo była konsola sterująca: pokryty tworzywem stolik dołączony do sporej szafy. Nad jego wąskim blatem zielono jarzyłyo się malutkie okrągłe dwa ekrany oscyloskopów; pod nimi widniały rzędy kluczy przełączeniowych, którymi można było wprowadzać ręcznie różne ustawienia. Nie było żadnej klawiatury, ani żadnego monitora graficznego; owe oscyloskopy odwzorowywały po prostu zawartość pamięci maszyny: jasny punkt oznaczał zajęty w odpowiednim miejscu przez jedynkę bit, ciemny – zero na tej pozycji.
Obok konsoli sterującej – w prawo od niej – znajdowały się stojaki z panelami elektronicznymi, trzy czy cztery. Maszyna była tak zbudowana, że w wypadku awarii jakiegoś panelu – były ich dziesiątki – można go było po prostu wyjąć za stojaka i włożyć dobry. Bardzo to ułatwiało utrzymanie sprawności działania komputera, ale średni czas jego pracy bezawaryjnej wynosił… 50 minut. Potem coś się nieuchronnie psuło, była przerwa, biegł z panelem technik… i zaczynaliśmy od nowa.
Na prawo od wejścia stała ogromna stalowa szafa. Mieściła pamięć; w szafie były te rury rtęciowe, o których już pisałem. W roku 1960 XYZ dostał dodatkowo magnetyczną pamięć bębnową. To już był luksus i niesamowita wygoda.
Kilka – egzotycznie i zabawnie dziś wyglądających – danych technicznych. Szybkość działania maszyny wynosiła 650-4500 dodawań i 350-500 mnożeń na sekundę. Maszyna była taktowana zegarem ok. 680 kHz. Pamięć RAM (owe rury rtęciowe) miała pojemność 1024 słów długości 18 bitów każde (32 rury po 576 bitów, czyli – w dzisiejszych oznaczeniach – ledwie 18 kb!); średni czas dostępu: 0,4 ms. Pamięć bębnowa miała pojemność ok. 300 tys. bitów (64 ścieżki po 128 słów 36-bitowych) i średni czas dostępu: 20 ms.
W sumie użyto do budowy XYZ 400 lamp elektronowych i 2000 diod. Projekt logiczny i elektronikę tworzyli: Antoni Mazurkiewicz, Zdzisław Pawlak, Jerzy Fiett, Zygmunt Sawicki, Jerzy Dańda. Oprogramowanie napisali Antoni Mazurkiewicz, Jan Borowiec, Krzysztof Moszyński, Jerzy Swianiewicz, Andrzej Wiśniewski; i te nazwiska trzeba zanotować jako nazwiska pierwszych polskich programistów. Dalej Ryszard Zieliński, Andrzej Birkholc, Zofia Zjawin, Hanka Dąbrowska, Konrad Fiałkowski, Józef Winkowski, Barbara Pałłasz… Niżej podpisany wszedł w skład zespołu od lutego 1959 roku. To była moja pierwsza w życiu praca etatowa.
Fajnie się tam pracowało. Instytucja miała niezmiernie dostojną i długą nazwę: Biuro Obliczeń i Programów Zakładu Produkcji Doświadczalnej Maszyn Matematycznych Zakładu Aparatów Matematycznych Polskiej Akademii Nauk. Średnia wieku zatrudnionych – liczona wraz kierownictwem – wynosiła poniżej 25 lat; informatyka była od zawsze domeną ludzi młodych.
I niepokornych. Oraz lekko zwariowanych i ciut bezczelnych.
W pewnym momencie Biuro otrzymało nowego szefa; „cywila”. Nie miał nic wspólnego ani z matematyką, ani z komputerami; był typowym „spadochroniarzem”, jak to się wówczas mówiło, „postawionym na funkcję” przez instancję partyjną. Jedno z pierwszych jego zarządzeń dotyczyło wzmocnienia dyscypliny pracy: nakazywało tłumaczyć się ze spóźnień i wprowadzało tzw. książkę wyjść, do której mieliśmy się wpisywać w razie potrzeby, podając powód opuszczenia miejsca pracy.
W kilka dni później na tablicy ogłoszeń Biura ukazało się oświadczenie treści następującej: Ja, niżej podpisany dr […], potwierdzam, że przeciętnie spóźniam się do pracy ok. 2 godzin. Przyczyną jest to, że bardzo nie lubię rano wstawać…
Zaraz potem pewien inny młody doktor matematyki zakomunikował z kolei publicznie, że spóźnia się, bowiem śpi ze świeżo poślubioną żoną w jednym łóżku, zajmując miejsce od ściany – i kiedy wstaje, teoretycznie jako pierwszy, to z natury rzeczy musi się na pewien czas zatrzymać…
A następnego dnia po wyłożeniu książki wyjść pojawiło się w niej dokładnie tyle wpisów, ilu pracowników liczył BOP. Wszystkie brzmiały identycznie: godz. 12.00 – wychodzę na kawę i na dziwki.
W kolejnym dniu książki już nie było. I już nikt do końca działania Biura nie spytał nikogo o powody spóźnienia. Wręcz przeciwnie: szef z głębokim przekonaniem wyjaśniał odwiedzającym BOP notablom, że przecież nie można, towarzysze, od naukowca wymagać inwencji od ósmej do szesnastej, on myśli nieraz i wtedy, kiedy śpi; a obsługa komputera, to nie latanie z taczkami, i to, towarzysze, trzeba rozumieć…
XYZ liczył dość długo. Dziś mogę już zdradzić (wówczas było to najściślej tajne), że robiliśmy m. in. symulacje sterowania artylerią przeciwlotniczą i przymierzaliśmy się do identyfikacji odcisków palców; to ostatnie okazało się zresztą niesamowicie trudne i było jednym z tych nielicznych tematów, które w BOP „poległy”. Ale statystyczne oceny wyników doświadczeń rolniczych czy obliczenia statyki konstrukcji budowlanych wychodziły nam znakomicie…
Organizacja pracy była taka: zlecenie trafiało do „problemisty”, który analizował je logicznie i próbował najpierw sformułować zadanie w języku matematyki, aby potem znaleźć (lub wymyśleć) odpowiedni algorytm postępowania. Potem algorytm ten przekazywany był programistom, którzy opisywali go w języku, zrozumiałym dla komputera. Stworzony przez nich program (po długotrwałym i wielokrotnym „odpluskwianiu”) trafiał do operatora maszyny, który uruchamiał i nadzorował proces liczenia. Wyniki tego procesu trafiały do zleceniodawcy.
Tu prosi się o kilka słów w kwestii programowania. Dzisiejsi programiści w ogóle nie mają pojęcia, na czym to wówczas polegało. Używają skomplikowanych (i dość komfortowych w użyciu) języków „wysokiego poziomu”, różnych ułatwiających życie narzędzi wizualnych… Najwyższej spośród nich klasy fachowcy piszą wstawki w tzw. assemblerze, czyli bardzo złożonym języku, w którym programuje się pojedyncze działania komputera.
Myśmy byli szczęśliwi, gdy ówczesny odpowiednik assemblera został udostępniony do użycia. Bo na początku trzeba było pisać programy „w języku maszyny”; czyli kodując wszystko bezpośrednio jako... niekończące się ciągi zer i jedynek.
I – wiecie co? – nie jest to takie przeraźliwie trudne. To się nie tylko da szybko – i ze stosunkowo małą liczbą błędów – robić, ale da się robić… bez użycia papieru i długopisu: najlepsi pisali programy od razu przy użyciu perforatora kart dziurkowanych, robiąc w nich z błyskawiczną szybkością niezbędne dziurki. No i wyobraźcie sobie teraz napisanie w ten sposób programu, zawierającego kilkadziesiąt tysięcy linijek kodu…
Niektórzy robili to „z czapy” bezbłędnie. A wszyscy umieli to potem odczytać, biorąc do ręki niewielkie prostokąciki podziurkowanego kartonu i patrząc na nie pod światło…
Pół roku treningu – i wchodziło to w krew, stawało się umiejętnością taką samą, jak czytanie gazety. Nic trudnego.
Tu dygresja. Assembler maszyny XYZ był w miarę łatwy w użyciu – choć pewno dzisiejsza młodzież byłaby innego zdania - i zapamiętaniu (po pół wieku pamiętam na przykład doskonale, że program trzeba było kończyć sekwencją znaków MRHDS 0063, co oznaczało koniec pliku, dodawanie zaś kodowało się symbolem DK lub DD…). Za najwyższą „szkołę jazdy” uważało się natomiast pisanie programów do skonstruowanej nieco później na Politechnice maszyny UMC-1. Jej język, to był autentyczny koszmar. Nie bez podstaw mawiało się wtedy, że kto umie napisać i uruchomić program na „uemcetkę”, ten umie po prostu wszystko…
Przyszedł jednak w końcu czas, gdy maszyna zakończyła pracę. Rozebrano ją. Niektóre fragmenty (w całości – jak to w Polsce – XYZ nie zachował się) są dziś w Muzeum Techniki w Pałacu Kultury i Nauki w Warszawie.
Nieco ponad dwa lata później zadebiutowałem jako popularyzator nauki w miesięczniku „Problemy”; oczywiście, artykułem o maszynie XYZ. Od tej pory – aż do dziś – komputery pozostają moją pasją.
XYZ miał następców: maszyny ZAM-2 (komputer ogólnego przeznaczenia) i ZAM-41 (do przetwarzania danych; to już była maszyna następnej generacji). Politechnika Warszawska (zespół Antoniego Kilińskiego) opracowała także wspomniane wyżej maszyny matematyczne z serii UMC-1 i UMC-10, które były również produkowane seryjnie we wrocławskim ELWRO; ale to już zupełnie inna historia…
Tagi:
O nas...
Do redakcji można pisać
na adres studioopinii@gmail.com
Cytat, który obiecujemy brać pod rozwagę:
Panie, zachowaj mnie od zgubnego nawyku mniemania, że muszę coś powiedzieć na każdy temat i przy każdej okazji.
Św. Tomasz z Akwinu
Komunikat: Redakcja informuje uprzejmie, że w żaden sposób nie cenzuruje merytorycznie komentarzy do artykułów. Jedyna ingerencja może polegać wyłącznie na ewentualnym usunięciu słów powszechnie uznawanych za obelżywe lub nieprzyzwoite oraz "mowy nienawiści". System zarządzania witryną (niezależny od nas) jest jednakże skonstruowany w taki sposób, że niektóre wpisy pojawiają się niekiedy z opóźnieniem, czasami - z nieznanych nam przyczyn - znacznym. Choć nie ma w tym naszego działania - przepraszamy zirytowanych. Jednocześnie informujemy, że większość nowych tekstów ukazuje sią najpierw na górze strony głównej, w dziale OSTATNIO NADESŁANE, by nieco później - na ogół następnego dnia - trafić do właściwego działu merytorycznego. Komentarze wpisane do OSTATNIO NADESŁANYCH nie są ze względów technicznych przenoszone w nowe miejsce.
| POLECAMY | |
|
Dołączył do nas Jan Winiecki. Szukajcie jego felietonów w prawej szpalcie. Sławek Popowski: kapitalny esej o Gorbaczowie; arcyciekawe! Stefan Bratkowski zastanawia się: czy możemy zbudować solidny ustrój Na stronie KULTURA uruchamiamy rubrykę PRÓBY LITERACKIE. Czytajcie Mikołaja Fajfera. W witrynie pojawiło się Ilustrowane Radio Niny Nowakowskiej. Obejrzyj, posłuchaj! Chcesz zostać dziennikarzem? Nie wiesz, jak pisać? Poczytaj rady fachowca... Ważne przemyślenia George'a Friedmanna: prognoza na nasze stulecie Zajrzyj do działu CYWILIZACJA. Jest co poczytać i obejrzeć! Obejrzyj naszą telewizję (tak, tak - uruchomiliśmy własną). A w niej gościnnie EuroparTV! Nie wiesz co to? Ważny tekst dr Andrzeja Ehrlicha o (nie)sprawności zarządzania w Polsce. Są przykłady! Dr Ehrlich pisze także o pracy tłumacza
|
|
|
PONADTO... |
|
|
Stefan Bratkowski otworzył nowy cykl błyskotliwych porad dla tych, którzy nie wiedzą, że nic się nie da zrobić |
|
|
Jacek Pałasiński podejmuje gorący temat o gazie |
|
|
Ernest Skalski o Gorbaczowie
|
|
|
Sławomir Popowski |
|
|
Aleksander J. Wieczorkowski demoluje Telekomunikację Polską oraz Netię |
|


