Razgovor sa Linusom Torvaldsom - originalnim autorom Linuxa

Ovaj interview je preuzet iz časopisa PC Chip uz dozvolu autora.

Linus Torvalds, autor Linuxa:

Osjećam da sam ostavio trag

Autor: Radoslav Dejanović
    Naš najveći Linuxoljubac, Radoslav Dejanović, ovaj put je ulovio "glavnu zvjerku" - čovjeka koji je stvorio operativni sustav Linux i koji dan-danas koordinira razvoj njegove jezgre. Intervju je obavljen putem e-maila, u nekoliko navrata, tokom prosinca. 

Kako si se počeo baviti računalima i kako ti je palo na pamet raditi Linux?

Počeo sam s običnim kućnim računalima (kakva su u to vrijeme bila "normalna" u Finskoj). Sa 11 godina imao sam Commodore VIC-20, zatim sam napravio upgrade na Sinclair QL (neobična zvjerka s Motorola 68008 procesorom, vrlo intrigantnim multitasking operativnim sustavom i, za to vrijeme, prilično dobrom grafikom). Za razliku od mnogih nisam se ufurao u svijet PC kompatibilaca jer sam uvijek prezirao Intelove procesore, već sam koristio 32-bitni procesor u vrijeme dok je IBM PC puzao s groznom 16-bitnom segmentiranom arhitekturom u 8086 i kasnije u 80286 koji je jednostavno loš procesor. Umjesto toga od početka sam na Helsinškom univerzitetu, na Odjelu za računalne znanosti, radio na VMS-u i nakon dvije godine upoznao Unix. Unix je bio doista otkriće - prezirao sam DOS i trpio VMS zbog njegovih glupih ograničenja, ali Unix se pokazao kao zbilja dobra stvar. Otprilike u to vrijeme (oko 1990. godine), PC računala sa 386 procesorom počela su se pojavljivati. I dalje su koristila DOS, ali mene je zanimao hardver: konačno se pojavio jeftin i moćan stroj (386 na 33MHz je u to vrijeme bio zbilja moćan procesor). Tada sam konačno odlučio da želim imati PC, ali nikako ga nisam htio pogoniti MS DOS-om. Nažalost "pravi Unixi" za PC bili su izuzetno skupi - barem dvostruko skuplji od cijene računala za razumnu konfiguraciju s compilerom i korisnim dodacima, a ja sam bio samo siromašni student s jedva dovoljno novca za kupovinu računala. Kupovina "pravog Unixa" nije dolazila u obzir. Umjesto toga uzeo sam "Minix" - mali klon Unixa koji radi na PC (i još nekim) računalima, nadajući se da će mi biti dovoljan. Ispalo je da nije bio, ali sam ga i dalje koristio još pola godine dok sam razvijao svoj OS koji će postati Linux. Nisam zamislio Linux kao pravi OS, u stvari sam htio naučiti više o svom PC-u. Igrao sam se zanimljivim mogućnostima 386-ice (paging, task switching itd). Trajalo je nekoliko mjeseci dok se igra nije uobličila u stvaran OS, ali na kraju 1991. postao je dovoljno dobar da sam se mogao riješiti Minixa i koristiti Linux za ozbiljne stvari. Ukratko - prvi kontakt s Unixom imao sam na tečaju Unixa u jesen 1990. godine, kupio sam svoj prvi PC u siječnju 1991. a do kraja godine imao sam svoj vlastiti funkcionalan OS. To govori o tome kako je Unix zapravo jednostavan - manje od godine dana otkako sam ga upoznao do moje vlastite verzije. Naravno, Linux iz '91. nije niti približno tako dobar kao najnoviji, ali to je priča o samom početku. Linux ne bi bio to što jest bez Interneta.

Kako si (i što te je na to ponukalo) predstavio Linux na Internetu i što se zatim dogodilo? 

Kad sam započeo rad na Linuxu čitao sam veliki broj newsgrupa. Kao Linux danas, tako je i Minix imao podršku kroz newsgrupe. Zato mi je bilo potpuno prirodno ponuditi Linux korisnicima Interneta. Ali bila je to i "osveta" problemima koji su me gnjavili kad sam pokušavao nabaviti Unix za svoje računalo - htio sam omogućiti drugima da ne moraju prolaziti proces koji sam ja prošao. Zato sam htio učiniti ga besplatnim i dostupnim (za sve ostale siromašne studente), a davao sam ga zajedno s izvornim kodom jer mi se sviđa ideja nabavke programa zajedno s izvornim kodom. Ispalo je da je to bila najbolja odluka koju sam mogao donijeti - učinio sam dosta tehnički dobrih odluka, ali najbolja odluka nije imala veze s tehnikom - ona da preko Interneta omogućim drugima da se igraju Linuxom. To je svakako jedan od bitnih dijelova priče o uspjehu Linuxa.

Jesi li ikad pomišljao da bi mogao načiniti svjetski poznat (i priznat) OS? Da nisi načinio Linux, što bi radio u životu?

 Ne, na početku nisam mislio da bi Linux mogao postati tako poznat kao danas, pa čak ni dvije godine od početka projekta. Teško je reći što bih danas radio da nisam načinio Linux - vjerojatno bih negdje bio programer, ali vjerojatno ne na nečemu tako zanimljivom poput Linuxa, a vjerojatno bih i teže našao dobar posao. U jednom smislu Linux me je usporio - primjerice trebalo mi je duže nego što sam planirao do diplome na Helsinškom univerzitetu. No zahvaljujući Linuxu s univerziteta sam izišao s boljim znanjem programiranja i boljim profilom. Rijetki su ljudi koji odmah nakon završetka obrazovanja mogu birati posao koji žele raditi.

Što je, po tebi, najbolja i najlošija stvar u Linuxu?

 Svakako najbolja stvar je zajedništvo. Iako i tu postoje loši aspekti, predivno je komunicirati s mnoštvom ljudi i poznavati veliki dio njih, čak i kad ih poznajete samo preko elektroničke pošte, a vrlo rijetko osobno srećete. Najgora stvar? Ne znam! Provodim jako mnogo vremena uz Linux i povremeno pomislim kako bi bilo dobro odmoriti se malo od svega, ali bi to ozbiljno poremetilo moj ritam rada (a morao bih imati i brdo vremena nakon odmora samo da odgovorim na tone elektroničke pošte). S druge strane to se ne događa prečesto i puno je rjeđe od osjećaja kako je dobro činiti stvar do koje je stalo mnogima. Jedna od najboljih stvari je i što tamo negdje postoje ljudi koji koriste Linux i ovise o tome da on radi dobro i pouzdano. Vjerojatno neću ući u povijest kao jedan od najvećih ljudi svijeta, ali osjećam da sam učino nešto - ostavio trag među ljudima, učinio nešto što će nekome život učiniti boljim. To je krasan osjećaj, i sam taj osjećaj vrijedan je truda koji sam uložio u Linux.

Danas dosta ljudi živi od Linuxa. Kao otac OS-a, koliko zarađuješ na Linuxu?

 I dalje ne zarađujem direktno od Linuxa. Moj posao u Transmeti nije uopće vezan uz Linux, a to je upravo ono što želim jer tako nikad neću doći u situaciju da razmišljam o novcu vezanom uz Linux - sve moje bavljenje Linuxom tako može biti u potpunosti tehnički orijentirano, bez ikakvih marketinških utjecaja. Ipak Linux mi indirektno donosi novac - primjerice neki ljudi su mi poštom slali čekove, osvojio sam nekoliko nagrada za Linux itd. To nije mnogo, ali pošto bih to ionako radio besplatno, još je moćniji osjećaj kad mi netko pošalje sto dolara zato što on to želi, a ne zato što mora.

Pošto je Linux besplatan, što misliš o onima koji na njemu zarađuju, poput firmi koje prodaju komercijalne distribucije Linuxa i ljudi koji rade komercijalne programe za Linux?

Ti su mi ljudi jako dragi. Njihovi prioriteti drugačiji su od nas koji razvijamo kernel i to je dobro - tako je sistem uravnoteženiji. Primjerice, kad RedHat proda Linux CD, u njega uloži mnogo truda i vremena za uljepšavanje detalja: lijepe instalacije, administracije itd. To su stvari koje me nikad nisu zanimale, ali su potrebne da bi Linux bio prihvaćen među ljudima koji bi ga rado koristili, ali se ne žele baviti tehničkim detaljima. Mislim da je svaki OS koristan onoliko koliko je upotrebljiv - dobre karakteristike su poželjne, ali OS treba biti načinjen da se prilagodi korisniku, a ne da prisiljava korisnike da rade onako kako OS to želi. Mislim da je Linux vrlo dobro pogodio ravnotežu između tehničke kvalitete i ljubaznosti prema korisniku, a komercijalni proizvođači svakako su pridonijeli tome.

Što je ključ koji će Linuxu omogućiti da postane najšire prihvaćen OS i kakva je u tome uloga komercijalnih proizvođača?

Mislim da su komercijalni proizvodi važni, ali ne nužno. Doista je potrebno držati ravnotežu; ako OS rade samo tehnički napredne osobe, obično to ispadne OS koji je koristan samo tehnički naprednima, a kad su važni samo komercijalni ciljevi dogodi se bljuzga iz Redmonda - Microsoft. Doista je nužno raditi na obje strane i napraviti kvalitetnu ravnotežu.

Kako zamišljaš Linux u budućnosti?

 Ne pokušavam raditi velika predviđanja o budućnosti jer je razvoj Linuxa uvijek bio tijesno vezan uz trenutne potrebe a potrebe se tako brzo mijenjaju da je nemoguće raditi dugoročne planove. Takav pristup omogućuje nam brzo reagiranje na nove okolnosti - nemamo zacrtan plan za narednih nekoliko godina, već ljudi rade na onome što je važno sad i ovdje. Kao primjer, prije samo dvije godine nisam smatrao SMP (višeprocesorski sustavi, op. prev.) bitnom stavkom jer su SMP strojevi bili rijetki. No to se promijenilo puno brže nego što sam pretpostavljao a Linux se prilagodio tome i brzo dobio SMP mogućnosti.

Ako Linux ikad postane najrašireniji OS, i ne samo na Intel procesorima, hoće li postati spor i nestabilan kao neki drugi vrlo poznati OS-i?

 Neće, barem se nadam. U neku ruku nadam se da nikad neće postojati samo jedan jedini vladajući OS jer ne vidim potrebu za tim. Različiti ljudi žele raditi različite stvari a mene ne straši Microsoft s njihovim operativnim sustavima. Jedini problem s njihovim OS-ima je da su toliko tehnološki loši, a ogroman broj ljudi gotovo je prisiljen koristiti ih samo zato što je Microsoft toliko dominantan na tržištu. Dominacija na tržištu uvijek je loša za konkurenciju, a konkurencija je dobar lijek protiv uspavljivanja proizvođača. Nadam se da će u budućnosti postojati nekoliko različitih verzija Unixa, a možda će i Windows NT imati tržište tamo gdje će ga ljudi trebati (ne mogu se sjetiti niti jednog područja, ali ja sam ionako pristran).

Hoćemo li vidjeti mikrokernel verziju Linuxa?

 Ne vjerujem u mikrokernele. Svi argumenti u prilog mikrokernelima koje sam čuo ili nisu posebno jaki ili su jednostavno laži. Argumenti su otprilike:
  • "Jednostavniji za razvoj". To je očito sranje, što dokazuje činjenica da još nitko nije napravio mikrokernel koji je zbilja dobio široku popularnost. Mikrokerneli imaju dosta svojih problema, često kompliciranih trčanjem za performansama.
  • "Modularan je". Ne vidim u čemu je prednost mikrokernela nad kernelom koji može koristiti module.
Itd, itd. Jednostavno nema posebnog razloga za mikrokernel i problemi koje stvaraju puno su gori od rješenja koja obećavaju ponuditi. Primijetite da Linux već ima dosta mogućnosti koje proizvođači mikrokernela prisvajaju kao svoje (kernel moduli i sl.), ali te mogućnosti zapravo nisu mogućnosti samo mikrokernela već općenite programerske stvari.

Hoće li se uskoro dogoditi veći pomak u verziji kernela, kakav se dogodio između 1.2.x i 2.0.x? Kakav je običaj davanja verzija kernelima?

 Ne, vjerojatno neće biti većih pomaka u verzijama u skorije vrijeme, u svakom slučaju ne za sljedeću verziju - ona će biti 2.2.x. Razlog za promjenu kernela 1 u 2 su velike novosti koje su uvedene: dvojka je prvi kernel potpuno višeplatformski (Intel 386+ i DEC Alpha) i prvi je koji podržava SMP. Novi kernel 2.2.x podržavat će dosta novih arhitektura (MIPS, PowerPC, Sparc, Sparc64, ARM itd, riječ je o kernelu, Linux za većinu navedenih procesora već postoji, prim.prev.) a i SMP podrška bitno je poboljšana, ali razlog zašto smo sa 1.2 išli na 2.0 je koncepcijski velik, dok je razlika između 2.0 i 2.2 samo u poboljšavanju već postojećih rutina.

Priča se o mogućnostima da se u kernel ugrade grafičke rutine niskog nivoa, što bi standardiziralo neke stvari, pa i ubrzalo. Kao veliki šef projekta, što misliš o integriranju grafičkih rutina u kernel?

Neke grafičke rutine već su unutra. Primjerice, na nekim računalima ne postoji znakovno orijentirana grafika, poput tekst moda na PC računalima i prikaz se mora riješiti grafičkim rutinama. No u PC svijetu mislim da bi grafičke rutine trebale biti što je moguće dalje u korisničkom prostoru jer PC računala imaju tako različite grafičke kartice. Ne samo da postoji veliki broj različitih VGA kartica, one rade na vrlo različite načine. Sve imaju osnovnu VGA emulaciju, ali za imalo zahtjevnije stvari potrebno je raditi posebnu podršku za svaku karticu. Općenito pravilo za grafiku (i mnoge druge stvari) je stoga držati što je moguće manje toga u kernelu, a probleme rješavati u korisničkom prostoru. X11 nas dobro služi i pruža nam dosta standardiziran i prilično dobar GUI. Mislim da ne bismo trebali niti željeti programirati neki drugi interface jer je X tako portabilan.

Što misliš o Gatesu i Allenu, o Jobsu i Vozniaku kao osobama, ne kao poslovnim ljudima?

 Ne znam. Nikad nisam sreo ni jednog od njih, a teško je suditi prema tuđim iskustvima. Ne bih čak niti razmišljao o tome.

Za kraj, što bi poručio "običnim ljudima"?

 "Obični ljudi"? Hmm, nemam neku posebnu poruku, nisam načinio Linux zbog bilo kakve ideologije, već zato što sam to htio učiniti i jer me to tako zanimalo i zabavljalo. Zato nemam nikakvu "veliku poruku za mase". Nadam se da ljudi Linux smatraju korisnim i uživaju u njemu. I umjereno se nadam da će Linux potaknuti druge da učine nešto slično - ne u smislu da svi krenu raditi nove operativne sustave, već da će raditi dobre programe koje će drugi ljudi moći koristiti i uživati u njima.


Tko je tvorac Linuxa?

Linus Torvalds jedan je od rijetkih ljudi koji se može pohvaliti da je od ničega uspio stvoriti nešto. Njegova sudbina dosta sliči danima mladih Gatesa, Jobsa, Vozniaka i ekipe, ljudi koji su po garažama sastavljali računala i (nesvjesno) pripremali svijet na buduću informatičku revoluciju. Iako je danas situacija potpuno drugačija, ovaj Finac koji je nedavno još bio student, a sad živi i radi u Americi, možda gradi temelje za novu informatičku revoluciju (u revoluciji), odmak od softvera koji je glomazan, spor i skup prema softveru koji je kompaktan, brz i besplatan. Njegov početak je klasična priča o klincu koji se zanima za računala i zatim napreduje prema sve jačim procesorima i sve većim programima. No onaj dio koji je obilježio Linusov put je stavljanje Linuxa na raspolaganje cjelokupnoj Internet zajednici, potpuno besplatno, zajedno s source kodom. Zahvaljujući tome Linux je postao najpopularniji Unix ikad, stekao mnoštvo poklonika i mnoštvo priznanja. Sam Linus dobio je za svoje djelo preko nekoliko priznanja, među posljednjim Nokiinu nagradu za dostignuća i Intelovu nagradu za najažurnije riješen problem F00F buga Pentiuma. Linusov osnovni posao u cijelom Linux projektu sada je koordinacija razvoja Linux kernela i (kako voli napomenuti) njegova supruga Tove i kćer Patricia Miranda (od milja nazvana Linus v2.0 .

? PC Chip 1998. Sva prava pridržana.



Ovaj članak dolazi od HULK
http://www.linux.hr

URL ove priče je:
http://www.linux.hr/modules/sections/index.php?op=viewarticle&artid=2