Generale

Porijeklo pojma 'računarska greška'


Izraz "računarska greška" ili "softverska greška" sveprisutan je u IT jeziku, ali odakle taj izraz zapravo dolazi? Iako moderne "greške" postoje tek od pronalaska računara i softvera, upotreba izraza greška je zaista mnogo starija.

U sljedećem članku zaronit ćemo u povijest pojma i istražiti njegovo porijeklo na engleskom jeziku. Takođe ćemo istražiti njegove rane upotrebe i porast popularnosti u engleskom leksikonu.

Koja je definicija izraza "računarska greška"?

"Računarska greška" ili "Softverska greška" općenito se definira kao:

"U IT-u greška se odnosi na grešku, grešku ili manu u bilo kojem računarskom programu ili hardverskom sistemu. Greška daje neočekivane rezultate ili dovodi do neočekivanog ponašanja sistema. Ukratko, to je svako ponašanje ili rezultat koji program ili sistem dobija, ali nije dizajniran da to učini. " - Techopedia.

Većina grešaka nastaje zbog grešaka i grešaka koje programeri naprave prilikom izrade izvornog koda ili ukupnog dizajna, ili unutar komponenata i operativnih sistema koje koriste dotični programi.

Neke su rezultat pogrešaka u prevođenju između različitih jezika, koje su napravili kompajleri, a koje proizvode netačan ili nečitljiv kod.

Izraz "buggy" često se pripisuje programima koji sadrže veliki broj grešaka i / ili grešaka koji ozbiljno uklapaju funkcionalnost softvera.

Mnogo na živce mnogih programera i korisnika, "greške" mogu pokrenuti greške koje proizvode efekte mreškanja. Softverske greške mogu biti suptilne prirode (tj. Ograničene na snazi ​​- poput gumba baze podataka koji ne reagira) ili mogu uzrokovati pad ili zamrzavanje programa.

Druge greške dovode do problema sa sigurnošću i mogu, na primjer, omogućiti zlonamjernom korisniku da zaobiđe zaštitni zid kako bi dobio neovlašteni pristup ili privilegije. Ali treba napomenuti da računarski virusi nisu greške; računalni virusi se repliciraju, dok se greške ne.

Kao što bilo koji programer zna, vrlo je malo, ako ih uopće ima, programa koji su potpuno bez grešaka, čak i kod onih koji su opsežno testirani.

Iz tog razloga (kao i dodavanje nove funkcionalnosti), većina softverskih paketa često će imati niz "točkastih ažuriranja" izdanih tokom vremena, kako bi ispravili "greške" i greške kad se pronađu.

"Računarske greške" mogu imati ozbiljne implikacije u stvarnom svijetu

Iako je velika većina buba prilično benigne prirode, bilo je slučajeva da su oni imali katastrofalne posljedice.

Na primjer, tijekom 1980-ih, greška u kodu koji je kontrolisao aparate za terapiju zračenjem Therac-25 rezultirala je smrću pacijenata. In 1996, prototip rakete Ariane 5 Evropske svemirske agencije (ESA) morao je biti postavljen da se sam uništi manje od jedne minute nakon lansiranja, zbog softverskih grešaka u ugrađenim sistemima za navođenje.

Poznato, u 1994, helikopter RAF Chinook srušio se u Mall of Kintyre, ubivši sve 29 posada ukrcan. Iako se izvorno pripisuje pilotskoj grešci, kasnije istrage, posebno od strane Computer Weekly, uspješno utvrdio da je uzrok softverska greška u sistemima upravljanja motorom aviona.

Zanimljivo je da a 2002 studija Nacionalnog instituta za standarde i tehnologiju američkog Odjela za trgovinu zaključila je da:

"Na osnovu anketa programera i korisnika, nacionalni godišnji troškovi neadekvatne infrastrukture za testiranje softvera procjenjuju se u rasponu od 22,2 do 59,5 dolara milijarde. Preko polovine ovih troškova snose korisnici softvera u obliku izbjegavanja grešaka i ublažavanja. Preostale troškove snose programeri i odražavaju dodatne resurse za testiranje koji se troše zbog neadekvatnih alata i metoda za testiranje. "

Koja je prva upotreba izraza "bug"?

Iako je izraz "računarska greška" relativno nov (jer je na IT primijenjen tek s porastom računara), termin "greška" se već neko vrijeme koristi u neformalnoj inženjerskoj terminologiji.

Koncept, iako ne termin, možda datira još iz davnina 1843 kada je Ada Lovelace govorila o mogućnosti problematičnih programskih "karata" korištenih u analitičkom mehanizmu Charlesa Babbagea.

U 1843 pismo, napomenula je:

"Postupak analize morao je biti jednako izveden kako bi se analitičkom mehanizmu pružilo potrebnooperativni podataka, te da ovdje također može biti mogući izvor pogreške. Doduše da je stvarni mehanizam nepogrešiv u svojim procesima,kartice može mu dati pogrešne naredbe. "

Ko je pronašao prvu grešku u računaru?

Prva zabilježena upotreba izraza "greška", u vezi s greškom ili neispravnošću u mašini, dolazi od nikoga drugog do od Thomas Edisona. U 1878 pismo saradniku (koje je prodato na aukciji 2018. godine), napomenuo je:

„Djelomično ste bili u pravu, pronašao sam„ bubicu “u svom aparatu, ali nije bila u samom telefonu. Bio je iz rodacallbellum. ’Čini se da insekt pronalazi uvjete za svoje postojanje u svim telefonskim aparatima za pozivanje.”

To se odnosilo na Edisonov pokušaj da razvije svoj četverostruki telegrafski sistem za prenos i prijem do četiri odvojena telegrama na jednoj žici. Pronašao je rješenje ovog problema koji je nazvao "zamkom bugova".

Edison je taj pojam takođe često koristio u svojim kasnijim spisima, a biografija Edisona zabeležila je često pojavljivanje izraza "buba" u svojim sveskama.

U novembru iste godine napisao je Theodoreu Puskasu:

„Tako je bilo u svim mojim izumima. Prvi korak je intuicija i dolazi s rafalom, a zatim se pojave poteškoće - ovo se izda i [to je] onda se "Bube" - kako se nazivaju tako male greške i poteškoće - pokazuju i mjesecima intenzivnog gledanja, učenja i rada su neophodni prije nego što se sigurno postigne komercijalni uspjeh ili neuspjeh. "

Šta je inspirisalo izraz "računarska greška"?

Mnogo prije nego što su računari i softver uopće bili zamišljeni, pojam "greška" bio je uobičajen za opisivanje grešaka u mehaničkim sistemima.

Ali stvarno obrazloženje prve upotrebe izraza "bug" samo je po sebi malo maglovito, ali svoje porijeklo može imati u ranom engleskom jeziku. Neki pretpostavljaju da je to možda izvedeno iz srednjeg engleskog bugge što čini osnovu za izraze "bugbear" i "bugaboo".

U tom smislu, riječ bug dijeli zajednički izvor za izraze poput 'goblin' (Böggeiz donjonjemačkog jezika), a može dijeliti i lingvističku vezu s terminom "gremlin" koji se također često koristi za opisivanje naizgled misterioznih mehaničkih kvarova (kao u "gremlin u radovima") koji su prvi put koristili piloti RAF-a tijekom Drugog svjetskog rata.

Koje god da je podrijetlo riječi, u nekom trenutku sredinom 1800-ih postala je popularan izraz za mehaničke kvarove čiji izvor tek treba identificirati ili izolirati i ispraviti? Od ovog trenutka, riječ bug se često koristila u inženjerskom žargonu.

Inženjeri su pojam često upotrebljavali tokom kasnih 1800-ih, kao što smo vidjeli, dok je on naizgled ušao u uobičajenu upotrebu oko prijelaza stoljeća.

Jedan zabavan primjer je popularna igra mehaničkog flipera s početka 20. stoljeća pod nazivom Baffle Ball koja se ponosno reklamirala u1931 s izrazom "U OVOJ UTAKMICI NEMA PROGRAMA!". Pojam je takođe bio u uobičajenoj upotrebi tokom Drugog svjetskog rata u odnosu na opremu koja je bila mučena zbog kvarova.

Ali postojao je jedan značajan influencer koji je taj pojam vjerovatno učinio nevjerovatno popularnim u svijesti šire javnosti - pokojni, veliki Isaac Asimov. Izraz je koristio u vezi sa problemima s robotom u 1944 kratka priča pod nazivom "Uhvati tog zeca".

To je kasnije uvršćeno u njegovu osnovnu kolekciju dućana Ja, Robot. U priči je napisao: "Američki su roboti morali vaditi bube iz više robota, a grešaka je bilo puno, a uvijek je ostalo najmanje pola tuceta buba za terensko testiranje."

Prema ACM-ovoj digitalnoj biblioteci, pojam bug se takođe pojavljuje u tri rada iz 1952.

Zanimljivo je da termin "otklanjanje grešaka" takođe prethodi doba računara. Neki izvori spominju termin koji se koristi u ispitivanju avionskih motora tokom Drugog svjetskog rata.

By 1963 pojmovi "greška" i "otklanjanje grešaka" bili su dovoljno uobičajeni da se spominju u Kompatibilni sistem za podjelu vremena(CTSS) ručno bez ikakvog očiglednog pokušaja objašnjenja njihovog značenja.

Istraživački članak koji je napisala povjesničarka znanosti Peggy Kidwell, naslovljen "Stalking the Elusive Computer Bug", i objavljen uIEEE Anali istorije računarstva, svezak 20, detaljnije govori o etimologiji "bug" i "debug".

Kako se zvala prva "računarska greška"?

Iako je ovo često pitanje, pomalo obmanjuje. Uglašavajući ranu prošlu upotrebu termina u inženjerskom žargonu (koji je u svakom slučaju bio pre elektroničkog računara), prva stvarna računarska greška zapravo nije nazvana per se.

Poznato je da je zabilježena prva instanca kompjuterske "greške" 15:45 (15:45) na 9. septembra 1947. Ova "bubica" bila je stvarni moljac iz stvarnog života, pa, bivši moljac, koji je izvučen na relej broja 70, ploču F, Harvard Mark II Aiken Relay Calculator.

Ova "greška" (koja a raspon krila od dva inča (5 cm)je sačuvan iza komada ljepljive trake na brodskom dnevniku mašina sa sada ovjekovječenom frazom "[Prvi] stvarni slučaj pronađene greške".

Dakle, prva „računarska greška“ je u stvari bila doslovna greška.

Čini se da je uzrok pojave greške bio u kasnonoćnoj smjeni članova programskih timova, koji su uključivali pionirskog informatičara i bivšu kontraadmiralku američke mornarice Grace Hopper. Član tima je noću ostavljao otvorene prozore sobe. To je bilo više nego dovoljno da propusti moljca, kojeg su privlačila svjetla u sobi i vrućina kalkulatora da se ugnijezdi u 'gubbinima' Harvarda Mark II, gdje je dočekao svoj nesretni kraj.

Moljci i drugi insekti imaju tendenciju da pokazuju ponašanje koje se naziva poprečna orijentacija. To je način na koji imaju tendenciju navigacije leteći pod relativnim uglovima do udaljenog izvora svjetlosti.

Milionima godina ova strategija dobro je služila noćnim insektima omogućavajući im navigaciju po Mjesečevoj svjetlosti. Naravno, s pojavom električne energije i umjetnog osvjetljenja često se zbune.

Na 9. septembra 1947, Hopper je pronašao grešku na Marku II mrtvom moljcu koji je zarobljen u releju. Insekt je pažljivo uklonjen i zalijepljen trakom za dnevnik, a pojam računarske greške korišten je za opisivanje incidenta.

"Ovaj dnevnik, zajedno sa priloženim moljcem, dio je kolekcije Smithsonian National Museum of American History, iako trenutno nije izložen.

Iako je sigurno da operatori s Harvarda Mark II nisu uvrstili termin „bug“, pretpostavlja se da je incident doprinio širokoj upotrebi i prihvatanju tog izraza u leksikonu računarskog softvera. "- Graham Cluley

Od sada se pojam "greška" uvodi u opštiju upotrebu kao način za opisivanje bilo kakvih grešaka ili grešaka u programu.

Međutim, kao što je Hopper često spominjala, niti je skovala frazu niti je sama pronašla dotičnog insekta. To je bilo do ostalih inženjera u timu.

Među tim inženjerima bio je William "Bill" Burke (koji je kasnije radio u Laboratoriji za pomorsko oružje, Virginia). Bill i njegove kolege očito su bili dobro upućeni u značenje pojma i Hopper će kasnije imati veliko zadovoljstvo prisjetivši se priče.

Kako očistiti grešku sa računara?

Iako je greška u računaru obično neki oblik greške u kodiranju, ljudi je ponekad zbunjuju sa zlonamernim softverom poput virusa ili drugog malvera.

Otkrivanje da je vaše računalo zaraženo virusom može biti noćna mora za većinu korisnika računara. S njima nije samo dosadno raditi, već može potrajati i potpuno uklanjanje s računara, a da ne spominjemo potencijalno opasne u pogledu vaših ličnih ili finansijskih podataka.

Iz tog razloga je neophodno da na računaru imate barem instaliran neki antivirusni i špijunski softver. Također je nevjerovatno važno da ih redovno ažurirate i osiguravate da budu postavljeni na rutinsko i automatsko skeniranje datoteka radi potencijalnih prijetnji.

Suprotno tome, greške su greške u kodu i ne prenose se s jednog računara na drugi, na isti način kao virus. Većina grešaka dolazi zbog grešaka napravljenih u dizajnu programa ili izvornom kodu ili korištenjem pogrešnog koda. Softverske greške mogu, međutim, dovesti do toga da se programi ponašaju onako kako proizvođač softvera nikada nije planirao. Greška Y2K čuveno je uzrokovala prikaz pogrešnog datuma, jer programi nisu dizajnirani da obrađuju datume nakon 1999. godine.

Iako je greška Y2K bila relativno bezopasna, neke softverske greške mogu predstavljati prijetnje koje su ozbiljne poput virusa. Greške mogu uzrokovati pad programa ili zamrzavanje računara. Oni također mogu pokrenuti greške koje mogu imati efekte mreškanja. Neke greške mogu utjecati na sigurnost i mogu, na primjer, omogućiti sajber kriminalcima neovlašteni pristup sistemu. Kad uđu, mogu instalirati malver ili ukrasti privatne podatke.

Za korisnike računara, greške se obično ne mogu pronaći ili ispraviti pomoću antivirusnog softvera. Često se popravljaju primjenom "zakrpe", dijela koda koji ispravlja grešku. Obično ih treba preuzeti od proizvođača. To se sada obično radi automatski, uz "ažuriranja". Za upornije probleme, ponekad je potrebno deinstalirati operativni sistem, a zatim ponovo instalirati verziju sa manje grešaka.

Za programere softvera greške su problematičnije. Iako su promjene potrebne za njihovo popravljanje često male i mogu uključivati ​​promjenu samo nekoliko redaka koda, postupak identificiranja koje linije točno treba popraviti može biti dugotrajan.

2015. godine istraživači sa MIT-a razvili su softver, nazvan CodePhage, čiji je cilj bio olakšati ovaj proces autonomnim popravljanjem programskih grešaka. Softver posuđuje kôd iz drugih programa, ne zahtijevajući pristup izvornom kodu, a može čak raditi i na različitim programskim jezicima. To bi programerima moglo uštedjeti hiljade sati programskog vremena i dovesti do mnogo stabilnijeg softvera.

Iako obično nisu toliko zlonamjerni ili ih je teško ukloniti kao virusi ili zlonamjerni softver, greške također mogu stvarati probleme dugo u budućnost. Mnogi programeri "popravili" su grešku Y2K 1999. korištenjem brzog popravka nazvanog "windowing", koji je tretirao sve datume od 00 do 20 kao iz 2000-ih, a ne iz 1900-ih. Problem je u tome što su se, kada je došla 2020. godina, neki od tih računara još uvijek koristili, a sada su se umjesto upotrebe datuma 2020. vratili na 1920. godinu.

WWE 2K20, profesionalna hrvačka video igra, prestala je raditi u ponoć 1. januara 2020. godine, iako su programeri igre uspjeli izdati popravak za preuzimanje u roku od 24 sata.

Za drugi komad softvera, Splunk, koji traži greške u računarskim sistemima koje koristi većina vodećih kompanija, takođe je utvrđeno da je ranjiv na problem s prozorima, ali kompanija je uspjela razviti zakrpu u roku od nekoliko dana.


Pogledajte video: Fizika za VII razred osnovne škole - Uvod u Fiziku (Decembar 2021).