Historia Linuksa
Aby przedstawić historię jednego
z najpopularniejszych systemów operacyjnych opartych na licencji GPL należy
przedstawić sobie system UNIX, który bezpośrednio wiąże się z Linuksem. Unix to
wielozadaniowy system operacyjny stworzony przez firmę AT&T pod koniec lat 60
ubiegłego stulecia. Został on napisany w języku C, który był standardowym
językiem, jeżeli chodzi o wielozadaniowość systemów. Unix początkowo był
rozprowadzany za darmo miał również otwarty kod, co pozwalało na jego
modyfikowanie. W 1979 roku firma AT&T zaczęła pobierać opłaty za udostępnianie
kodu źródłowego. Spowodowało to bezpośrednio powstanie wielu odmian tego systemu
(np. SunOS, Xenix, Ultrix). Jednym z głównych minusów tego OSu był fakt, że jego
obsługa była dość trudna oraz do uruchomienia systemu potrzebna była dość spora
moc obliczeniowa, na którą mogły sobie pozwolić tylko instytucje i uniwersytety.
Duża ilość systemów, jakie powstało na bazie Unika nie była ze sobą
kompatybilna, to oznaczało, że program napisany dla jednej platformy nie działał
na drugiej. Aby to ujednolicić organizacja IDEE stworzyła Standard Posix, był to
dokument, który definiował i opisywał poszczególne części systemu, Uniksowego,
aby zachować zgodność pomiędzy poszczególnymi wersjami.
Sam Linus Torvalds dużo
czasu prawdopodobnie przebywał ze swoim dziadkiem, który posiadał komputer
Commodore VIC-20 (pojawił się wcześniej niż C64). Sam komputer był czymś bardzo
inspirującym dla młodego Linusa. Początkowo pisał on programy w BASIC, co bardzo
go satysfakcjonowało. Dość dużym przełomem dla młodego fińskiego studenta był
fakt wprowadzenia na rynek nowego procesora firmy Inlet oznaczonego 80386. Gdy
Linus był już na studiach kupił sobie komputer właśnie z tym procesorem.
Początkowo korzystał z DOSa, lecz bardzo utrudniało mu to pracę, gdyż system był
jednozadaniowy a sam preferował Unika, gdyż maił z nim kontakt na maszynach na
uczelni. Zainspirował go, Minix, który miał zlikwidować utrudnienia płynące z
obsługą Unika, lecz Minix był dość drogi. Młody Student chcaił stworzyć system, który miałby zastąpić Unixa i
Minixa i jednocześnie być dość prosty i wielozadaniowy, wziął się więc do pracy. Porównując dwa systemy
operacyjne Uniksa i Miniksa sam stworzył pierwsze jądro (kernel) systemu 0.01 w
sierpniu 1991 roku. Prawdopodobnie początkowo było ono pisane w Asemblerze, lecz
później zostało ono przepisane w języku C. Do pełnego sukcesu jeszcze dużo
brakowało. Jądro nie umiało obsługiwać np. stacji dyskietek, a zawierało jedynie
proste sterowniki. Autor po stworzeniu kilku następnych wersji jądra postanowił
opublikować tą informację w Internecie. Jądro Linuksa bazuje na Wolnym
Oprogramowaniu, tak więc wiele osób, które ściągnęło kernel dokonało własnych
poprawek. Jądro systemu zaczęło się błyskawicznie rozwijać. W 1993 roku pojawiła
się wersja jądra licząca 100 tyś linijek kodu i około 20 tyś użytkowników.
Postępu już nie można było zatrzymać. Na drodze nowemu wolnemu systemowi już nic
nie mogło zagrozić. W 1994 roku pojawiło się jądro 1.0 i pierwsze firmy, które
zaczęły je rozprowadzać Caldera i Red Hat. Teraz skąd wzięła się nazwa samego
systemu? Otóż Linus Torvalds proponował nazwę Freax, która w swojej nazwie
zawierała free (wolny), freak (dziwak) i X jak Unix. Natomiast inne zdanie miał
Ari Lemmke, który umieścił system na swoim FTP. Zaproponował więc nazwę Linux,
która chyba o wiele lepiej brzmi niż Freax. Początkowo Linux był pisany na
maszyny typu 386 i 4 MB RAM, tak więc teoretycznie możemy go uruchomić na
komputerze procesorem 50 MHz. Obecnie aby w pełni korzystać z systemu potrzebny
jest komputer przynajmniej 400 MHz i 128 MB RAMu i trochę gigabajtów wolnej
przestrzeni na dysku. Natomiast skąd wzięło się logo systemu? W 1996 roku na
pewnej liście dyskusyjnej pojawił się nie oficjalny konkurs na logo systemu.
Prace były naprawdę przeróżne. Najczęściej były przedstawiane zwierzęta np.
rekiny, które utożsamiały najlepsze strony systemu, czyli szybkość,
niezawodność. Jednak wybór padł na niepozornego pingwinka. Prawdopodobnie
wszystkie wcześniejsze propozycje nie pasowały do autora systemu, a miły
pingwinem był prawdopodobnie skojarzony z przytulaną. Zaletą Linuxa też jest to,
że działa poprawnie na innych procesorach niż Intel, nie chodzi mi tutaj wcale o
AMD czy VIA, lecz o procesory typu SPARC, DEC Alpha, M68k. Liczba użytkowników,
co roku wzrasta, a do 2010 prawdopodobnie wzrośnie nawet kilku razy. Wiemy
natomiast dziś, że Linux jest jednym z najbardziej popularnym systemem, jeżeli
chodzi o zastosowanie sieciowe. Według sądy przeprowadzonej wynika, że tylko 1%
użytkowników domowych korzysta z niego regularnie. Wszyscy użytkownicy mają
nadzieję, że się to w krótkim czasie zmieni.
Hello everybody out there using minix -
I'm doing a (free) operating system (just a hobby, won't be big and
professional like gnu) for 386(486) AT clones. This has been brewing
since april, and is starting to get ready. I'd like any feedback on
things people like/dislike in minix, as my OS resembles it somewhat
(same physical layout of the file-system (due to practical reasons)
among other things).
I've currently ported bash(1.08) and gcc(1.40), and things seem to work.
This implies that I'll get something practical within a few months, and
I'd like to know what features most people would want. Any suggestions
are welcome, but I won't promise I'll implement them :-)
Linus (torvalds@kruuna.helsinki.fi)
PS. Yes - it's free of any minix code, and it has a multi-threaded fs.
It is NOT protable (uses 386 task switching etc), and it probably never
will support anything other than AT-harddisks, as that's all I have :-(.