Showing posts with label IBM 360. Show all posts
Showing posts with label IBM 360. Show all posts

Saturday, June 3, 2023

Eu și limbajele de asamblare

Eu sunt un fel de arheologie a informaticii. Am început să programez în cod mașină pe calculatorul CIFA 101 Economist. Am continuat să programez în COPCODER pe calculatorul NEAC 1240 și la venirea calculatorului IBM 360 am lucrat în limbajul de asamblare al acestui calculator, numit ASSEMBLER. După aceea, la sosirea în ASE a calculatorului FELIX C256 am făcut programe în limbajul ASSIRIS. La apariția calculatoarelor personale, am lucrat în limbajul ASM.
Cine știe să programeze în limbaj de asamblare înțelege cum se alocă toate resursele unui calculator și are explicații rezonabile la tot ce se întâmplă pe durata rezolvării oricărei probleme, căci înțelege cum stau lucrurile la nivelul celor mai mici detalii.
Acum se vorbește de Inteligența Artificială. Se știe că aceasta nu aduce noi resurse, noi mecanisme de alocare a resurselor. De aceea, este necesar să se cunoască limbaje de asamblare, căci numai cunoașterea acestor limbaje va permite noi descoperiri în zona definirii de noi structuri de date, de modele alocări de memorie și de regăsire de informație, căci una este să lucrezi brut pe cuvinte și cu totul altfel se pune problema de a lucra pe șiruri de biți. Inclusiv, cine vrea să descopere noi instrucțiuni de prelucrare din limbajul de asamblare, o va face doar dacă știe acele limbaje, designul lor și justifică noile elemente pe acre dorește să le implementeze. Inteligența artificială nu crează nimic. Ea vine doar să folosească ceea ce există, uneori, să folosească mai bine, dar nu aduce acel plus de creativitate în limbajele de asamblare care duc la progresul informaticii, tocmai acum când au dispărut barierele pe care le aducea lipsa de memorie din cauze tehnice, acum depășite. Chiar structura instrucțiunii din limbajul de asamblare este nepotrivită în raport cu puterea de prelucrare și resursele de memorie. Trebuie să se efectueze saltul calitativ în limbajele de asamblare pentru a ne apropia și mai mult de performanțele computerelor care să le facă mai apropiate de lucrul în limbaj natural, ca partener decent al nostru, chiar dacă noi nu venim din lumea informaticii.


(03 iunie 2023)

Monday, May 15, 2023

Eu și cartela perforată

Lumea nu trebuie să uite de unde s-a plecat. Este adevărat că acum dispunem de suporți de memorare de ordinul a 10Tb, dar prin 1960 se lucra cu cartela perforată, un suport făcut din hârtie pe care se perforau texte cu cel mult 80 de caractere. O cutie conținea 2.000 de cartele și avea cam două kilograme. Dacă ne gândim la un recensământ al unei populații de 20.000.000 de locuitori și dacă pentru fiecare persoană datele ar încăpea pe o cartelă, ar necesita 20.000.000 de cartele, adică 20.000 de cutii de cartele, adică 40 tone. De regulă, un recensământ necesită un formular unde persoanele sunt descrise pe câte 5 cartele, adică sunt necesare 200 tone de cartele perforate, care sunt stocate într-un apartament de 3 - 4 camere umplut până la refuz cu cutii de cartele. În ziua de azi, pe un stick de memorie de 256 Gb conținutul celor 100.000.000 de cartele vor încăpea lejer și încă mai rămâne foarte mult spațiu neocupat.
Eu am lucrat mulți ani cu cartele perforate, încă din vremea studenției până după anul 1990 când și-au făcut apariția dischetele, apoi CD-urile, apoi discurile externe și acum tot felul de stick-uri de memorie care au capacități de zeci sau sute de Gb, dar există dispozitive de memorare de 1, 2, 4, 10 Tb la prețuri accesibile.
Totuși eu n-am să uit cartela perforată care mi-a adus multe satisfacții la vremea mea, căci cu ea am reușit să rulez programe în limbajele FORTRAN și COBOL. Am nostalgia căratului cartelelor spre dispeceratul calculatorului și retrăiesc emoțiile așteptării hârtiei de imprimantă cu rezultatele oferite de unul din calculatoarele cu care lucram IBM 360 sau FELIX C-256.
Au fost momente frumoase, dar au fost și momente triste, căci se întâmpla ca o cartelă să fie agățată de către cititorul de cartele, să o distrugă și o dată cu ea se pierdea conținutul și dacă acolo era o linie sursă a programului, riscul era să nu se obțină un rezultat corect sau să nu se obțină decât o analiză de text sursă cu foarte multe erori, dacă respectiva cartelă distrusă conținea definirea de variabile, de exemplu.
Când am arătat studenților mei în anul 2010 o cartelă perforată nu le venea a crede că informatica a însemnat și cartela perforată, că dezvoltarea informaticii de dinainte de 1990 s-a făcut preponderent pe bază de cartele perforate, căci calculatoarele personale erau doar un vis frumos.



(15 mai 2023)

Friday, March 17, 2023

1.000 de oameni care m-au impresionat: Octavian ȘĂRBAN

Octavian ȘĂRBAN a fost studentul din grupa cu care am debutat eu ca asistent stagiar. A fost un lucru nefiresc pentru mine ca un tip de 24 de ani direct de pe băncile facultății să intre la seminarul unei grupe de studenți din anul al V-lea, adică anul terminal. Era disciplina de Programare în limbaj de asamblare, limbaj în care lucrasem eu din plăcere când făceam stagiul de practică scriind programe pentru mine în ASSEMBLER pe care le rulam pe calculatorul IBM 360.
Grupa aceea de studenți era o grupă foarte bună de la Secția de Mecanizarea și Automatizarea calculului Economic, dar și în aceste condiții pentru mine era foarte greu. Munceam din greu să pregătesc seminariile și documentația limbajului de asamblare de care dispuneam era una foarte bună, dar nu era pentru începători, ci pentru programatorii avansați și trebuia să construiesc secvențe de program de un cu totul alt nivel. Acolo instrucțiunile erau puse în ordine alfabetică și eu aveam nevoie de o altă ordonare, pe tipuri de operații și de operanzi.
În acea grupă era studentul Octavian ȘĂRBAN, pe care l-am remarcat din prima clipă. El era un excelent programator și înțelegea rapid problemele pe care le prezentam. Lucra foarte curat, construind secvențe de program riguroase, ceea ce mă ajuta foarte mult. Am înțeles că el era cel mai bun student din serie. Peste ani, am aflat că el a fost șeful de promoție din anul 1972.
Pe mine m-a impresionat Octavian ȘĂRBAN pentru traiectoria lui profesională. Toată viața lui el a făcut programare și nu oricum și nu oriunde, cu programare de top în locuri unde însemnătatea calculatorului electronic era cunoscută și munca programatorului era respectată. 
Eu am făcut un interviu cu Octavian la 01 decembrie 2020 care se află la adresa
https://ionivan1947.blogspot.com/2020/12/interviu-cu-informaticianul-octavian.html
Sunt prieten pe Facebook cu Octavian ȘĂRBAN și-i urmăresc postările interesante pe care le are acolo, ceea ce-mi verifică teoria că un profesionist de nota 10 în meserie, merge pe stradă de nota 10, spune un banc de nota 10, scrie o scrisoare de nota 10, vede un film de nota 10 și are postări pe rețele de socializare tot de nota 10. De aceea eu nu sunt deloc optimist când văd politicienii mediocrii promițând marea cu sarea, pentru că ei fiind de nota 6 (șase), vor gândi strategii de nota 6(șase), vor lua decizii de nota 6(șase), se vor înconjura de inși tot de nota 6(șase).
Când mă gândesc la începuturile muncii mele de asistent universitar stagiar îl am în fața ochilor pe Octavian tânăr și subțirel, sprinten care se oferea să iasă la tablă să scrie programe. Ce vremuri!


(17 martie 2023)

Tuesday, March 7, 2023

1.000 de oameni care m-au impresionat: Lizica DUȘCĂ

Pe Lizica DUȘCĂ o știu din vremea studenției mele. Ea lucra în centrul de calcul al ASE la dispeceratul studenților. Abia fusese aduc calculatorul IBM 360 și îmi propusesem să scriu un program pentru lucrarea mea de stat, echivalentul lucrării de licență de azi. Era vorba de un  program FORTRAN destul de mare, care avea cu date cu tot o cutie de cartele perforate, ceea ce însemna cam 2.000 de cartele, să zicem undeva la 1.500 - 1.600 de linii sursă, plus cartelele cu date de prelucrat. Erau mulți studenți care rulau programe la calculatorul IBM 360, dar acest calculator era utilizat și pentru rularea de programe pentru beneficiarii din industrie care aveau contracte pe bani cu Centrul de calcul al ASE.
Lizica DUȘCĂ primea joburile noastre, ale studenților, căci așa se numeau pachetele noastre de cartele, care erau delimitate de o cartelă colorată de regulă roșie sau verde, cu o comandă a limbajului JCL - Job Control Language. Dacă am finalizat în termen acel program al meu, Lizica DUȘCĂ are o mare contribuție, căci a răspuns rugăminților mele de a mă ajuta cu rulările, deoarece apăreau situații în care la citirea cartelelor cititorul le agăța și operatorul din sala calculatorului rupea acea cartelă și o introducea în cutie pe poziția ei, dar rularea era compromisă. Atunci re-perforam cartela respectivă și  programul trebuia rulat din nou, lucru pe care numai Lizica DUȘCĂ mă ajuta să-l fac, strecurându-mi jobul meu printre cele ale beneficiarilor. Ea ne înțelegea și ne ajuta. 
Și după ce am devenit asistent universitar, mergeam cu cartelele studenților din grupele unde lucram și colaborarea cu Lizica DUȘCĂ a continuat mulți ani, dispeceratul studenților rămânând interfața acestora cu calculatoarele IBM 370, IBM 360, FELIX C-512 și FELIX C-1024 care erau în dotarea Centrului de calcul al ASE. Am considerat că Lizica DUȘCĂ știa meserie, căci ea știa să planifice distribuirea joburilor de la studenți, pe categorii, astfel încât studenții să obțină rezultatele de la calculator înaintea seminariilor sau a examenelor, ca imprimantele să fie utile în procesul de evaluare a studenților.
Acum sunt prieten pe Facebook cu Lizica DUȘCĂ și-i urmăresc postările cu mare interes.



(07 martie 2023)

1.000 de oameni care m-au impresionat: Richard MULLER

Richard MULLER a fost și el absolvent al Secției de Mecanizare și Automatizare a calculului Economic din Facultatea de Calcul Economic și Cibernetică Economică, pe vremea când facultatea avea durata studiilor de 5 ani și admiterea avea trei probe, din care una de algebră, una de analiză matematică și a treia probă era la alegere dintre fizică, geografie și economie politică, dar viitorii studenți de la Mecanizare în proporție covârșitoare alegeau fizica.
Richard MULLER, după terminarea facultății, având o medie foarte mare, a obținut la repartiție un post în centrul de calcul al ASE. Eu mă cumoșteam cu el de la cămin din vremea studenției noastre și după ce a lucrat în Centrul de calcul al ASE, locuia în Berceni unde locuiam și eu, iar duminica ne întâlneam prin comunele de lângă București, căci amândoi aveam plăcerea de a merge pe biciclete. Eu aveam o semi-cursieră SPUTNIK cu care mergeam duminică de duminică. Făceam pauze și discutam despre programare. El îmi vorbea despre proiecte. Îmi amintesc că lucra ceva legat de niște fișiere înlănțuite și avea deja un software făcut de el, care implementa funcții extrem de interesante.
Richard MULLER era un nume în Centrul de calcul. Inginerul Iulian SATRAN, considerat în acele timpuri un creier adevărat printre informaticienii care lucrau pe calculatorul IBM 360 avea cuvinte de apreciere la adresa lui Richard MULLER, lucru care nu se întâmpla și în alte cazuri.
Am mers la câteva seminarii științifice unde Richard MULLER și-a prezentat produsele software la care lucrase și m-a impresionat deschiderea lui pentru lucrurile noi, dar comparativ cu alții care doar vorbeau, Richard MULLER era omul care vorbea despre lucruri noi cu care lucrase efectiv și proba cu componente software operaționale.
La un moment dat, când l-am întâlnit duminica în drumurile noastre cu bicicletele mi-a zis că i s-a aprobat plecarea din țară și de aceea nu mai lucra în Centrul de calcul. I-am spus că mă bucur pentru el, că-și vede visul realizat și l-am asigurat că așa cum este el de serios și de bine pregătit profesional va fi strălucitor indiferent unde va merge. 
De atunci nu l-am mai întâlnit pe Richard MULLER, dar uneori mă gândesc la cât de bun programator era el, la cât de temeinic lucra și la cât de serios își argumenta opțiunile și soluțiile. Mi-am dorit de multe ori să fiu și eu cam cu același mod de a lucra, pentru că în mintea mea, Richard MULLER era garanția succesului garantat, căci atunci când faci o treabă cum scrie la carte, nu există riscul vreunui rateu sa vreunei interpretări din partea celor care sunt în stare doar să-și dea cu părerea și nimic altceva.


(07 martie 2023)

Tuesday, February 14, 2023

1000 de oameni care m-au impresionat: Marian MARINESCU

Marian MARINESCU a fost coleg de generație cu mine. El învăța la o școală din orașul Pitești, eu învățam la o școală de la periferie, numită Găvana. Ceea ce aveam comun, erau vacanțele de vară în care mergeam la râu și ne scăldam sau vacanțele de iarnă în care mergeam pe niște străzi plasate pe un deal unde ne dădeam cu sania.
Marian era o fire sportivă, provenea dintr-o familie cu anumite posibilități și faptul că practica niște sporturi își spusese amprenta asupra dezvoltării sale, fiind numai mușchi, comparativ cu noi cei de la țară, să zicem, care doar ne cățăram prin copaci, alergam de colo-colo și nici măcar fotbal nu jucam, căci a avea o minge de cauciuc era deja un lux, cât despre o minge de piele cum au fotbaliștii, nici măcar în vis nu gândeam să avem.
Marian MARINESCU este absolvent al Facultății de Calcul Economic și Cibernetică Economică, Secția de mecanizarea și Automatizarea Calculului Economic și l-am întâlnit pe când era student în anii mari, iar eu deja eram asistent universitar. De câte ori ne întâlneam, discutam despre vremurile bune pe care le-am trăit în copilăria noastră și doar atât. 
Ultima dată, l-am întâlnit pe Marian după ce susținuse examenul de stat și era fericit. După ce au fost demolate casele noastre am pierdut legătura și mi-a părut rău că nu am mai avut posibilitatea să-l reîntâlnesc căci el m-a impresionat prin dinamismul lui și prin dorința de a evolua, chiar dacă vremurile în care noi am trăit și mai ales când eram tineri, erau vremuri foarte aspre.

(14 februarie 2023)

Thursday, January 12, 2023

1.000 de oameni care m-au impresionat: Iulian SATRAN

Iulian SATRAN era inginer de sistem în Centrul de calcul al ASE, în vremea când eu mi-am început activitatea mai întâi de analist acolo în decembrie 1970. Stătea la un birou mititel, parcă avea numărul 105 și acolo nu era prea cald, că iarna inginerul Iulian SATRAN stătea îmbrăcat cu o haină de blană, un Delon, cum se zicea în epocă.
Pe vremea aceea nu exista internet ca acum, iar documentația despre calculator nu era accesibilă oricui și cei care aveau acces la acea documentație dacă puneau mâna pe ea, nu o scăpau din mână, căci era șansa lor de a fi importanți și de a rămâne importanți, căci lumea ar fi apelat la ei să dea asistență, căci numai cine avea documentația știa să depaneze corect programele, care erau bântuite de tot felul de erori, căci programatorii din vremurile acelea, nu erau ca programatorii din ziua de azi, căci nici limbajele și nici compilatoarele de atunci nu erau ceea ce sunt limbajele de programare și compilatoarele din ziua de azi.
Când am rulat niște programe, am avut niște erori și mi-a fost destul de greu să accept cum diferiți indivizi care avuseseră acces la documentație îmi vorbeau de sus, doar că citiseră câteva pagini. Cineva mi-a zis că cel mai bine era să merg la inginerul Iulian SATRAN că el mă va lămuri.
Aveam un pic de teamă să merg la inginerul Iulian SATRAN, căci el era o somitate în ale ingineriei de sistem și de departe era cel mai priceput. Nu exista niciun secret al calculatorului IBM 360 pentru acest om. Mi-am luat inima în dinți și am mers la el. Aveam imprimanta unde dădusem opțiunea OBJ și mi se listase ceea ce compilatorul genera ca secvențe de program scrise în limbaj de asamblare. Sub acele secvențe se aflau conținutul celor 16 registre ale calculatorului.
Am bătut la ușă, al intrat, am salutat. Inginerul Iulian SATRAN lucra la ceva. Am așteptat. S-a ridicat de la birou și a venit spre mine. Eram destul de temător că-l deranjez pe acest om atât de ocupat cu chestiuni mai importante decât ceea ce aveam eu, credeam. M-a întrebat care este problema. Am arătat imprimanta. Iulian SATRAN a luat un pix cu pastă și mi-a arătat pas cu pas ceea ce face. Era foarte clar ceea ce spunea. M-a atenționat că mă învață cum să localizez eroarea și s-o fac singur din acea clipă încolo. A încercuit conținutul unui registru. A încercuit o secvență dintr-un șir tipărit la imprimantă. A făcut o scădere în baza 16 și mi-a zis că a obținut deplasarea. A plimbat pixul pe textul obiect generat de compilator până a găsit acea deplasare. În acest fel a stabilit instrucțiunea care-mi producea durerea de cap și care făcea ca programul să nu finalizeze execuția. Era acolo și un cod. Cu mâna lui, inginerul Iulian SATRAN a scris câteva codurio și cauze asociate lor, acele coduri corespundeau celor mai frecvente erori. Așa l-am cunoscut eu pe Iulian SATRAN, cel care după câțiva ani a plecat în Israel și a lucrat în informatica de vârf, căci era un specialist adevărat, căruia niciunul din Centrul de calcul al ASE nu-i sufla în ciorbă.

(12 ianuarie 2023)

Saturday, November 27, 2021

Virgil HORNOIU, un om de nota 10

Virgil HORNOIU, fostul meu coleg din Centrul de calcul al ASE, omul de mare caracter cu care am colaborat în vremurile mele de început și m-a ajutat de pe poziția pe care o avea la dispecerat și la operarea calculatorului IBM 360, să rezolv multe probleme, pe care oamenii în ziua de azi nu le-ar înțelege în niciun caz.
Virgil este omul care nu vorbește mult, dar face foarte multe. Cu el discuți, îi explici. El evaluează situația și-ți propune o soluție la problema pe care i-o prezinți. Dacă a fixat o oră, ora aceea așa rămâne. El se ține de cuvânt. 
În vremurile de demult, se proceda astfel:
- șeful de contract enunța problema,
- mă documentam,
- defineam algoritmul de rezolvare,
- elaboram schema logică,
- constriam setul de date de test,
- scriam programul pe foi de programare,
- duceam foile spre a fi perforate cartelele,
- pachetul de cartele mergea la dispecerat,
- erau rulate programele,
- se obținea o imprimantă,
- dacă se obțineau rezultate complete și corecte era perfect și gata,
- dacă erau erori, se făceau corecții,
- se mergea din nou cu cartelele la dispecerat, 
- etc, etc, etc.
Rolul lui Virgil HORNOIU era fundamental, mai ales când trebuia să se obțină rulări mai multe pentru a reuși încadrarea în termene. Se lucra contra cronometru, iar Virgil HORNOIU știa să găsească acele momente când să intercaleze pachetele de cartele ceva mai mici printre lucrări mari. Atunci el spunea că dacă aștepți 10 minute va veni cu imprimanta și cu cartelele proaspăt preluate de cititorul de cartele al calculatorului, programul compilat și eventual intrat în editarea de legături și era și mai bine dacă intra programul în execuție.
Acum, Virgil HORNOIU a împlinit o foarte frumoasă vârstă. Îl urmăresc pe Facebook și nu este schimbat deloc. Este exact cu aceeași privire pe care o avea atunci când discutam cu el.
Să ne trăiești Virgil HORNOIU, căci ești omul cu care am colaborat excelent și dacă s-ar mai ivi ocazia, aș colabora fără să stau pe gânduri nicio secundă!







(27 noiembrie 2021)