Ordenagailuen programazioa

Ordenagailu programa edo programa informatikoa ordenagailuan zeregin zehatz bat burutzeko idatzitako jarraibideen sekuentzia da.

Gailu honek programak funtzionatzeko eskatzen du, normalean programaren jarraibideak prozesadore zentral batean exekutatuz. Programak formatu exekutagarria du, ordenagailuak jarraibideak exekutatzeko zuzenean erabil dezakeena. Programa berak gizakiak irakur ditzakeen iturburu kode formatuan, programa exekutagarriak (adibidez, konpilatuak) eratorriak direnez, programatzaile batek bere algoritmoak aztertu eta garatzea ahalbidetzen du. Ordenagailu programen eta horri lotutako datuen bilduma software izenarekin ezagutzen da.

Paradigmak

Ordenagailu programak haiek ekoizteko erabiltzen den programazio lengoaiaren paradigmaren arabera sailka daitezke. Paradigma nagusietako bi inperatiboak eta adierazgarriak dira. Nahitaezko hizkuntzan idatzitako programek algoritmo bat zehazten dute aitorpenak, adierazpenak eta txostenak erabiliz. Adierazpen batek aldagai baten izena datu mota batekin lotzen du. Adierazpen batek balio bat sortzen du. Azkenean, deklarazio batek adierazpen bat aldagai bati esleitu edo aldagai baten balioa erabil dezake programaren kontrol egiturak aldatzeko. Hizkuntza inperatiboen kritika bat da esleipen enuntziatu batek aldagai lokalak ez diren aldagai klase batean duen albo efektua.

Konpilatua edo interpretazioa

Gizakiak irakur dezakeen ordenagailuen programazio-lengoaiaren formako ordenagailu-programa bati iturburu-kodea deitzen zaio. Iturburu-kode hori konpiladore batek exekutatu dezakeen irudi bihur daiteke, edo berehala exekutatu, interprete baten laguntzarekin.


Konpilatutako edo interpretatutako edozein programa loteka egin daiteke prozesu batean, gizakiaren esku-hartzerik gabe, baina interpretatutako programek aukera ematen diote erabiltzaileari saio interaktibo batean komandoak idazteko. Kasu honetan, programak bereizitako komandoak dira, sekuentzialki eta, beraz, aldi berean gauzatzen direnak. Software aplikazio bati aginduak emateko lengoaia bat erabiltzen denean (Unixeko shell bat edo komando lerroko beste interfaze bat), script lengoaia bat deitzen zaio. Objektuaren objektu kodeak prozesamendu gehigarria behar du makina kode bihurtzeko, eta makinaren kodea prozesamendu unitate zentralaren jatorrizko kodea da, exekutatzeko prest dagoena. Konpilatutako konputagailu programak, normalean, exekutagarri bezala ezagutzen dira, irudi bitar bezala, edo, besterik gabe, bitar bezala, kode exekutagarria gordetzeko erabilitako artxibo bitar formatuaren erreferentzia bat.

Automodifikatzen diren programak

Gauzatzen ari den programa informatiko bat, normalean, erabiltzen dituen datuen desberdina den zerbait bezala tratatzen da. Hala ere, kasu batzuetan bereizketa hori anbiguoa da, bereziki programa batek bere burua aldatzen duenean. Aldatutako programa sekuentzialki exekutatzen da programa beraren zati gisa. Makina-kodean, mihiztatze-lengoaian, Lisp, COLOL, Pl/9 eta Prolog eta JavaScript (ebal funtzioa), besteak beste, idatzitako programen kasuan, posible da kode bat edukitzea, eta kode hori automodifikatzea.

Programak gauzatzea eta biltegiratzea

Normalean, programak memoria ez-lurrunkor batean biltegiratzen dira (disko batean, adibidez), ondoren ordenagailuaren erabiltzaileak, zuzenean edo zeharka, exekuzioa eska dezan. Eskaera egiten den unean, programa ekipoaren ausazko sarbide-memorian edo RAM memorian kargatzen da, sistema eragilea deritzon softwarearen kontrolpean, zeina zuzenean prozesadorera sar baitaiteke. Prozesadoreak programa exekutatzen du (korrika), instrukzio bidez, amaitu arte. Egikaritzen ari den programa bati prozesu ere deitzen zaio. Programa batek bere exekuzioa normal edo errore baten ondorioz amai dezake; errore hori softwarearena edo hardwarearena izan daiteke.

.

Hardwarean txertatutako programak

Programa batzuk hardwarean sartuta daude. Biltegiratutako programen arkitektura duen konputagailu batek bere ROMean biltegiratutako hasierako programa bat behar du abiarazteko. Abiarazteko prozesua sistemaren alderdi guztiak identifikatu eta abiarazteko da, hasi prozesagailuaren erregistroetatik, gailuen kontrolagailuetatik eta RAM memoriaren edukiraino. Ordenagailutik aparte, hardware gailu batek firmware txertatua izan dezake bere eragiketak kontrolatzeko. Firmwarea programa oso gutxitan edo inoiz ez aldatzea espero denean erabiltzen da, edo energiarik ez dagoenean programa galdu behar ez denean.

Eskuz kargatutako programak

Historikoki, programak prozesadore zentralera eskuz kargatzen ziren etengailuen bidez. Instrukzio bat etengailu irekien edo itxien egoeren konfigurazio baten bidez irudikatzen zen. Konfigurazioa ezarri ondoren, exekuzio-botoi bat exekutatzen zen. Prozesu hau errepikakorra zen. Halaber, programak eskuz kargatzen ziren paperezko zinta baten edo zulatutako txartelen bidez. Programa kargatu ondoren, hasierako helbidea ezartzen zen etengailuen bidez, eta exekuzio-botoia sakatzen zen.

Automatikoki sortutako programak

Programazio automatikoa klase generikoen, prototipoen, txantiloien, alderdien eta programatzailearen produktibitatea handitzeko kode sorgailuen bidez iturburu-kodea sortzen duen programazio estilo bat da. Iturburu-kodea programazio-tresnekin sortzen da, hala nola txantiloi-prozesadore batekin edo IDE batekin. Iturburu-kodearen sorgailu baten formarik sinpleena prozesadore makro bat da, C aurreprozesadorea bezala, iturri-kodearen patroiak ordezkatzen dituena erregela erlatiboki sinpleen arabera.


Software-motor batek iturri-kodea edo markatze-lengoaia irteera ematen du, eta, aldi berean, beste prozesu informatiko baten sarrera bihurtzen da. Analogia gisa pentsa dezakegu prozesu bat beste bat maneiatzen, makina-kodea erregai gisa erreta dagoenean. Aplikazio-zerbitzariak software-motorrak dira, eta aplikazioak ematen dizkiete bezero-konputagailuei. Adibidez, wikientzako softwarea aplikazioen sebidore bat da, erabiltzaileei artikuluen bidez mihiztatutako eduki dinamikoa garatzeko aukera ematen diena. Wikiek HTML, CSS, Java eta Javascript sortzen dituzte.

.

Aldibereko exekuzioa

Programa asko ordenagailu berean aldi berean exekutatu daitezke, multitarea bezala ezagutzen dena, software edo hardware mekanismoen bidez lor daitekeelarik. Sistema eragile modernoek hainbat programa exekutatu ditzakete prozesuen planifikatzailearen bidez software mekanismo bat prozesagailuaren prozesu kopurua maiz kommutatzeko, erabiltzaileek programa bakoitzarekin elkarrekintzan jardun ahal izan dezaten hauek korritzen ari diren bitartean.

photo-1580691746056-4badd831b86e