Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Edukira joan

Sistema eragile

Artikulu hau Wikipedia guztiek izan beharreko artikuluen zerrendaren parte da
Artikulu hau "Kalitatezko 2.000 artikulu 12-16 urteko ikasleentzat" proiektuaren parte da
Wikipedia, Entziklopedia askea

Sistema eragileak, non kokatzen diren aplikazioaren eta hardwarearen artean.

Sistema eragile bat (SE edo askotan, OS –ingelesez: Operating System–) konputagailu baten software nagusia da. Software honek konputagailuko hardware baliabideak kudeatzen ditu eta beste software aplikazioei zerbitzuez hornitzen ditu. Gainera, beste softwarek egiten ez duten bezala, modu pribilegiatuan exekutatzen da (honek ez du esan nahi sistema eragilearen atal bat erabiltzailearen espazioan ezin dela exekutatu). Jende askok pentsatzen du sistema eragilearen tresna guztien multzo guztia sistema eragilea dela, baina hori akats oso komuna da.

Hau da, fitxategi esploratzailea, web nabigatzaile eta horrela bezalako lanabesak ez dira sistema eragilearen parte. Desberdintasun hau azaltzeko beste adibide bat, Amiga plataforma da. Amiga plataformaren erabiltzaile ingurune grafikoa bananduta antolatzen da. Horrela, beste batengatik ordezkatu daiteke, Opus direktorioaren kasuan bezala. Ezberdintasun hau azaltzeko beste adibide on bat, Linuxen muina da, Linux banaketetan erabiltzen dena, zeren eta Unixen oinarrituta ere dagoenez, antzeko eran funtzionatzen duen sistema ematen du. Zehaztasun akats hau, 1980ko hamarkadan informatikan gertatu zen modernizazioaren erruz da, multierabiltzaile konputagailu kontzeptutik, mono-erabiltzaile deritzon sistematik, kudeatzeko errazagoa dena.

Testu askotan, sistema eragilea muin edo kernelarekin nahasten da. Kernel eta sistema eragilearen arteko ezberdintasuna kernela monolitikoa denean aplikagarria da bakarrik. Kernel monolitikoak oso komunak ziren lehenengo sistemetan. Baina kernela monolitikoa ez bada, kernelari sistema eragile deitzea akats handia da, gauza desberdinak dira eta.

Bitarteko kernela kudeatzen duen sistema eragilearen helburuetako bat, hardwarearekiko sarbidea babestean eta hardwarearen lokalizazio baliabideak ondo kudeatzean datza. Honek programatzaileak laguntzen ditu zeren eta honi esker ez dira gauza horietaz arduratu behar. Ondo funtzionatzeko miniprozesadoreak erabiltzen dituzten gailu elektroniko gehienak, sistema eragile bat daukate (SmartPhone telefono mugikorrak, DVD erreproduzitzaileak, CD erreproduzitzaileak, konputagailuak, irratiak, routerrak, Tabletak eta abar). Kasu hauetan, erabiltzaile interfaze grafikoa baten bidez, leiho kudeatzaile baten bidez edo mahaigain ingurumen baten bidez kudeatzen dira. Telefono mugikor bat bada, kontsola baten bidez. DVD erreproduzitzaile bat bada, urrutiko kontrol bat erabiliz. Router bat bada, komando lerro edo web nabigatzaile bat erabiliz.

Historia

XX. eta XXI. mendean izugarrizko aurrerapenak eman dira informatikaren munduak, eta ildo horretatik doaz sistema eragileen sorrera eta garapena; eta, ondorioz, historia.

1940ko hamarkada

1940. hamarkadaren bukaeran, munduko lehen konputagailu belaunaldiaren aurkikuntzarekin batera, programak konputagailuaren memorian sartzea ahalbidetzen zuten mikro - etengailuetara lotzen ziren konputagailuen kontsolara sartzea lortu zen. Momentu honetan ez zegoen sistema eragilerik, baina lehen aldiz programatzaileak zuzenean lan egiten hasi ziren konputagailuaren hardwarearekin.

1950ko hamarkada (Batch Sistema)

1950. hamarkadaren hasieran, pertsona eta konputagailuen arteko elkarrekintza hobetzeko asmotan, sistema eragileek lehen agerpen xume eta sinple bat egiten dute, egoiliar monitore, Batch prozesu edo aldi baterako biltegiratzea bezalako kontzeptuen bidez. Erabiltzaileak ez zuen konputagailua zuzenean atzitzeko modurik. Horren ordez, hurrengo puntuan azaltzen den moduan, erabiltzaileak txartel baten bidez bidaltzen zion informazioa operadore informatikoari. Honek, sekuentziak multzokatu eta batch bakoitza osorik jartzen zuen sarrerako gailu batean. Prozesua amaitzerakoan programa bakoitza monitorera itzuli eta hurrengo programa kargatzen zen automatikoki.

Egoiliar monitorea

Bere funtzionamendua nahiko sinplea zen, zulatutako txartel batetik edo askotatik memoriako programak irakurri eta hauek exekutatzea baitzen bere lana. Arazoa, ordea, lan baten ateratzetik hurrengo lanaren hasiera arte igarotako denbora optimizatzeko era aurkitzea zen. IBM 704 ordenagailu baterako sortutako historiako lehen sistema eragilea 1956. urtean sortu zen, eta egiten bere funtzioa programa baten exekuzioa hastea zen aurreko bukatzen zenean.

Aldi baterako biltegiratzea

Bere helburua programen kargatze - denbora murriztea zen, programa baten kargatzea edo datu - irteera hurrengoaren exekuzioarekin aldiberekoa izanik. Horretarako bi teknika erabiltzen ziren: "bufferinga" eta "spoolinga".

1960ko hamarkada

1960. hamarkadan informatikaren hainbat ataletan aldaketa garrantzi batzuk izan ziren, ordenagailuen potentziala handitzeko asmoz sortu ziren zirkuitu integratuen lehen agerpenekin.

Multiprogramazioa

Sistema multiprogramatu batean memoria nagusiak erabiltzaile programa bat baino gehiago du bere baitan. CPUak programa baten aginduak exekutatzen ditu, exekutatzen ari den programak S/I-n eragiketa bat burutzen duenean; hau da, S/I-ko eragiketa bukatu arte itxoin beharrean, beste programa bat exekutatzeari ekiten zaio. Modu berean, azken hau S/I-ko beste eragiketa bat egiten hasten bada, agindu egokiak bidaltzen zaizkio kontrolatzaileari, eta beste programa bat exekutatzen hasten da. Modu honetan, posible da erabilgarri dauden baliabideak optimizatzea, momenturo eginbehar multzo egokia bilteragiratuta edukiz. Modu honetan, memoria zabalduta, hiru, lau edo programa egon daitezke haien artean txandakatuz.

Partekatutako denbora

Momentu honetan erabilgarri dagoen elektronikaren erabilpen ona egiten duen sistema bat daukagu, baina elkarrekintza falta dugu arazo; hori gainditzeko, erabiltzaile anitzeko sistema batean bihurtu behar da, bertan hainbat erabiltzaile online egonda terminal berean, partekatutako denboraren operazio modua erabiliaz. Sistema hauek multiprogramazioaren antzera jokatzen dute; baina, azken hauek ez bezala, programa bat denbora jakin bat doanean exekuzioan sistema eragileak geratu egiten du beste aplikazio bat exekutatzeko. Honela, n erabiltzaile baditugu aldi berean aktiboki zerbitzu eske, erabiltzaile bakoitzak batez beste konputagailuaren benetako gaitasunaren 1/n baino ez du ikusiko, sistema eragilearen gainkarga alde batera utzita.

Denbora erreala

Sistema hauek ordenagailuz kanpoko gertakari kopuru handi bat denbora oso murriztuan onartu eta prozesatu behar direnean erabiltzen dira. Sistemak emandako denboran prozesuaren emaitzak lortu edo bukatzerik ez badu, huts egin duela esan daiteke. Erantzun - denborak, gainera, arazo edo gertakariari erantzuna eman behar dio. Fitxategien prozesamendua era jarraitu batean egiten da, uneko fitxategia hurrengo sartu baino lehen prozesatzen baita. Horretaz gain, sistema honen lehen eta egunarteko erabilerak telekomunikazioaren munduan izan direla esan behar da.

Multiprozesagailuetarako sistemak

Ordenagailu monoprozesadoreetan ez dagoen diseinua da. Bi programa aldi berean exekutatzearen ondorioz datoz arazo hauek, eta, ondorioz, beren artean oztopatzearen ondorioz. Zehazki, memoria irakurketa eta idazketetan sortzen da arazo hau. Bi arkitektura mota daude arazo hau ebazten dutenak:

  • NUMA arkitektura, non prozesagailu bakoitzak memoria zati baten sarrera eta kontrol guztia duen.
  • SMP arkitektura, non prozesagailu guztiek memoria osoa partekatzen duten. Azken honek cache koherentziaren arazoarekin egin behar du lan. Mikroprozesagailu bakoitzak barne cache memoria bat dauka; honela, mikroprozesadore batek memorian helbide bat idazten duenean, bere barneko cache memorian idazten du. Beste mikroprozesagailu batek helbide bera badu jasota bere cache memorian, biltegiratutako datuaren zaharkitutako kopia batekin egingo du lan.

Mikroprozesagailu baten lana zuzena izateko horretarako bereziki diseinatutako sistema eragile bat beharko du. Egungo sistema eragile gehienak dira azken hau egiteko gai.

1970ko hamarkada

Sistema eragileen arazo edo eragozpenak

Sistema eragileak handiak, konplexuak eta garestiak ziren, ez baitzen lehenago antzeko ezer eraiki eta ordura arte eraiki ziren proiektuak espero zena baino askoz garestiagoak izan ziren; gainera, hauek eraikitzeko denbora ere oso handia izan zen. Horretaz gain, hardwarearen eta erabiltzailearen artean maila bat jartzen saiatu baziren ere, azken honek ezagupen handiak behar zituen programazio-lengoaiaren inguruan sistema erabili ahal izateko. Beste eragozpen handi bat baliabideen gehiegizko erabilpena zen, memoria nagusia eta bigarren mailako memoriak okupatzen baitzituzten; hori gutxi balitz, prozesatze - denbora ikaragarri handia zen. Multiprogramazio eta partekatutako denbora teknikak hobetzeko arrazoiak hauek izan ziren, batik bat.

Garatutako sistema eragileak

Unix Atlas Supervisor eta OS/360 sistema eragileaz gain, 1970. hamarkadak markatu zuen UNIXen hasiera. 1960. hamarkadaren erdialdean Multics azaltzen da, AT&T eta Unixko Bell laborategiek aurrera eramandako sistema eragilea, erabiltzaile eta ataza anitzekoa, maila altuko lengoaia batean idatzitako gutxietakoa izanik.

Programazio logikoko atalean, Prologen lehen inplementazioa azaldu zen; gainera, Smalltalk ere asmatu zen, Objektuetara bideratutako programaziorako gakoa izan zen lengoaia.

CP/M: (Control Program for Microcomputers) Intel 8080 mikroprozesagailuarentzat Gary Kildallek garatutako sistema eragilea izan zen. 1970. hamarkadako sistema eragile famatuenetakoa izan zen konputagailu pertsonalen arloan. Nahiz eta IBM PCn exekutatzeko eraldatua izan zen, IBMk MS-DOS aukeratu izanak Digital Researchekin porroto izan eta gero, CP/Mren erabilera ikaragarri jaistea egin zuen, desagerrarazi arte. CP/M Control Program/Monitor zeritzon hasiera batean; aurrerago, Control Program for Microcomputers izena hartu zuen. Garai hartan, zeharkako barrak (/) "-rentzako diseinatua" esan nahi zuen, nahiz eta aurrerago Gary Kildallek hura birdifinitu zuen. Momentu hartatik aurrera, CP/M lehen mikro - ordenagailuen industriako estandar bilakatu zen. Urte batzuk geroago, IBMk MS-DOS aukeratu izana bere ordenagailuetarako haren porrot handiena eragin zuen, azkenean desagertu egin zen arte.

MULTICS (Multiplexed Information and Computing Service)

BDOS (Basic Disk Operating System): BIOSera egindako deietako aginduen itzultzailea.

1980ko hamarkada

Hamarkada honetan, hardwarea merketzea eta mikroprozesadoreen agerpenarekin batera, erabiltziale bakar bati dedikatutako sistemak sortzen dira (PC-ak). LSI (integrazioa eskala handian) zirkuituen sorrerarekin, siliziozko zentimetro karratu batean milaka trantsistore zituzten txipak, ordenagailu pertsonalen gorakada hasi zen. Hauekin, hein batean alde batera utzi zen errendimendua eta gehiago landu zen sistema eragile erabilterrazago bat lortzeko asmoa, menuak eta interfaze grafikoak sortuaz. Honek aplikazioen abiadura murrizten zuen, baina erabiltzaileentzako praktikoago eta sinpleagoak izatea lortu zen. Garai hartan, jada sortutako programazio - lengoaiak erabiltzen jarraitu zen, Smalltalk edo C bezalakoak adibidez; baina, horiez gain, beste batzuk ere sortu ziren: C++ eta Eiffel bezalakoak objektuei orientatutako programazioaren atalean, edo Haskell eta Miranda programazio deklaratiboaren munduan.

1980. hamarkadako aurrerapen garrantzitsuenetako bat sareko eta banatutako sistema eragileetan zebiltzan konputagailu sare pertsonalen garapena izan zen, elkarren artean komunikatzen eta Interneteko esparruan hedatzen hasiz. Agertoki honetan, bi ziren sistema eragile nagusiak: MS-DOS (Micro Soft Disk Operating System), IBM PCrentzat Microsoftek idatzia eta beste konputagailu batzuk Intel 8088 CPUa eta bere ondorengoak erabiltzen zituztenak; eta UNIX, Motorola 68000 erabiltzen zuten ordenagailu pertsonaletan nagusitu zena.

Honetaz gain, hamarkadaren bukaeran, hardwarearen txikitzea baliatuz, lehen eramangarriak sortzen hasi ziren, sistema hauen gailuetara egokituz sistema eragileak. Gainera, aurrerago, edozein tokitatik sarera konektatzea lortuko zuten eta beste adimen maila bat sortu ere bai: nonahiko sistemak.

Garatutako sistema eragileak

Hamarkada honetako hiru sistema izan ziren funtsezkoak: MS-DOS izan zuen hedapenarengatik, Macintosh zabaldu zuen interfaze grafikoarengatik eta SunOS lan-estazioetan izan zuen eraginarengatik. Beste ezagun batzuk ere garaiotan sortu ziren: OS/", Amiga...

Artikulu nagusia: «MS-DOS»

MS-DOS. 1981ean, Microsoftek QDOS izeneko sistema eragile bat erosi zuen, hainbat aldaketaren ondoren MS-DOSen (Micro Soft Disk Operating System) lehen bertsioa bilakatu zena. Handik aurrera, hainbat aldaketa burutu ziren 7.1 bertsiora ailegatu arte, 8. bertsioa Windows Mileniumen, eta handik aurrera MS-DOSek sistema eragilearen osagaia izateari utzi zion.

1983an, MSX ordenagailuen agerpenarekin, Z-80 prozesagailuak erabiltzen zuen egokitzapen bat sortu zen sistema honentzat, MSX-DOS izenekoa. MS-DOS 1.25 eta CP/Mren arteko nahaste bat zen. 1988an, Microsoft proiektutik bereizi zenean, MSX-DOS garatu zuen ASCII korporazioak, beste hainbat erabilpenen artean, direktorien erabileraren aintzindari izan zena.

Artikulu nagusia: «Macintosh»

Macintosh ordenagailuaren merkaturatze ofiziala 1984ko urtarrilean izan zen, US $1,995-ko prezioan (ondoren $2,495 dolarretara aldatu zen). Mac OS sistema eragilea zuen, GUI (Graphic User Interface) bat, multitarea eta Mousea izanik bere ezaugarri nagusienak.

SunOS Unix eta BSDtik eratorritako sistema eragilearen bertsioa zen, Sun Microsystemsek garatutakoa 1990. hamarkado hasiararte bere lantegi eta zerbitzarientzako. UNIX BSDn oinarrituta zegoen, nahiz eta ondorengo bertsioetan System V UNIXen hainbat gehigarri eduki.

SunOS1.0 1982. urtean argitaratu zen eta BSD 4.1en oinarrituta zegoen batik bat. SunOS 2.0, 1985ean sortu zena, BSD 4.2 erabiltzen zuen oinarri bezela eta maila bat gehitzen zuen fitxategi sistema birtual (VFS) eta NFS protokoloaren artean. SunOS 3.0 1986an argitaratutako Sun-3 seriearekin kointziditu zuen eta System Ven hainbat erabilera gehitzen zituen. SunOS 4.0, 1989an sortu zenak, BSD 4.3 erabiltze zuen, eta sistema berri bat gehitu zuen memoria birtual, lotura dinamiko eta System V STREAMS I/O arkitekturaren inplementazioa lantzen zituena.

SunOs 5.0 eta ondorengoak UNIX System V Release 4an oinarrituta daude.

Artikulu nagusia: «Bestelakoak»

AmigaOS, Commodore Amiga sistema eragilea zuten ordenagailu pertsonaletan zeuden lehio - kudeatzaile eta ROM multzoari eman zitzaion izena zen. Commodore Internatiolek garatu zuen 1985 urtean.

OS/2 IBMren sistema eragile bat da, ordenagailu pertsonaletan DOS ordezteko merkaturatu zena. Hasieran, Microsoft eta IBMren artean garatua izan zen, baina Microsoftel proiektua utzi eta IBMren esku soilik geratu zen. OS/2 jada IBMk ez du merkaturatzen, eta 2006 urteaz geroztik bertan behera utzi zuten OS/2ren euskarri estandarra.

1990eko hamarkada

Garatutako sistema eragileak

Hamarkada honetan Microsoftek aurrerapen handia egin zuen leihotan oinarritutako interfazeak hedatzean eta zerbitzarien alorrean egindako aurrerapenengatik. Edozein kasutan zerbitzarietan lidergoa Unixek eta bertatik eratorritako sistemek (Linux, Solaris, FreeBSD) zuten hainbat arrazoirengatik: sendotasuna, Internet euskarria, lankidetzarako aukerak. Gainera, Unix hasierako garaiko ideia garatuz, Software librearen eztanda etorri zen GNU/Linux aldetik.

Artikulu nagusia: «GNU/Linux»

GNU/Linux Unixen bertsio libre eta hein batean hobetua da, POSIXen estandarrean oinarritutakoa, hasiera batean komando moduan lan egiten zuena. Gaur egun, leihoekin lan egiteko gai da, zerbitzari grafiko eta leiho - kudeatzaile batzuei (KDE, GNOME) esker. Berriki, GNU/Linuxek aplikazio bat garatu du lehioak 3D ingurune batean bihurtzen dituena, Beryl eta Compiz izanik adibideak.

GNU/Linuxen banaketa asko existitzen dira (Debian, Fedora, Ubuntu, Slackware...), denak Linux nukleo bera izanik. GNU/Linuxen ezaugarrien barruan garrantzitsuena web - nabegazioan birusak ezin erasotzea da; hau, sistemak inplementatua duen baimen - sistema baten ondorioz lor daiteke.

Artikulu nagusia: «Microsoft Windows»

'''Microsoft Windows''' MS-DOSen oinarritutako Microsoftek garatu eta saldutako sistema eragileen familia bat da. Windows ez zen inoiz izan ingurune grafikoko sistema eragile bat izan Windows 95 arte. Windows 95 16 eta 32 bit arteko interfaze grafikoko sistema eragile bat da. 1995. urtean merkaturatu zen eta ikaragarrizko salmenta izan zuen. Windowsen serie hau Windows Me sistemarekin amaitu zen.

Artikulu nagusia: «Windows NT»

'''Windows NT''' Microsoftek produzitutako sistema eragile familia ba da, lehen bertsioa 1993.an sortua izan zena. Aurretik, Microsofek enpresatara eta sare-zerbitzarietara orientatutako sistema eragile multzo bat sortua zuen. Interfaze grafiko propio, egonkor eta UNIX sare-sistemaren ezaugarri antzekoko sistema eragilea zen. NT ez zen egonkorra zerbitzarientzat leihoen sistemaren gainean zegoelako pentsatuta, eta ahulezia horrekin jarraitu zuen Windows2000 etorri zen arte.

Artikulu nagusia: «Solaris (sistema operativo)»

Solaris Unix motako sistema eragile bat da, 1992an Sun Microsystemsek sortua SunOSen ondorengo bezala. Zerbitzarietan eta lan-estazioetan dabil, SPARC eta x86 arkitekturetan.

Artikulu nagusia: «FreeBSD»

FreeBSD erabiltzaile anizkoitzeko sistema eragile bat da, prozesadore askoko plataformetan ataza eta prozesu anizkoitzeko ekintzak garatzeko gai dena. Nahiz eta FreeBSD ezin den zuzenki UNIX deitu, ez duelako The Open Group lizentziarik, POSIXekin bateragarria izateko gai da.

FreeBSD sistemak nukleo bat dakarki, sistemako fitxategi estruktura, C programazio lengoaiako parte den APIko liburutegiak, eta beste hainbat erabilpen. 6.1 [1] bertsioak hobekuntza garrantzitsuak ekarri zituen soinu - eta sare - txartelentzako kontrolatzaileetan eta Bluetooth gailuetan, besteak beste. Banapen garrantzitsu eta famatuena PC-BSD da.

Beos 1990ean Be Incorporatedek garatutako sistema eragile bat da, multimedia aplikazioetan errendimendu handia lortzeko helbuarekin sortua. Hasieran (1995-1996) sistema eragileak bere hardware propioa zuen, BeBox bezala ezagututakoa. Beranduago, 1987an, PowerPC plataformara hedatu zen eta, azkenean, 1998an x86 prozesagailuekin konpatible izatea lortu zen.

ReactOS (React Operating System) Microsoft Windows NT sistementzako egindako kode irekiko sistema eragile bat zen, software aplikazio eta dispositibo kontrolatzaileen artean bateragarritasun bitarra lortzea helburu zuena.

FreeDOS sistema eragile libre bat lortzea helburu zuen proiektu bat zen, MS-DOSeko aplikazio eta kontrolagailuekin guztik bateragarria izango zena. Programak heldutasun maila handi bat du jada eta MS-DOSen ez zeuden hainbat ezaugarri ditu. FreeDoseko hainbat komando MS-DOSekoen berdinak edo hobeak dira, baina bertsio originaleko batzuk falta dira oraindik.

2000ko hamarkada

Garatutako sistema eragileak

Ez zen berrikuntza handiegirik gertatu. Microsoft eta Apple enpresen eboluzioa zerbitzariei begira, Unix/GNU/Linux sistemen sendotasuna eta prestazioak lortu nahian, izan daitezke aldaketa aipagarrienak. Aldi berean GNU/Linux hedatzen hasi da pCetan.

Artikulu nagusia: «OS X»

Mac OS, lehenago MAC OS X deitua zena, Unixen oinarritutako sistema eragile bat da, Apple Inc-ek garatu, merkaturatu eta saldutakoa. Zerbitzarientzako aldaera, Mac OS X Server, mahaigainarentzako bertsioaren bera da, nahiz eta lan - taldeak administratu eta sare - zerbitzuetarako sarrera hornitzen duen ere. Herraminta hauek, korreo zerbitzari bat, Samba zerbitzari bat, LDAP zerbitzari bat eta domeinu - zerbitzari bat dute beren barnean, besteak beste

Darwin Mac OS X-en azpian dagoen sistema da, lehen bertsioa 2001ean izan zuena Macintosh konputagailuentzat. Darwinek Mac OS X-ri prestazio modernoak ekarri dizkio, babestutako memoria, Multiataza izatea, memoriaren kudeaketa aurreratua edo prozesu anitz simetrikoa eramatea.

OpenSolaris 2005 urtean merkaturatutako sistema eragile libre bat da, Sun Microsystemsen Solaris hasierako bertsiotik eratorria.

SymbOS Amstrad CPC ordenagailuentzako 2001 urtean sortu zen sistema eragile bat da. Sistema eragile grafiko bat da, Windows 95en oso estetika eta interfaze antzekoak dituena. Ordenagailu hauek oso potentzia baxukoak izanda, erabiltzen duen hardwarekiko optimizatu egiten da sistema, eta lortutako errendimendua ona dela esan daiteke. Horrek sistema eragile modernoen aitzindari gisa kokatu du. Sistema zaharkitu baten itxura eduki arren, komunitate zabala lortu du. Programatzaile originalak sistema eguneratzen jarraitzen dute gaur egun.

MorphOS Power PC (PPC) prozesagailua duten ordenagailuentzako sortua. Sistema eragile jabeduna da, baina bere liburutegi eta osagaietako asko kode irekikoak dira. Sistema hau Quark mikronukleoan oinarrituta dago.

Haiku kode irekiko sistema eragile bat da, informazio pertsonal eta multimediaren garapenean oinarritzen dena. BeOS (Be Operating System) sistemak iradokia, Haiku sistema azkar, eraginkor, erabilterraz eta ikasterraza bihurtu nahi da, edozein mailako erabiltzaileentzako potentzia kontuan hartzeari utzi gabe.

2010ko hamarkada

Garatutako sistema eragileak

'''Illumos''' OpenSolarisetik eratorritako software libreko proiektu bat da, 2010.en urtean merkaturatutakoa. Oinarrizko kode bat da, edozein erabiltzailek bere banaketa propioa eraikitzea izango duena OpenSolarisen sistema eragilean oinarrituta. Hala ere, Illumos ez da zehazki banaketa bat, baizik eta OS/Net-en eratorri bat, kernelaren iturburu kodean (SunOS), sare - zerbitzuetan, sistemaren liburutegietan eta sistema eragilearen oinarrizko komandoetan oinarritzen dena.

'''OpenIndiana''' Unix motako sistema eragile bat da, software libre eta kode irekikoa dena. OpenSolarisen adarkatze bat da, eta aurreko honen oinarrizko kodearen garapena eta banaketa sustatzea du jomuga. Proiektuaren helburu nagusia, segurtasun erroreei konponbidea doan ematea behar duten produkzio - zerbitzarietan OpenSolarisen banaketa nagusia izatea da.

IoT (Internet of Things)

Sistema txertatuak, denbora errealeko sistemak... era askotako beharrak sortzen dira Interneti lotuta gaur egungo gizarte honetan, eta, horregatik, sistema eragilek etengabe egokitzen joan behar dira. Horren adierazle dugu Gauzen Interneta, egunero erabiltzen diren tresnak interkonexio digitalaren bidez Internetekin konektatzen dituen kontzeptua.

Kernela

Sistema eragilearen kernela, sistema eragile guztiek erabiltzen duten software garrantzitsu bat da. Kernela sistema eragilearen bihoztzat hartzen da, hardwarea eta softwarea elkarlotzen dituelako. Elkarlotze honek konputagailu edo ordenagailu batek modu eraginkor batean lan egitea ahalbidetzen du. Sistema eragilearen barruan, modu pribilegiatuan exekutatzen da, horrela, programek hardwarea modu seguruan atzitu ahal izango dute. Hau dena gauzatu ahal izateko, sistema-deiak (system calls) erabiltzen ditu. Kernelak, erabiltzaile arruntari makinaren erabilpena errazteko erabiltzen da.

Konputagailua pizten dugun bakoitzean, kernela, ordenagailuko RAM memorian kargatzen da eta bertan dirau ordenagailua itzali arte.

Nahiz eta aurretik esan sistema eragile orok erabiltzen duela kernela, benetan, hardwarearen abstrakzioa (hardware abstraction) lortu nahi ez badugu ez dugu kernelik behar. Abstrakzioa (hardware abstraction) lortzea, programatzaileak hardwareari buruzko detaileak jakin gabe, hau atzitzeko aukera izateari deritzo.

Funtzioak

Kernelak konputagailuari baliabideak eskaini eta kudeatzen dizkio, beste programei exekuzioa eta baliabide horiek erabiltzea baimenduz. Kernelak gainera memoriako helbide espazioa ezartzen du aplikazioetarako, memorian aplikazioen kodea duen fitxategiak kargatzen ditu eta programentzako edota programen barnean kokapen bereziak dituzten adarrentzako exekuzio pila ezartzen du.

Kernela hauen arduradun da:

1. Periferikoei edo makinara konektatzen diren gailuei sarbidea baimentzen die, erabiltzaileak erabili ditzan.

2. Makinaren zerbitzuak eta programak modu eraginkor batean exekuta daitezen memoria kudeatzen du.

3. Prozesu eta programa ezberdinek prozesatzeko behar duten denbora kudeatzen du.

Kernel motak

Hasiera batean, konputagailuak, nukleorik gabe funtzionatzen zuten, baina, programa ezberdinak erabili ahal izateko, makinak berrabiarazi eta birkonfiguratu behar ziren. Horregatik, programa laguntzaileak memorian gordetzen hasi ziren. Programa hauek garatzen joan ziren eta gaur egun nukleo edo kernel izenarekin ezagutzen direnen oinarri izan ziren.

Egun, lau kernel mota daude indarrean:

1. Nukleo monolitikoak (Monolithic kernel): hauek hardwarearen abstrakzioa errazten dute. Ez dute modulurik erabiltzen, hau da, kernela programatua dago dena kapa batean garatzeko. Honek azkarragoa egiten du, baina segurtasun aldetik galerak sortzen dira eta gainera prozesua konplexuagoa da. Adibidez, Linux edo Unix sistema eragileek honako nukleoak erabiltzen dituzte.

2. Mikronukleoak (Microkernel): funtzionalitatea hobetzeko, hardwareari abstrakzio bakunak eskaini eta zerbitzari aplikazioak erabiltzen dituzte. Sistema hau, aurrekoa baina seguruagoa da, baina motelagoa ere eta askotan erantzuna jasotzeko denbora dezente itxaron behar da. Adibidez, MAC OS X sistema eragileak , Mach mikronukleoa erabiltzen du.

3. Nukleo hibridoak (Hybrid kernel): mikronukleoen parekoak dira, baina kernela azkarragoa izan dadin, kernelaren espazioan kode gehigarria eskaintzen dute. Windowsek esaterako, Windows NT kernela erabiltzen du, mota honetakoa dena.

4. Exonukleoak (Exokernel): hardwarea zuzenean atzitzeko liburutegiak eskaintzen dituzte. Gaur egun Nemesis sistema eragileak honelako kernel mota erabiltzen du, hala ere, Nemesis ez da oso ezaguna.

Moduak

Gaur egungo mikroprozesadoreak (PUZ edo MPU) operazio modu anizkoitzak onartzen dituzte. PUZek kapazitate honekin bi modu eskaintzen ditu: erabiltzaile modua eta gainbegirale modua. Orokorrean, gainbegirale moduko funtzionamenduak baldintza gabeko sarrera baimentzen du makinaren baliabide guztietan, baita MPU aginduetan. Erabiltzaile moduan berriz, aginduen erabileran mugak ezartzen ditu, eta orokorrean, ez du baimentzen makina baliabideetarako zuzeneko atzipena.

Pizterakoan edo berrabiarazterakoan, gainbegirale moduan hasten da sistema. Kargatzen denean edo sistema eragilearen kernela hasten denean, erabiltzailearen modua eta gainbegirale moduaren muga ezar daiteke ( kernel modua bezala ezagutua).

Kernelak gainbegirale modua erabiltzen du behe-mailako lanetan, hardwareak murrizketa gabeko sarrera behar duenean. Esate baterako, memoriarako atzipena kontrolatu eta gailuekin komunikatu (disko unitateak eta bideo bistaratze dispositiboak adibidez). Erabiltzaile modua, berriz, beste guztirako erabiltzen da. Aplikazio programak, testu prozesadoreak eta datu baseen administratzaileak esaterako, erabiltzaile moduaren barruan lan egiten dute eta kernelaren kontrola gainditu behar dute makinaren errekurtsoak atzitzeko, zeinek gainbegirale moduan aldaketak sortzen ditu. Orokorrean, nukleo kontrol transferentzia lortzen da software etenaldien agindu baten exekuzioaren bitartez. Software etenaldiak aldaketa sortzen du erabiltzaile modutik gainbegirale modura eta kodea exekutatzen hasten da kontrola nukleoari emanez.

Erabiltzaile moduan, programak atzitu dezake mikroprozesadorearen aginduen murrizketen multzoa eta, orokorrean, ezin dute sistemaren funtzionamendua nahasi dezakeen instrukziorik exekutatu. Gainbegirale moduan, ezabatzen dira instrukzio exekuzioen murriztapenak, horrela nukleoak makinaren baliabideen atzipen mugagabea eduki ditzake.

Fitxategien edukiak

Gaur egungo sistema eragileetan fitxategiak byte sekuentzia batean daude antolatuta. Fitxategi baten formatua bere edukiak definitzen du, nahiz eta sistema eragile batzuetan formatua fitxategi-luzapenaren arabera adierazten den. Adibidez, testu fitxategi baten byteak (.txt Windows-en) ASCII edo UTF-8-rekin daude lotuta, irudi, bideo edo audio baten byteak, ordea, beste modu batera interpretatzen dira. Fitxategi mota gehienek metadatuentzako hainbat byte izan ditzakete ditzakete, fitxategiaren oinarrizko informazioa gordetzeko.

Fitxategi tamaina

Une konkretu batean fitxategi batek tamaina bat behar du izan, orokorrean byte kopuru batekin adierazita. Gaur egungo sistema eragileetan tamaina edozein zenbaki oso ez negatibo izan daiteke, sistemak ezartzen duen maximo bat arte.

Kasu berezi bat zero byteko fitxategiak dira; fitxategi hauek orain sortu berri diren fitxategiak, oraindik daturik ez dutenak, edo erroredun fitxategiak izan daitezke (bertan behera geratu den eragiketa baten ondorioz).

Datuen egituraketa fitxategian

Fitxategi baten informazioa pakete txikiagoz egon ohi da osatuta (normalean erregistro edo linea deituak) indibidualki desberdinak direnak, baina ezaugarri komunak dituztenak. Adibidez, soldata-orri bat gordetzen duen fitxategi batean, enpresa bateko langile guztien datuak eta bakoitzaren soldata aurki daitezke. Soldata-orriko erregistro bakoitzak langile bakar bati egite dio erreferentzia, eta erregistro guztiek ezaugarri komun bat dute, soldatekin daude erlazionatuta. Testu fitxategi batek lineak izan ditzake, inprimatutako paper batek dituen lerroak bezala.

Nola multzokatu informazioa fitxategi batean diseinuaren menpe geratzen da, eta ondorioz fitxategi baten informazioa egituratzeko modu desberdin asko daude. Fitxategi informatiko gehienak ordenagailu programek erabiliak dira, beraien funtzionamendurako sortu, aldatu eta ezabatzen dituzten fitxategiak. Programatzaileek erabakitzen dute zer fitxategi behar dituzten, nola erabiliko diren, eta (normalean) beraien izenak.

Kasu batzuetan programek erabiltzailearentzat ikusgarriak diren fitxategiak atzitzen dituzte. Adibidez, testu-tratamenduko programa batean, erabiltzaileak berak izendatu dituen fitxategiak aldatzen ditu. Nahiz eta fitxategiaren barne egitura testu-tratamenduko programak ulertzen duen formatu batean egon, erabiltzaileak fitxategiaren izena, kokapena eta bertan gordeko den testua aukeratzeko gaitasuna du.

Aplikazio askok bere datu guztiak fitxategi bakar batean gordetzen dituzte, barne adierazleak erabiliz informazio mota desberdinak desberdintzeko. Honen abantaila bat fitxategi kopurua murriztea da, errazago mugitu ahal izateko, edo zaharkitutako fitxategiak errazago kudeatzeko.

Eragiketak

Hauek dira programa batek fitxategi baten egin ditzakeen eragiketak:

  • Fitxategi berri bat sortu
  • Fitxategien baimenak eta atributuak aldatu
  • Fitxategi bat ireki, bere edukiak programarentzako ikusgarri egiteko
  • Fitxategi batetik datuak irakurri
  • Fitxategi baten datuak idatzi
  • Fitxategi bat itxi

Ordenagailu batean fitxategiak sortu, mugitu, aldatu, handitu, murriztu eta ezabatu daitezke. Kasu gehienetan konputagailuan exekutatzen diren programek egiten dituzte eragiketa hauek, baina erabiltzaile batek ere egin ditzake beharrezkoa balitz.

UNIX-moduko sistema eragileetan, erabiltzaile espazioko programek ez dute zuzenean fitxategiekin behe mailan lan egiten. Bakarrik kernel-ak egiten du lan fitxategiekin eta erabiltzailearekiko modu garden batean maneiatzen ditu eragiketa hauek. Sistema eragileak abstrakzio maila bat eskaintzen du, erabiltzaileak fitxategi bat bere izenaren arabera atzitu dezake, deskriptorea erabili gabe. Adibidez rm fitxategia aginduak ez du fitxategia bera ezabatuko, baizik eta fitxategi horren erreferentzia. Fitxategi batentzat hainbat erreferentzia egon daitezke, baina guztiak ezabatzen direnean, kernelak fitxategi horrek hartzen zuen lekua libre bezala tratatuko du gainetik beste edozer datu berridazteko. Datu hondar hau segurtasun arazo bezala kontsideratzen da, datuak ez baitira ezabatu eta ondorioz, berreskuratzeko aukera existitzen delako. Edozein ezabapen-seguru egiten duen programak sistema-deiak erabiliko ditu fitxategiaren datuak guztiz ezabatzeko.

Babesa

Sistema eragile modernoek fitxategiak nahigabe edo nahita sortutako kalteaz babesteko hainbat aukera eskaintzen dituzte. Hainbat erabiltzaile izan ditzaketen konputagailuek fitxategi-baimenak inplementatzen dituzte, fitxategiak edo karpetak nork aldatu, ezabatu edo sortu ditzakeen kontrolatzeko. Adibidez, erabiltzaile konkretu batek fitxategi edo karpeta bat irakurtzeko baimena soilik izan dezake, baina ez aldatu edo ezabatzekoa; edo beharbada irakurri eta aldatzeko baimena izan dezake, baina ez exekutatzekoa. Baimenak, fitxategi baten edukia erabiltzaile konkretu batek (edo gehiagok) bakarrik izan dezan erabili ahal dira.

Hainbat sistema eragilek inplementatzen duten beste babes mekanismo bat irakurtzeko-soilik flag-a da. Fitxategi baten hau aktibatuta badago (erabiltzaile edo programa batek hala nahi izan duelako), fitxategia arakatua izan daiteke, baina ezin daiteke bere edukia aldatu. Flag hau oso erabilgarria da aldatua edo ezabatua izan ez daitekeen informazio kritikoa gordetzeko, sistema eragileak bakarrik erabiltzen dituen fitxategi berezientzako, adibidez. Sistema batzuetan fitxategi ezkutuak ere inplementatzen dira, fitxategiak erabiltzailearentzako ikusezin bihurtzeko.

S/I kanalak

Edozein programa Unix edo Linux plataformetan Sarrera/irteera kanalak daude informazioa garraiatzeko. Sistema eragileek programatzaileari eskaintzen dizkion hiru kanal estandar daude; Sarrera Estandarra, Irteera Estandarra, printf -k egiten du, eta Errore estandarra, hemen idazten duguna zuzenean pantailara doa.

Prozesu batek ezaz bere sarrera sarrera estanderretik hartzen du, bere irteeera irteera estandarretik bidaltzen du eta errore mezuak errore estandar irteeratik.

Nola adierazten dira kanal hauek?

Liburutegi-errutinekin ari bagara; Stdin(Sarrera Estandarra), Stdout(Irteera Estandarra) eta Stderr(Errore estandarra). Sistema-deiekin ari bagara; 0(Sarrera Estandarra), 1(Irteera Estandarra) eta 2(Errore estandarra).

S/I Kanal estandarrak

Interfazeak

Edozein ordenagailuk, pertsona batek erabiliko badu, erabiltzailearen interfazea behar du. Izan ere, sistema eragilearen zerbitzuetara sarrera ematen dio erabiltzaileari. Shell deitu ohi zaio (oskola, ingelesez), sistema eragilearen nukleoaren inguruko geruzetako kanpokoena delako.[2] [3] Direktorio-egitura ikusten du eta zerbitzuak eskatzen dizkio sistema eragileari sarrerako gailuetatik (esaterako, teklatu, sagu edo kreditu-txartel irakurgailuetatik) datuak lortzeko eta irteerako gailuetan (esaterako, monitore edo inprimagailuetan) gonbitak, egoera-mezuak eta halakoak bistaratzeko.

Historikoki, erabiltzaile-interfazeen bi forma arruntenak hauek izan dira: komando-lerro interfazea (CLI, command-line interface), non komandoak lerroz lerro idazten diren, eta erabiltzaile-interfaze grafikoa (GUI, graphical user interface), non ingurune bisual bat dagoen, gehienetan WIMP erakoa ("windows, icons, menus, pointer", hau da, "leihoak, ikonoak, menuak, kurtsorea")[4]. Ohikoak ez badira ere, badaude beste aukera batzuk, tartean ahots bidezko interfazeak eta CLI kategorian sartzen ez diren beste testu-interfaze batzuk.

Interfaze grafikoak hasiera batean erosoagoak badira ere, komando-lerroen potentzialtasuna azpimarratzekoa da, batez ere sistemen administratzaileentzat, lan errepikakorrak automatizatzeko duten ahalmena, ataza bat ehun edo mila aldiz egin behar denean, banan banan egin beharrean, komando-fitxategi (script) bat presta daiteke automatikoki egin dadin. Are gehiago, ondo dokumentatu eta gordez gero, egoera berean behin eta berriro erabil daiteke. Bestalde, interfaze grafikoek baliabide asko behar ditzute (memoria, CPU...) eta horregatik zerbitzarietan ez erabiltzeko gomendatzen da.

Komando-lerro interfazeak

Komando-lerro interfazeak teklatu baten bidez idatzitako alfazenbakizko karaktereak erabiltzen ditu sistema eragileari aginduak eta datuak emateko. Komando interpretatzaileak karaktere-sekuentzia bat analizatu eta errore-mezu batekin erantzungo du ulertzen ez badu, edo beste ekintzaren bat hasiko du (programa bat kargatzea, fitxategiak zerrendatzea, erabiltzaile baten saioa hastea edo beste hainbat). Sistema eragile batzuek, UNIX-modukoek esaterako, askotariko shell programak dituzte, komando, sintaxi eta gaitasun desberdinekin.

Sakontzeko, irakurri: «Shell (informatika)»
Bash shellaren pantaila-irudia. Komando bakoitza gonbitaren ondoren idazten da, eta emaitza bere azpian agertzen da, pantailan beherantz eginez. Uneko komando gonbita behean dago.

CLI askok komando-sekuentziak gordetzeko aukera ematen dute, berrerabili ahal izateko. Sekuentziak datu-fitxategi batean gordetzen dira, eta CLIak erabiltzailea haiek tekleatzen arituko balitz bezalaxe jarraituko ditu. Batch fitxategi edo shell script horiek (sistema eragilearen arabera) behin eta berriro erabili ahal izango dira ohiko eragiketak automatizatzeko, adibidez, sistema bat berrabiatzean programa multzo bat hasieratzeko. Script modu hauetan egiturak, baldintzak, aldagaiak eta programazio-lengoaietako bestelako elementuak erabili ohi dira. Batzuetan, script lengoaia hauek aipatutako funtzioa betetzeko beharrezkoa dena besterik ez dute eskaintzen; beste batzuk, berriz, programazio-lengoaia sofistikatuak dira berez.

Ohikoa den beste ezaugarri bat komando-lerroen osaketa da, hau da, interpretatzaileak komandoak osatzea erabiltzaileak sartutako karaktere gutxi batzuetatik abiatuta. Historia funtzioa ere eskaini ohi da, erabiltzaileak aurretik idatzi dituen komandoak errepikatzeko, beharrezko aldaketak egiteko aukerarekin.

Sistema eragileari komando guztiak erabiltzaileak tekleatu behar zizkionez, ohikoena komando-izen motzak eta programen aukerak adierazteko sistema konpaktuak ziren. Izen horiek erabiltzaileek gogoratzeko zailak izan zitezkeen, eta hasierako sistemek ez zeukaten nahikoa biltegiratze-ahalmen gidaliburu zehaztuak emateko.

Interfaze grafikoak

Egungo sistema eragile gehienek interfaze grafikoak onartzen dituzte, eta askotan batekin datoz. Interfaze grafikoa nukleoan integratuta dago batzuetan, adibidez, Mac OSren lehen bertsioetan. Berez erabiltzaile-interfaze grafikoa sistema eragilearen zerbitzu bat ez bada ere, nukleoa horretarako prest egoteak erantzun-denborak hobetu ditzake, interfazearen irteera-funtzioek testuinguru aldaketa gutxiago beharko baitituzte. Beste sistema eragile batzuk modularrak dira; horietan, azpisistema grafikoa eta nukleoa bananduta daude.

Interfaze grafikoek lana errazten diete erabiltzaile hasiberriei, erabiltzeko errazak izatea baitute ezaugarri. Hala ere, zenbait desabaintaila dituztenez, GUI bat duten sistema eragile gehienek CLI bat ere eskaintzen dute.

Erreferentziak

  1. Scott Long. (2006 Maiatza 8). FreeBSD 6.1-RELEASE Announcement. FreeBSD. (Ingelesez)
  2. (Ingelesez) "The Internet's fifth man", Brain Scan, The Economist, Londres: Economist Group, abenduak 13, 2013, "Mr Pouzin created a program called RUNCOM that helped users automate tedious and repetitive commands. That program, which he described as a “shell” around the computer’s whirring innards, gave inspiration—and a name—to an entire class of software tools, called command-line shells, that still lurk below the surface of modern operating systems."
  3. (Ingelesez) Raymond, Eric S. (editorea). "shell". The Jargon File.
  4. (Ingelesez) Hinckley, Ken (abenduak 1, 1996). "Haptic Issues for Virtual Manipulation". Microsoft. "The Windows-Icons-Menus-Pointer (WIMP) interface paradigm dominates modern computing systems".

Kanpo estekak