10.09.2011 17:38
administracja linux
System operacyjny Linux – jego miejsce i możliwości
1. Wstęp
O żadnym  systemie
operacyjnym od 1995 roku nie mówiło się tak głośno jak o 
Linuxie. W świecie Unixa, Linux jest już zadomowiony na stałe. Od
 narodzin w 1992 roku minęło już 8 lat, z systemu tego korzysta
już  bardzo dużo osób, wykorzystują go inżynierowie,
naukowcy a przede  wszystkim młodzi entuzjaści systemów
operacyjnych dla których Linux stał  się orężem w walce ze
znienawidzonym wrogiem. Fakt, że jest za darmo  powoduje bardzo
szybki wzrost liczby użytkowników. W ostatnim roku 
systemem tym wreszcie zainteresował się świat wielkich
komputerowego  świata. Wielu producentów sprzętu i
oprogramowania z zadowoleniem  przyjęło alternatywę dla Windows i
zdecydowało się na wspieranie tej  platformy.
 Mówiąc
o systemie Linux nie sposób nie wspomnieć o nie nowym, a
tak  naprawdę dopiero teraz bardzo popularnym sposobie tworzenia
i  dystrybucji oprogramowania jakim jest open source. To dzięki
mechanizmom  zapewnionym przez twórców tej idei
system Linux w bardzo krótkim czasie  zdobył tak dużą
popularność. Linux zawsze, a na pewno przez  przynajmniej kilka
następnych lat, związany będzie z tym ruchem, dlatego  też
poświęciliśmy mu tak dużo miejsca. Niewątpliwie ruch open source 
bardzo wpływa na obecny rynek systemów operacyjnych a
niewątpliwie na  rynek oprogramowania.
 System operacyjny to
nie tylko jądro, o jego mocy stanowią również  programy,
które można w takim systemie uruchomić. W pracy tej
postaramy  się również pokazać zastosowania systemu.
Zamierzeniem pracy jest  pokazanie mocnych i słabych stron
Linuxa. Chcemy zwrócić uwagę na  zalety, konkretne
zastosowania , oraz na wady systemu
2. Historia systemu Linux
Geneza systemu
operacyjnego Linux związana jest z systemem UNIX. UNIX
powstał na początku lat  siedemdziesiątych kiedy Denis Ritchie i
Ken Thompson opracowali w  laboratoriach AT&T pierwszą wersję
systemu, którą następnie  przepisali w języku C. Kody
źródłowe początkowych wersji systemu były  bezpłatne,
dzięki czemu system stał się bardzo popularny szczególnie
w  środowiskach akademickich. Jednak od roku 1979 firma AT&T
zaczęła  pobierać opłaty licencyjne za kody źródłowe.
Spowodowało to, że wiele  firm, uniwersytetów zaczęło
tworzyć własne wersje systemu UNIX. W wyniku  takich działań
AT&T powstał wtedy, opracowany przez Uniwersytet 
Kalifornijski w Berkeley, system BSD (Berkeley Software
Distribution),  firma Sun Microsystems wypuściła SunOS, Microsoft
– Xenix-a. The Santa  Cruz Operation – SCO Unix.
Również firma AT&T wprowadziła do  sprzedaży swoją
wersję systemu System V ze swoim interfejsem  programowym.
Wielość różnych rozwiązań spowodowała chaos na rynku 
oprogramowania, poszczególne wersje aplikacji nie były ze
sobą  kompatybilne. Zaistniała więc potrzeba standaryzacji
systemu jak również  tworzonego dla niego oprogramowania.
Opracowania zbioru standardów  podjął się Instytut
Inżynierów Elektryków i Elektroników (
Institute of  Electrical and Electronics Engineers -IEEE) ,
który to opracował  standard POSIX (IEEE POSIX 1003) dla
unixowych systemów operacyjnych.  Normy te określają
poszczególne elementy całego systemu tak aby zachować 
zgodność programową poszczególnych wersji. Jeżeli
oprogramowanie i  system operacyjny przestrzega norm POSIX nie
powinno być większego  problemu z przenoszeniem oprogramowania
pomiędzy systemami.
 Systemy unixowe są z założenia
systemami wielodostępnymi i  wielozadaniowymi. Są to jednocześnie
systemy dość złożone, wymagające  dużych mocy obliczeniowych.
Początkowo wymagały one dużych i drogich  komputerów
mogących sprostać ich wymaganiom co zawęziło grono 
użytkowników do specjalistów ewentualnie
studentów kierunków  informatycznych. Komputery
domowe np. klasy PC w początkach swojego  istnienia nie mogły
sprostać wymaganiom systemu. Sytuacja ta zmieniła  się w momencie
pojawienia się procesorów klasy Intel 386 które już
 dawały możliwość pracy wielozadaniowej.
Za twórcę
systemu LINUX  uważa się Fina Linusa Torvaldsa, który jako
student informatyki pracując  nad trybem chronionym procesora
80386 stworzył kilka programów  działających w systemie
Minix (Minix – typowo edukacyjny wielozadaniowy  system
operacyjny stworzony przez A. Tanenbauma rozprowadzany na 
podstawie licencji GNU). Postanowił on stworzyć własne jądro
nowego  systemu. Wykorzystał do tego celu wiele gotowych
rozwiązań wziętych z  systemu Minix, dzięki czemu zaoszczędził
wiele czasu gdyż nie musiał  tworzyć jądra od podstaw. W wyniku
czego kiedy to w sierpniu roku 1991  ogłosił na grupie
dyskusyjnej comp.os.minix, że pracuje nad bezpłatną  wersją
systemu operacyjnego dla komputerów AT-386 nazwał ją
odmianą  Minixa. Początkowo system nie wzbudził większego
zainteresowania wśród  użytkowników
komputerów PC. Instalacja nowego systemu była bardzo 
skomplikowana, pierwsza wersja była bardzo uboga aby mogła
wzbudzić  zainteresowanie. Dołączenie kompilatora języka C oraz
zaimplementowanie  podstawowych poleceń uniksowych nie
spowodowało gwałtownego  zainteresowania nowym systemem. Dopiero
kiedy Torvalds postanowił  dostosować system do norm POSIX dzięki
czemu umożliwił przenoszenie  oprogramowania pomiędzy Linuxem a
komercyjnymi systemami grono  użytkowników systemu zaczęło
bardzo szybko się powiększać. Kod źródłowy  upowszechniany
na wielu serwerach FTP, uwagi użytkowników przesyłane za 
pomocą poczty elektronicznej czy list dyskusyjnych przyczyniły
się do  szybkiego dopracowania systemu.
 Na popularności
Linuxa zaważył jednak bardzo szybki rozwój Internetu na 
początku lat dziewięćdziesiątych. Gdyby system powstał kilka lat 
wcześniej być może nie zyskał by aż tylu zwolenników w
początkowym  okresie i umarłby z braku zainteresowania gdyż
byłaby to tylko kolejna  edukacyjna wersja systemu Minix. Innym
być może ważniejszym czynnikiem  był fakt, że opracowany zastał
on na podstawie licencji GPL (General  public licence ) fundacji
FSF (Free Software Fundation). Organizacja ta  promuje
„wolne” – czyli niezależne od jakichkolwiek
firm, wysokiej  jakości oprogramowanie użytkowe. Programy takie
muszą być  rozpowszechniane wraz z pełnym kodem źródłowym
i nie ma znaczenia czy są  to wersje komercyjne czy nie. Dzięki
takiemu posunięciu każdy  użytkownik aplikacji, który ma
jakieś pojęcie o programowaniu, czy  systemach operacyjnych może
szybko poprawić, lub co namniej  zasygnalizować fakt zaistnienia
błędu w kodzie programu. Innym, bardziej  socjologicznym niż
informatycznym czynnikiem wpływającym na rozwój  systemu
był fakt, iż użytkownicy (głównie młodzi) systemów
komputerowych  nie przepadają za monopolem kilku firm na rynku
komputerowym (zarówno w  dziedzinie oprogramowania jak i
sprzętu) . Fakt walki z monopolistami  jednoczył
informatyków, którzy coraz chętniej uczestniczyli w
pracach  nad nowym systemem.
 Rozwój i
upowszechnienie komunikacji sieciowej spowodowało, że
wkrótce  tysiące osób zaczęło spontanicznie pisać
oprogramowanie dla nowego  systemu, udoskonalać jądro systemu,
przerabiać inne gotowe aplikacje  rozpowszechniane na podstawie
licencji GPL. Powstanie wielu list  dyskusyjnych poświęconych
Linuxowi spowodowało, że coraz więcej osób  zaczęło
wprowadzać poprawki do jądra systemu w wyniku czego Torvalds nie 
mógł już samodzielnie zajmować się tworzeniem systemu.
Zaczął on tylko  rozbudowywać i koordynować pracę nad jądrem
systemu natomiast całą  resztę pozostawił dla innych.
Dzięki takiemu działaniu wielu tysięcy bardzo często anonimowych 
programistów system linux stawał się powoli systemem coraz
bardziej  profesjonalnym i kompletnym.
 W początkowym
okresie Linux miał problemy ze stabilnością i współpracą 
pomiędzy poszczególnymi elementami systemu. Pierwsza
stabilna wersja  jądra 1.0 wydana została dopiero w 1994 roku po
usunięciu wszystkich  problemów. Z uwagi na spontaniczny
charakter powstawania systemu na  rynku pojawiło się kilka jego
odmian zwyczajowo nazywanych  dystrybucjami, które
różniły się zawartością programów dodatkowych, 
wersjami jądra .
3. Jądro systemu
Jądro (kernel) to plik vmlinuz znajdujący się w katalogu /boot jest on ładowany do pamięci podczas uruchamiania się systemu. Jądro odpowiada za funkcjonowanie podstawowych elementów systemu: przełączanie zadań, planowanie przydziału procesora, komunikację z urządzeniami, zarządzania pamięcią fizyczną i wirtualną. Powinno być ono dostosowane do rodzaju sprzętu czyli powinno zawierać wszystkie sterowniki do wszystkich komponentów komputera. Jądro jest prawie w całości napisane w języku C, dzięki dostępności kodów źródłowych każdy może poprawić występujące błędy. Fakt, że działanie jądra systemu jest dokładnie znane umożliwia bardzo szybki rozwój Linuxa. Praktycznie co trzy – cztery dni ukazuje się nowa wersja jądra, którą można w postaci plików źródłowych ściągnąć z serwera FTP i przekompilować na swoim komputerze dołączając sterowniki odpowiednich urządzeń . Ponieważ jednak nowe wersje bardzo często zawierają błędy twórcy Linuxa postanowili odpowiednio numerować wersje jądra. Jądra podzielone zostały na stabilne (stable) oraz rozwojowe (development) – użytkownik powinien posiadać najnowszą wersję stabilną jądra. Wersje testowe przeznaczone są dla osób pracujących nad kodem źródłowym lub lubiących eksperymentować z systemem. Numer jądra składa się z trzech cyfr. Pierwszy numer oznacza numer wersji głównej, drugi numer podwersji, mówi on czy jądro jest stabilne czy też nie . Ostatni numer jest to tzw. numer rewizji. W numeracji przestrzega się następującej reguły:
stabilne jądra mają środkową liczbę parzystą np. 2.0.35 a rozwojowe nieparzystą np. 2.1.117.
Co pewien czas (średnio co pół roku) kod jądra przestaje być rozszerzany, rozpoczyna się faza testów a następnie kernel dostaje numer wersji stabilnej. Koordynacją rozwoju jądra zajmuje się Linus Torvalds – autor wersji 0.0.1
4. Dystrybucje
W początkowym okresie Linux mieścił się na jednej dyskietce, dzisiaj jednak wersja systemu w zależności od zastosowań zawiera kilka tysięcy plików i zajmuje nawet 4- 5 płyt CD. W dalszym ciągu można Linuxa pobrać z anonimowych serwerów FTP (np. ftp.icm.edu.pl), można go również kupić w wydaniu wielu firm, które w odpowiednim czasie zauważyły wzrost popularności nowego systemu. Taką stworzoną przez konkretną firmę, czy grupę osób wersję systemu nazywa się właśnie dystrybucją. W takim przypadku płacimy jednak nie za system jako pracę programistów tylko za nośnik, dokumentację, czy coraz częściej pomoc techniczną. Nawet w takim przypadku cena takiego rozwiązania jest wielokrotnie tańsza od systemów w pełni komercyjnych.
W tym miejscu powinno pojawić się pytanie w którym 
miejscu kończy się system operacyjny a rozpoczyna się
oprogramowanie  użytkowe. Z czasem system zawierał tak dużo
programów, że należało  zadecydować które będą
należały do systemu , a które zaliczać będą się  do
oprogramowania użytkowego. Ponieważ użytkownicy mają różne
potrzeby i  oczekiwania dlatego też powstało wiele odmian Linuxa.
Istnieją  dystrybucje w których położono nacisk na
początkujących użytkowników  systemu jak również
dystrybucje dla profesjonalnych maszyn  skonstruowanych na
architekturze SPARC Alpha. Powstają dystrybucje  darmowe tworzone
przez grupy programistów, którzy chcą rozpropagować
 ideę bezpłatnego oprogramowania jak również dystrybucje
czysto  komercyjne.
 Wszystkie dostępne na rynku dystrybucje
zawierają jądro – z reguły  ostatnie stabilne serii 2.2.x,
oraz różną liczbę dodatkowych programów 
najczęściej rozpowszechnianych na zasadzie licencji GNU. Bardzo
często  firmy dodają do pakietu półkomercyjne produkty
znanych firm, które  wchodzą na rynek Linuxa.
Poszczególne dystrybucje różnią się programami 
instalacyjnymi, narzędziami do zarządzania systemem, wersjami
bibliotek i  metodą konfigurowania usług.
Przykładowe dystrybucje :
a) Slackware – najstarsza odmiana systemu, początkowo wersja ta sprawiała bardzo wiele kłopotów, jej elementy były nie dopracowane a system bezpieczeństwa niezbyt pewny. Obecnie jednak jest uważana za jedną z najbardziej dojrzałych dystrybucji i bardzo często wykorzystywana jest do komercyjnych zastosowań. Jest o dystrybucja bardzo trudna w obsłudze, która wymaga bardzo dobrej znajomości systemu. Pakiety instalacyjne mają rozszerzenie tgz. Wymaga doskonałej administracja linux.
b) Red Hat – bardzo łatwa w konfiguracji, przeznaczona jest dla użytkowników początkujących, oraz tych którzy korzystali z produktów firmy Microsoft. Dystrybucja rozpowszechniana jest w dwóch odmianach: bezpłatnej, którą to można ściągnąć z serwera FTP, oraz komercyjnej która zawiera dodatkowo zestaw odpłatnych aplikacji i bibliotek. Zakup wersji komercyjnej upoważnia jednocześnie do uzyskania pomocy technicznej. Red Hat jest obecnie najpopularniejszą dystrybucją na świecie szczególnie popularną w USA. Firma Red Hat jest spółką akcyjną, notowaną na giełdzie w Nowym Jorku, w której udziały mają Intel i Netscape, IBM, Dell. Ostatnio większość programistów związanych profesjonalnie z tworzeniem systemu znajduje zatrudnienie właśnie w tej firmie. Pakiety instalacyjne mają rozszerzenie rpm. Dystrybucja pracuje na komputerach opartych o procesory Intel, Sparc i Alpha
c) Debian – jest to dystrybucja nie tworzona centralnie, jest dziełem ok. 200 programistów rozproszonych po całym świecie, jest to największa dystrybucja w skład której wchodzi ok. 2200 pakietów o nazwach kończących się na deb. Dystrybucja zawiera aplikację pozwalającą na konwertowanie formatów pakietów (RPM, TGZ,DEB) dzięki czemu ułatwiona jest możliwość wymiany oprogramowania. W czasie instalacji można wybrać kilka podstawowych konfiguracji takich jak : domowa stacja robocza, serwer internetowy itp. Pracuje on na komputerach opartych na procesorach Intel jak i SPARC, Alpha, Motorola 68k
d) S.uS.E. – dystrybucja , która powstała w Niemczech, twórcy położyli nacisk na lokalizację produktu dlatego obecnie obsługuje ona coraz więcej języków narodowych ( w typ polski) . Pakiety w standardzie RPM. Dystrybucja bardzo popularna w Europie
e) PLD (Polish Linux Distribution ) aktualnie tworzona przez polskich użytkowników Linuxa dystrybucja oparta o pakiety w formacie RPM. Twórcy tej dystrybucji zamierzają utworzyć nowoczesną i dopracowaną i dopasowaną do polskich warunków dystrybucję. Jej podstawą ma być jądro 2.2.x oraz biblioteka glibc 2.1.x, Zaimplementowana ma by również obsługa adresów IPv6. Aplikacje wchodzące w skład dystrybucji mają być przetłumaczone na język polski
f) Corel LINUX. – Jest to dotychczas jedna z nielicznych firm znana z platformy Windows, która postanowiła wypuścić swoją dystrybucję. Cechą charakterystyczną jest bardzo okienkowy” proces instalacji i bardzo duża liczba kreatorów pomagających instalować sprzęt i oprogramowanie. Firma oferuje trzy wersje systemu operacyjnego.
- 
Pierwsza, darmowa, którą można załadować ze strony firmy. Zawiera ona system operacyjny (oparty na dystrybucji Debian – www. debian.org ) – jądro Linux 2.2.x, interfejs graficzny Enhanced KDE Desktop (www.kde.org) – programy wspomagające użytkownika Corel Install Express, Corel Update i Corel File Manager oraz przeglądarkę internetową Netscape Communicator.
 - 
Wersja Standard obejmuje trzy dyski CD. Na głównym dysku instalacyjnym znajdują się wszystkie składniki wersji do darmowego pobrania oraz programy Adobe Acrobat Reader, Instant Messenger (klient zgodny ze standardem ICQ), 20 czcionek oraz edytor tekstu Corel WordPerfect 8 dla systemu Linux (wersja podstawowa). Na drugim dysku znajdują się kody źródłowe składników z głównego dysku instalacyjnego, które mogą być dowolnie kopiowane bez potrzeby zakupu jakichkolwiek licencji. Trzeci dysk zawiera kod źródłowy systemu. W pakiecie Standard mieści się podręcznik użytkownika systemu Corel LINUX, pakiet daje prawo do 30-dniowej pomocy dotyczącej instalacji (za pośrednictwem poczty elektronicznej).
 - 
Deluxe, System operacyjny Corel LINUX w wersji Deluxe zawiera wszystkie elementy wersji Standard oraz dwa dodatkowe dyski CD-ROM. Pierwszy z nich to oprogramowanie BRU Backup (wersja osobista) oraz obrazki clipart dla pakietu Corel WordPerfect 8, na drugim jest gra Civilization Call to Power (wersja ograniczona). Zakup wersji Deluxe daje prawo do bezpłatnego korzystania przez trzy miesiące z usługi eFax Plus Service oraz do 30-dniowej pomocy dotyczącej instalacji (za pośrednictwem poczty elektronicznej lub telefonu). Do wersji Deluxe dołączono również 200 czcionek, pakiet Corel WordPerfect 8 dla systemu Linux w pełnej wersji, podręcznik użytkownika, oraz Linuxową maskotkę -3,5-calowego pingwina.
 
Firma przewiduje szybkie wprowadzenie innych niż angielska wersji językowych, odpowiednie komunikaty powinny pojawić się w ciągu najbliższych miesięcy.
5. Problemy wynikające z dużej liczby dystrybucji
W wyniku tak dużej różnorodności dystrybucji pojawia 
się problem: Pomimo że różne dystrybucje Linuxa to cały
czas ten sam  system to czy program przeznaczony dla jednej z
dystrybucji będzie  działał z inną?
 Wszystkie dystrybucje
to cały czas ten sam system, więc format plików 
wykonywalnych jest we wszystkich taki sam . Problemem mogą być
jednak  dwie rzeczy : Pierwszą z nich są biblioteki Program może
się nie  zainstalować z powodu braku wymaganych bibliotek lub
niewłaściwej  wersji, zwłaszcza wtedy, gdy program, który
zamierzamy zainstalować  pochodzi z nowszej dystrybucji niż
używana aktualnie. Drugi problem,  wynika z różnicy w
strukturze katalogów. Linux jest systemem elastycznym  i
głęboko konfigurowalnym, i to do tego stopnia, że pliki
zawierające  opisy ustawień, skrypty startowe itp., mogą być
umieszczone w różnych  katalogach niż to jest przyjęte
standardowo. Główną różnicą techniczną  pomiędzy
dystrybucjami jest format tzw. paczek (ang. packages), czyli 
skompresowanych plików instalacyjnych. Większość
dystrybucji korzysta z  zainstalowanych paczek, toteż nie pozwoli
np. na instalację  wcześniejszej wersji programu, jeśli
zainstalowana jest wersja nowsza.  Najstarszym i najbardziej
uniwersalnym formatem jest .tgz. Pliki w tym  formacie zawierają
jedynie skompresowane pliki i katalogi, bez żadnych  dodatkowych
informacji. Mogą być jednak zainstalowane, a właściwie 
rozpakowane, w każdym systemie Linux. W tym formacie jest
większość  programów, jakie można znaleźć w Internecie,
korzystają też z niego  twórcy aplikacji komercyjnych, jak
StarOffice czy Corel WordPerfect.  Rozszerzenie .tgz oznacza
zbiór plików poddanych najpierw działaniu  programu
tar, który łączy pliki w jeden duży zbiór
wyjściowy, zachowując  przy tym strukturę katalogów, a
następnie skompresowany programem gzip.
 Format RPM
wprowadzony po raz pierwszy w dystrybucji RedHat, umożliwia 
zapisanie w jednym pliku programu wraz z bibliotekami i
dokumentacją  (wszystkie pliki znajdą się we właściwych
katalogach), krótkim opisem  oraz zależnościami
(wymaganiami co do bibliotek itp.). Został przyjęty  przez
twórców innych dystrybucji i znajduje się w
większości z nich
6. Którą dystrybucję wybrać ?
Nie ma dystrybucji która nadaje się idealnie do wszystkiego. Każda ma swoje plusy i minusy. Jedna dystrybucja przeznaczona jest dla początkujących użytkowników (np. Debian RedHat) dostarczane są standardowo z dużą liczbą oprogramowania pozwalającą stworzyć na ich podstawie np. wydajne serwery (m.in. WWW, ftp, news),dostarczane są z odpowiednimi narzędziami do administracji itp. Istnieją również dystrybucje nastawione na doświadczonych użytkowników gdzie nie ma żadnych kreatorów czy skomplikowanych systemów pomocy (Slackware) ale jest za to duża liczba różnych aplikacji. Pojawia się na rynku coraz więcej dystrybucji zawierających również pomoc techniczną. Ciekawym wyborem jest wersja firmy Corel. Jest ona chyba najbardziej zbliżona do okienkowego ideału Windows.
7. Tworzenie i dystrybucja oprogramowania open source
Open  source można
zdefiniować jako sposób tworzenia i dystrybucji 
oprogramowania, który polega na rozprowadzaniu go wraz z
kodem źródłowym  Dzięki czemu możliwa jest samodzielna
kompilacja czyli utworzenie  wersji wykonywalnej. Istnieje
możliwość wprowadzania własnych poprawek i  rozpowszechnianie tak
zmienionego programu dalej oczywiście z  uwzględnieniem
określonych zasad zawartych w licencji . Można go nawet 
sprzedawać, z jednym zastrzeżeniem: wraz z programem musi być
zawsze  udostępniony kod źródłowy. Usługi informatyczne Gdynia.
 Ruch open
source wywodzi się ze środowisk unixowych gdzie od początku 
istniała głęboko zakorzeniona tradycja rozpowszechniania
oprogramowania w  postaci kodu źródłowego. Najczęściej
open source kojarzy się z  bezpłatnym oprogramowaniem, ale
pojęcie to nie jest synonimem słowa  „darmowy”. Fakt
rozpowszechniania darmowego oprogramowania nie jest 
głównym celem tego ruchu, choć oczywiście mu sprzyja.
Najważniejsza jest  wolność przepływu idei i myśli. Istnienie
Internetu jako środka  komunikacji powoduje że ruch ten coraz
szybciej się rozwija . Szczególne  kontrowersje budzi fakt
darmowego rozpowszechniania – czy coś co jest  za darmo
może być dobre, profesjonalne ? Tym, co odróżnia takie 
oprogramowanie od kategorii freeware jest sposób
powstawania i  licencjonowania produktu. Oprogramowanie typu open
source tworzone jest  zarówno przez znakomitych
programistów, jak i zwykłych użytkowników , 
których zadaniem jest np. pisanie dokumentacji czy
sprawdzanie błędów  ortograficznych. Taki sposób
tworzenia oprogramowania bardzo integruje  twórców,
nikt nie jest ignorowany, każdy może poczuć się  dowartościowany,
a kod programu staje się coraz lepszy w trakcie  wyszukiwania
błędów przez tysiące użytkowników. 
8. Historia free software i open source
Upowszechnianie kodów źródłowych, może jeszcze
nie na  zasadzie ruchu open source ale głównie w celach
edukacyjnych miało  miejsce już w początkach profesjonalnej
informatyki. Już w latach 50 i  60 udostępniano kody
źródłowe np. algorytmów. Przełomem jednak stał się 
rok 1969 kiedy Ken Thompson, naukowiec z Bell Labs opracował
pierwszą  wersję systemu Unix. Kod źródłowy został
udostępniony nieodpłatnie i w  latach 70-tych system zdominował
amerykańskie uczelnie. Następnie  ARPANET publikuje pierwsze
dokumenty RFC, w 1973 został opracowany  protokół TCP/IP
stanowiący do dnia dzisiejszego podstawę funkcjonowania 
Internetu. Specyfikacja tego protokołu jak i innych służących do 
tworzenia intersieci jest dostępna nieodpłatnie dla każdego w
postaci  dokumentów RFC.
 Gdy w 1979 firma AT&T
ogłosiła plany komercjalizacji systemu Unix.  Spowodowało to
opracowanie przez Uniwersytet Kalifornijski w Berkeley  własnej
wersji systemu, noszącej nazwę BSD Unix.
Za  prekursora
oprogramowania open source uznaje się Richarda Stallmana. To  za
jego sprawą oprogramowanie open source, a w szczególności
Linux  zdobył taką popularność. Powołał on w 1983 roku najpierw
nieoficjalny  projekt GNU Project, którego głównym
celem było utworzenie otwartej,  darmowej wersji systemu Unix
(GNU to akronim od GNU’s Not Unix).  Bezpośrednim powodem
tego działania była komercjalizacja systemu Unix  przez AT&T
. Opracowywanie nowego systemu Stallman rozpoczął – od 
stworzenia nowych narzędzi programistycznych oczywiście z
udostępnionym  za darmo kodem źródłowym. Aby ochronić
swoje działania założył fundację  Free Software Fundation (FSF),
która miała stanowić coś w rodzaju  zaplecza techniczno
organizacyjnego finansowego, dla prac nad nowym  oprogramowaniem.
Opracował również specjalną licencję na oprogramowanie
–  General Public License (GPL), której zadaniem
było chronić prawa  autorskie. Narzędzia GNU utworzone i
rozwijane przez FSF stanowią  podstawę wszystkich nowoczesnych
systemów Unix objętych licencją GPL lub  BSD . Najbardziej
spektakularny jest sukces gcc – standardowego  kompilatora
języka C stosowanego m.in. w Linuxie. Jest to obecnie 
najpowszechniej stosowany kompilator C w systemach Unix –
dostępny  praktycznie na wszystkie platformy sprzętowe i
programowe.
 Do połowy 1998 roku jedyną organizacją
formalnie wspierającą ruch open  source była fundacja Free
Software Fundation (FSF). W sierpniu 1998 r.  zostało powołane
stowarzyszenie Open Source Initiative, którego 
przewodniczącym został Eric Raymond. Dość łatwo jest wychwycić
różnice  między tymi dwoma organizacjami. O ile FSF ma
głównie na celu  propagowanie i tworzenie darmowego
oprogramowania oraz narzędzi  programistycznych – o tyle
celem OSI jest popularyzacja open source jako  modelu
biznesowego.
- 
1985 X Window System opracowany w firmie MIT jest rozpowszechniany z darmowym kodem źródłowym z minimalnymi ograniczeniami licencyjnymi dzięki czemu powstaje bardzo popularny X serwer (Xfree86)
 - 
1986 Larry Wall publikuje kody źródłowe języka skryptowego Perl (Practical Extraction abd Report Language)
 - 
1987 – Andrew Tanenbaum udostępnia (wraz z kodem źródłowym) utworzony przez siebie system Minix, akademicką wersję Uniksa przeznaczoną dla komputerów PC, Macintosh, Amiga i Atari ST.
 - 
1990 Organizacja Stallmana Free Software Fundation rozpoczyna pracę nad jądrem systemeu operacyjnego zgodnym z Unix, czym wypełnia lukę powstałą w pracy fundacji (są już bezpłatne narzędzia nie ma natomiast jeszcze systemu) . System nazwany został GNU Hurd – niestety jądro jest jeszcze za duże i niestabilne i na początku 2000 roku jest jeszcze ciągle niekompletne
 - 
1991 Wiliam i Lynne Lolitz rozpoczynają pracę nad wersją systemu BSD opartą o procesor Intela 80386. Tworzą dzięki temu początek dla systemów opartych o licencję BSD, powstają systemy FreeBSD, NetBSD, OpenBSD. W tym samym roku Linus Torvalds tworzy pierwsze jądro systemu Linux w oparciu o system Minix
 - 
1992 na uniwersytecie w Nowym Jorku powstaje darmowy kompilator Ada95. Jego twórcy wykorzystali kompilator GNU GCC (rozpowszechniany na zasadzie licencji GNU) i nowy kompilator nazwali GNAT (GNU NYU Ada 95 Translator). W lipcu powstaje pierwsze niestabilne jądro systemu 386BSD 0.1. Problemy z licencją wynikające z zastosowania Berkeley Net release/2 na kodzie którego oparte zostało jądro powodują przeciąganie się prac. Po kilku miesiącach problem zostaje rozwiązany i na wersji Berkeley Net release/3 oparte są wszystkie nowoczesne systemy operacyjne serii BSD
 - 
1993 powstaje pierwsza dystrybucja Linuxa – Debian – Staje się ona podstawową dystrybucją na wiele lat, na bazie której powstają inne dystrybucje. W grudniu powstaje pierwsza stabilna wersja jądra systemu FreeBSD 1.0. Wczesna wersja beta systemu 386BSD zostaje opublikowana w sieci
 - 
1994 powstaje firma Red Hat, firma Caldera – oferujące komercyjne wersje Linuxa
 - 
1995 powstaje The Apache Group której celem jest opracowanie nowego serwera WWW, bazująceg na programie NCSA. W kwietniu opublikowane zostaje pierwsza wersja (0.6.2) Obecnie ponad 50 procent serwerów WWW w Internecie to Apache. Powstaje wersja 2.0 jądra FreeBSD
 - 
1996 pierwsza konferencja poświęcona darmowej redystrybucji oprogramowania w Cambridge w USA
 - 
1997 Eric Raymond publikuje opracowanie „The Catedral and the Bazaar”
 - 
1998 Netscape udostępnia okrojony kod źródłowy swojej przeglądarki WWW. Firmy IBM, Oracle, Informix, Corel oraz Sybase ogłaszają oficjalnie, że rozpoczynają wspieranie systemu Linux. Powołana zostaje fundacja Open Source Initiative (OSI). W sierpniu Torvalds i Linux pojawiają się na pierwszej stronie magazynu Forbes, firma IBM decyduje się na instalowanie Apache w serwerach AS/400, Intel i Netscape inwestują w Red Hat Linux. Wewnętrzny dokument Microsoft (tzw. „Halloween” ) będący analizą artykułu „The Catedral and the Bazaar” – wnioski nie należy obawiać się ruchu open source ani systemu Linux
 - 
1999 coraz więcej firm deklaruje swoje wsparcie dla systemu Linux, Akcje firm związanych z Linuxem są notowane na giełdzie i osiągają kilkunastokrotne przebicie tak jak kilka lat wcześniej firmy internetowe. Powstaje dystrybucja Corel Linux firmy Corel. Firma Apple udostępniła kody swojego nowego systemu Mac OS X. Z podobnym zamiarem nosi się firma Sun Microsystems ze swoim systemem Solaris
 - 
2000 w Interncie pojawiły się doniesienia, że firma Microsoft zamierza udostępnić kod swojego systemu Windows 2000. Na marginesie nie wiadomo jeszcze jak zakończy się proces o praktyki monopolistyczne prowadzony przeciwko firmie przez amerykańskie sądy. Eksperci mówią, że jednym z rozstrzygnięć może być konieczność udostępnienia przez Microsoft kodów swoich systemów operacyjnych. Jeżeli zapadnie taki wyrok wówczas nawet Microsoft przyczyni się do rozwoju rynku open- source
 
Wzrost popularności idei open source spowodował, że na rynku zaczęło pojawiać się coraz więcej oprogramowania dostępnego za pomocą tej lub innych podobnych licencji
GPL(Project’s General public license – wymaga rozpowszechniania wraz z programem kodu źródłowego. Celem licencji jest zapewnienie nieograniczonego dostępu do kodu źródłowego. Fakt, że program oparty jest na licencji GPL nie oznacza, że ma on być bezpłatny – tylko dostęp do kodu źródłowego programu nie może być zaporą finansową)
BSD – pierwotnie używana do ochrony systemu BSD (Inne podejście do warunków licencjonowania niż w przypadku GPL – w tej licencji istnieje możliwość sprzedaży produktów opracowanych na podstawie głównego kodu źródłowego bez udostępniania kodu źródłowego. Na tej licencji oparty jest serwer Apache, BIND, sendmail ).
9. Najbardziej znane programy open source i free software
- 
Linux, GNU Hurd – systemy operacyjne oparte na licencji GNU
 - 
X Free86 – najpopularniejsza rodzina Xserwerów (oprogramowanie będące podstawą do budowy graficznego interfejsu użytkownika w systemach Unix)
 - 
FreeBSD, NetBSD, OpenBSD – systemy operacyjne objęte licencją podobną do GPL
 - 
Emacs/Xemacs – popularny wśród programistów uniksowych edytor tekstu zawiera programy do obsługi poczty, news i przeglądarkę WWW
 - 
Sendmail – serwer pocztowy.
 - 
BIND – serwer DNS
 - 
NN – dominujący w Internecie serwer grup dyskusyjnych news
 - 
narzędzia programistyczne GNU – kompilator gcc, g++, standardowa biblioteka C i C++, konsolidator (linker), odpluskwiacz (debugger) gdb, GNU make, yacc, bison, profilery i narzędzia do kontroli wersji – CVS
 - 
Perl – język skryptowy
 - 
Apache – serwer WWW dostępny dla wielu systemów Unix oraz Windows. Ponad połowa internetowych serwerów WWW to właśnie Apache
 - 
Samba – oprogramowanie przeznaczone dla systemów Unix, „udające” serwer Windows NT. Pozwala na udostępnianie dysków i drukarek klientom Windows
 - 
GIMP – zaawansowany program do obróbki grafiki rastrowej przypominający Adobe Photoshopa
 - 
Cygnus GNU Win32 – kompilator GNU C/C++ przeniesiony na platformę Windows 95/98/NT
 
10. „The Cathedral and the Bazaar”
„The Cathedral and the Bazaar” (Katedra i bazar) jest to tytuł artykułu Erica Raymonda opublikowany w 1997 roku w Internecie . W artykule tym opisał on dwa rodzaje tworzenia oprogramowania „katedra” i „bazar”
Kategorie
- Biznes i rynek (27)
 - Na wesoło (662)
 - Ogólne (151)
 - Ogólne (5)
 - Wszystko inne (25)
 - Wszystko inne (4)
 


 : 0