Wikiprojekt:Informatyka/en/Linux

Z Wikipedii, wolnej encyklopedii

Szablon:Infobox OS Linux (/ˈlɪnʊks/) jest uniksopodobnym systemem operacyjnym. Linux jest jednym z najbardziej znamiennych przykładów wolnego i otwartego oprogramowania (FOSS); będący jego bazą kod źródłowy może być dowolnie wykorzystywany, modyfikowany i rozpowszechniany[1].

Pingwin Tux - maskotka Linuksa narysowana przez Larry'ego Ewinga

Pierwsza wersja jądra Linuksa została udostępniona publicznie 17 września 1991 dla architektury IA-32 (popularnie zwanej PC). Do jądra dołączono narzędzia systemowe i biblioteki z projektu GNU aby otrzymać nadający się użytku system operacyjny. Z tego powodu powstała też alternatywna nazwa kompletnego systemu: GNU/Linux[2]. Obecnie system jest udostępniany w formie wielu dystrybucji Linuksa, które składają się z jądra (niekiedy zmodyfikowanego w stosunku do oficjalnej wersji) i zestawu pakietów oprogramowania dobranego do różnorodnych wymagań.

Najbardziej znanym zastosowaniem Linuksa są środowiska serwerowe, dla których komercyjne wsparcie oferują również duże firmy komputerowe jak IBM, Sun Microsystems, Dell, Hewlett-Packard i Novell. Linux działa na szerokiej gamie sprzętu komputerowego, wliczając komputery biurkowe, superkomputery i systemy wbudowane, takie jak telefony komórkowe i routery.

Historia[edytuj | edytuj kod]

Projekt GNU[edytuj | edytuj kod]

Historia Linuksa jest ściśle powiązana z historią projektu GNU. Plan projektu został ogłoszony publicznie przez Richarda Stallmana w 1983. GNU miało być kompletnym uniksopodobnym systemem operacyjnym składającym się wyłącznie z wolnego oprogramowania. Prace nad pisaniem kodu rozpoczęto w styczniu 1984. Do początku lat 90. w ramach projektu powstała większość niezbędnych komponentów systemu: biblioteki, kompilatory, edytory tekstu i powłoki systemowe. W ten sposób zasadnicza część GNU była prawie gotowa. Nakładka graficzna X Window System mogła służyć jako zewnętrzna warstwa systemu operacyjnego, lecz nadal brakowało części niskopoziomowej, na którą składają się: jądro i sterowniki urządzeń. W 1990 projekt GNU rozpoczął rozwijanie własnego jądra GNU Hurd, opartego na mikrojądrze Mach, ale praca okazała się nadzwyczaj trudna i postępowała powoli. Do dzisiaj jądro Hurd nie uzyskało dostatecznej funkcjonalności i używane jest przez nielicznych[3].

Linus Torvalds, twórca jądra Linuksa.

W 1991, studiujący na Uniwersytecie Helsińskim Linus Torvalds zaczął pisać jądra Linuksa[4]. Ideą Linusa było stworzenie jądra, które zastąpiłoby nie do końca wolnego Miniksa. Jądro Linuksa było początkowo zależne od oprogramowania użytkowego Miniksa, ale dzięki pracy programistów wkrótce zmodyfikowano narzędzia projektu GNU, tak aby mogły działać w tym środowisku. W ten sposób Linux zapełnił ostatnią lukę w stworzeniu kompletnego, w pełni funkcjonalnego systemu operacyjnego, składającego się wyłącznie z wolnego oprogramowania.

Rozwój Linuksa[edytuj | edytuj kod]

Oprogramowanie GNU i jądro Linuksa ustanowiły bazę systemu operacyjnego, który od tego czasu był wzbogacany przez licznych programistów społeczności wolnego oprogramowania. Do znaczących osiągnięć można zaliczyć:

OpenOffice.org 2.0 - Writer: procesor tekstu z wieloplatformowego i otwartego pakietu biurowego.

Linux dzisiaj[edytuj | edytuj kod]

Obecnie Linux występuje w licznych zastosowaniach, od systemów wbudowanych do superkomputerów i zyskał dużą popularność na serwerach internetowych wraz ze znanym pakietem aplikacji LAMP. Linus Torvalds nadal kieruje rozwojem jądra. Richard Stallman przewodzi Free Software Foundation, która koordynuje rozwijanie komponentów GNU. Wreszcie, indywidualni programiści i firmy tworzą pozostałe aplikacje spoza GNU. Programy te reprezentują wielką bazę rozwiązań, począwszy od modułów jądra, poprzez biblioteki i na aplikacjach użytkowych skończywszy. Dystrybutorzy Linuksa łączą jądro, aplikacje GNU i spoza GNU z dodatkowym oprogramowaniem do zarządzania pakietami i wydają całość w formie dystrybucji Linuksa.

Kod źródłowy[edytuj | edytuj kod]

Graficzna historia systemów uniksowych. Linux jest systemem uniksopodobnym, ale jego kod źródłowy nie pochodzi od oryginalnego Uniksa.

Wykonane w 2001 roku badanie dystrybucji Red Hat Linux 7.1 wykazało, że składało się na nią 30 milionów linii kodu źródłowego. Przy użyciu modelu COCOMO oceniono, że napisanie tego kodu wymagało około ośmiu tysięcy roboczolat nakładu. Według autorów badania, gdyby całe to oprogramowanie rozwijać w tradycyjnym modelu oprogramowania komercyjnego w Stanach Zjednoczonych, kosztowałoby to 1,08 miliarda dolarów.[6]

Większość kodu (71%) było napisane w języku C, ale w użyciu było też wiele innych języków, m.in. C++, Lisp, asembler, Perl, Fortran, Python i różne skrypty powłok uniksowych. Nieco ponad połowa kodu była objęta licencją GPL. Sam kod jądra Linuksa zajmował 2,4 miliona linii, co stanowiło 8% dystrybucji.[6]

W późniejszym badaniu takiej samej analizie poddano dystrybucję Debian w wersji 2.2[7] Składała się ona z ponad 55 milionów linii kodu źródłowego, a koszt jej wyprodukowania konwencjonalnymi metodami został oceniony na 1,9 miliarda dolarów.

Udział rynkowy i wzrost popularności[edytuj | edytuj kod]

Wiele badań ilościowych nad otwartym oprogramowaniem skupia się na zagadnieniu udziału rynkowego i niezawodności; często badania te dotyczą Linuksa[8]. Rynek Linuksa rośnie w szybkim tempie; przychody związane z tym systemem działającym na serwerach, komputerach biurkowych i sprzedawanym oprogramowaniem są szacowane na 35,7 miliarda dolarów w 2008[9]. Oczywiście udziału Linuksa nie można oceniać wyłącznie w kategorii przychodów materialnych, ponieważ znaczna część dystrybucji Linuksa i oprogramowania jest darmowa i przeznaczona do nieograniczonej dystrybucji. Popularność na komputerach osobistych jest słabsza niż na rynku serwerów; w zależności od źródła oceniana jest w przedziale od 0,3% do 3%. Według badania firmy International Data Corporation 25% serwerów i 2,8% komputerów osobistych działały pod kontrolą Linuksa w 2004 roku[10].

Linux Online uważa, że przyczyną małej popularności Linuksa u przeciętnych użytkowników jest to, że redaktorzy znanych czasopism komputerowych nie dysponują odpowiednim doświadczeniem w korzystaniu z tego systemu[11]. Ponadto istotnymi barierami popularyzacji są koszty związane ze zmianą istniejącego systemu operacyjnego i brak wsparcia dla niektórych komponentów sprzętowych i aplikacji dostępnych wyłącznie na platformę Microsoft Windows. Jednakże, biorąc pod uwagę stan z początku 2007 roku, osiągnięto znaczny postęp w kompatybilności sprzętowej. Wiele komponentów jest rozpoznawanych automatycznie i działają dobrze w wielu dystrybucjach. Zwolennicy systemu przypisują relatywny sukces Linuksa wysokiemu poziomowi bezpieczeństwa i niezawodności[12], niskim kosztom i brakowi zagrożenia uzależnieniem od dostawcy (ang. vendor lock-in)[13].

Nazwa Linuksa[edytuj | edytuj kod]

Etymologia[edytuj | edytuj kod]

Sama nazwa pochodzi ze zbitki słów Linus (będącego imieniem twórcy) i Unix. Nie przyjęła się proponowana przez Torvaldsa nazwa Freax. Nazwa "Linux" informuje także o tym, że nie jest to system Unix: Linux Is Not UNIX.

Wymowa[edytuj | edytuj kod]

W 1992, Linus Torvalds wyjaśnił jak się wymawia Linux w artykule Usenetowym[14], jednak ma on znaczenie głównie dla osób anglojęzycznych; dla Polaków wymowa tego słowa jest naturalna, zgodna z ogólnymi zasadami (/ˈlɪnʌks/). Dostępne są również nagrania dźwiękowe samego Linusa wyjaśniające po angielsku i szwedzku jak wymawia on Linux[15].

Należy podkreślić, że spotykana czasem w języku polskim wymowa Linuch jest niepoprawna.

Pisownia w języku polskim[edytuj | edytuj kod]

Rada Języka Polskiego zaleca następującą pisownię nazwy "Linux" przy odmianie przez przypadki M: Linux, D: Linuksa, C: Linuksowi, B: Linuksa, N: Linuksem, Msc: Linuksie, W: Linuksie!

Zdania na ten temat są jednak podzielone nawet wśród językoznawców[16]; zgoda panuje jedynie co do tego, by w miejscowniku pisać "Linuksie".

GNU/Linux[edytuj | edytuj kod]

 Osobny artykuł: GNU/Linux naming controversy.

Nazwa systemu Linux pochodzi od nazwy jego jądra. Ponieważ większość dystrybycji Linuksa używa oprogramowania z projektu GNU, Free Software Foundation uważa te dystrybucje za warianty systemu GNU, sugerując aby nazywano je GNU/Linux bądź system GNU oparty na Linuksie[17]. Jednakże media i większość użytkowników używa słowa Linux dla całej rodziny systemów. Część twórców dystrybucji używa nazwy łączonej, na przykład Debian GNU/Linux należąca do projektu Debian, ale znajomość terminu GNU/Linux jest ograniczona poza zaangażowaną społecznością wolnego oprogramowania. Linus Torvalds powiedział, że nazywanie systemu w ten sposób jest "po prostu śmieszne"[18]. Podział pomiędzy jądrem Linuksa a dystrybucjami na nim bazującymi i zawierającymi oprogramowanie GNU jest źródłem nieporozumień dla wielu nowych użytkowników i nazewnictwo nadal stanowi przedmiot kontrowersji.

Znak handlowy Linux[edytuj | edytuj kod]

W Stanach Zjednoczonych, nazwa Linux jest znakiem towarowym zarejestrowanym na Linusa Torvaldsa[19]. Początkowo, nazwa ta nie była w ogóle zarejestrowana, ale 15 sierpnia 1994 William R. Della Croce, Jr. zgłosił znak Linux do rejestracji i domagał się tantiemów od dystrybutorów Linuksa. W 1996 roku, Torvalds i zamieszane w sprawę organizacje wniosły pozew domagając się przyznania znaku towarowego Torvaldsowi. W 1997 roku proces zakończył się ugodą[20]. Obsługę znaku powierzono Linux Mark Institute. Torvalds oświadczył, że zarejestrował znak wyłącznie aby udaremnić praktyki jak wyżej wymieniona, ale w 2005 roku został zobowiązany przez amerykańskie prawo znaków towarowych do aktywnej ochrony swojej własności. W wyniku tego, LMI wysłało listy do dystrybutorów Linuksa domagając się opłaty za korzystanie z nazwy i wiele z nich przystało na te warunki[21].

Prawo autorskie i licencjonowanie[edytuj | edytuj kod]

Jądro Linuksa i większość oprogramowania GNU jest objęta licencją 2. wersją licencji GNU GPL. Licencja GPL wymaga, aby wszystkie rozpowszechnione modyfikacje kodu źródłowego i prace pochodne były także nią objęte i dlatego nazywana bywa licencją typu "share and share-alike", "copyleft" lub "licencją wirusową". W 1997 roku, Linus Torvalds stwierdził: "Udostępnienie Linuksa na zasadach GPL było zdecydowanie najlepszą rzeczą, jaką kiedykolwiek zrobiłem."[22] Inne oprogramowanie może używać innych licencji; wiele bibliotek używa GNU Lesser General Public License (LGPL), bardziej liberalnej wersji licencji GPL, z kolei X Window System używa Licencji MIT. Przed ponad dziesięcioma laty, Free Software Foundation ogłosiła, że chciała by uaktualnić licencję GPL do wersji 3, z powodu zwiększających się obaw w stosunku do patentów na oprogramowanie i systemu DRM[23]. In particular, DRM is appearing in systems running copyleft software, a phenomenon known as "tivoization" per Tivo's use of DRM. Linus Torvalds has publicly stated he would not move the Linux kernel to GPL v.3, specifically citing the DRM provisions.[potrzebny przypis]

SCO litigation[edytuj | edytuj kod]

 Osobny artykuł: SCO-Linux controversies.

W marcu 2003 SCO Group wniosła pozew przeciwko firmie IBM, twierdząc, że IBM dodał do jądra Linux kawałki kodu objętego prawem autorskim SCO, łamiąc tym samym licencję na używanie Uniksa. Ponadto, SCO wysłało listy do kilkunastu kompanii z ostrzeżeniem, że dalsze używanie przez nich Linuksa spowoduje zaskarżenie ich do sądu. Firma ogłosiła również w prasie, że dotyczyć to będzie też prywatnych użytkowników. Następstwem było wniesienie oskarżeń SCO przeciwko DaimlerChlysler (wycofany w 2004) oraz AutoZone, i Red Hata z szeregiem innych firm przeciwko SCO. Co więcej, Novell aktualnie kwestionuje posiadanie przez SCO praw autorskich do samego Uniksa.

Oskarżeń SCO było wiele i zmieniały się z biegiem czasu. Zgodnie z orzeczeniem Sądu Stanowego Utah z 3 lipca 2006, 182 z 294 dowodów dostarczonych przez SCO przeciwko IBM zostało odrzuconych[24].

Filozofia[edytuj | edytuj kod]

Wolne oprogramowanie i otwarte źródła[edytuj | edytuj kod]

 Osobny artykuł: Free software.
Logo copyleft: pewne prawa zastrzeżone

Główną różnicą między Linuksem, a innymi systemami operacyjnymi (np. Microsoft Windows, Mac OS X i inne zamknięte odmiany Uniksa) jest fakt, że jądro systemu, narzędzia GNU i reszta komponentów jest tzw. wolnym oprogramowaniem znanym także jako open source. Linux nie jest jedynym systemem operacyjnym tego typu, lecz na pewno jednym z najbardziej znanych i najczęściej wykorzystywanych. Inne tego typu projekty to pochodne BSD: NetBSD, OpenBSD i FreeBSD, a także adaptacje innych jąder wykonane przez GNU: GNU/Solaris i GNU/Hurd.

Interoperability[edytuj | edytuj kod]

Linux aims for interoperability with other operating systems, and by extension the software that runs under Linux aims for interoperability with other Linux and non-Linux software. The reasons for this are two-fold. First, from a free software perspective, interoperability provides the first out of four freedoms, by allowing users free choice of software and data formats whilst not restricting them as a result of that choice. Second, from a commercial perspective, Linux is an operating system underdog competing with mainstream operating systems, and it cannot rely on a monopoly advantage; in order for Linux to be a convenient operating system for users that is commercially viable, it must interact well with non-Linux computers.

A priority is placed on open formats, public specifications for data that are freely available and free to implement, with the goal being to remove dependences on single pieces of software. These contrast with closed formats, which are either poorly documented or not documented at all, and for which there exists no agreement between competing vendors. When standards exist for network communication protocols, data formats, and APIs, they contribute to the robustness and adoption of Linux. In some cases, free software projects are the reference implementation of these protocols, examples being the Apache HTTP Server,[potrzebny przypis] and the X.org implementation of the X Window System.

Examples of standard conformance include Mozilla Firefox which adheres strictly to World Wide Web Consortium recommendations, Jabber which formed the basis for the XMPP standard recognized by the Internet Engineering Task Force in the domain of instant messaging, and office productivity suites such as OpenOffice.org and KOffice which brought to light the recent OpenDocument standard. Linux systems also adhere to POSIX, SUS, ISO, and ANSI standards where possible, although to date only one Linux distribution has been POSIX.1 certified, Linux-FT[25][26][27].

In other domains, there are neither recognized standards nor organizations to manage them. The market is therefore split between software which attempts to interoperate as much as possible, and that which establishes market dominance through vendor lock-in, or the use of closed formats and communication protocols. Prime examples of the first category draw from the instant messaging war, which is ruled by multiprotocol software such as Gaim, Kopete, and Trillian. The second category of software is exemplified by Microsoft Office and its widely used closed file formats, and the Common Internet File System protocol which allow for files and printers to be shared between different computers on a Windows network.

In these cases, interoperability depends on reverse engineering, which requires a substantial investment on the part of developers. The legal status of reverse engineering varies from country to country; it may be illegal in the United States[potrzebny przypis] but legal in Europe, provided the goal is limited to interoperability.[potrzebny przypis] Today, as a result of reverse engineering, OpenOffice.org can read most .doc files, and Samba allows non-Windows machines to interact with a Windows network.

A further problem beyond reverse engineering is when interoperability is needed for a format or protocol that is technically encumbered by digital rights management or Trusted Computing, or legally restricted by software patents or laws such as the EUCD and DMCA.

Przenośność[edytuj | edytuj kod]

Jedną z charakterystycznych cech linuksa jest jego przenośność. W momencie powstania pierwszej wersji jądra architekturą docelową był Intel 80386, a w kwestii przenośności królował system GNU[28]. Do dnia dzisiejszego sytuacja diametralnie się zmieniła - żaden inny projekt nie ma tak szerokiej gamy obsługiwanych architektur[29]. Linuksa można używać zarówno na superkomputerach jak i telefonach komórkowych, jednak najszersze zastosowanie znalazł w komputerach osobistych i urządzeniach biznesowych. Istnieją również specjalistyczne dystrybucje dla rzadziej używanych architektur. Linuksa można uruchomić na maszynach przeznaczonych do używania z systemem przygotowanym przez dostawcę, jak iMac, PowerBook, GameCube, XBox czy Play Station Portable. Istnieje fork jądra nazwany ELKS dla architektur Intel 8086 i Intel 80286, oraz µClinux działający na maszynach bez jednostki zarządzania pamięcią, jak np. Apple iPod.


Społeczność[edytuj | edytuj kod]

Linux to projekt społecznościowy w którym każdy może pod nickiem edytować system. Some vendors develop and fund their distributions on a volunteer basis, Debian being a well-known example. Others maintain a community version of their commercial distributions, as RedHat does with Fedora Core.

Linux jest rozwijany przez swoich twórców i zwykłych użytkowników. Wielu dostawców komercyjnych dystrybucji tworzy swoje produkty bazując na darmowych dystrybucjach, na przykład na Debianie. Inni natomiast rozwijają wersje darmowe swoich komercyjnych produktów - firma RedHat utrzymuje Fedorę.

W wielu regionach świata, lokalne organizacje zwane [[Linux_User_Group]Linux User Group (LUG)] promują Linuksa i ideę wolnego oprogramowania poprzez organizowanie darmowych prezentacji, szkolenia, pomaganiu w rozwiązywaniu problemów technicznych, w instalacji systemu nowym użytkownikom. Również w Internecie istnieje wiele grup, której pomagają użytkownikom i twórcą Linuksa. Większość dystrybucji i open source'owych projektów ma swoje kanały na darmowym serwerze IRC-a Freenode, dostępne dla każdego, kto posiada odpowiednie oprogramowania, aby się z nim połączyć. Fora internetowe są kolejnym źródłem pomocy. Jednymi z najbardziej wyróżniających się są serwis Linux Questions oraz forum Gentoo. Dostępne są również linuksowe grupy newsowe dostępne poprzez serwis Google Groups, jak i przez klasyczne czytniki. Każdy projekt wolego oprogramowania czy dystrybucja posiadają listy dyskusyjne, często podzielone pod względem tematyki, jaki użytkowanie czy rozwój.

In many cities and regions, local associations known as Linux Users Groups (LUGs) seek to promote Linux and by extension free software. They hold meetings and provide free demonstrations, training, technical support, and operating system installation to new users. There are also many internet communities that seek to provide support to Linux users and developers. Most distributions and open source projects have a chatroom on the popular freenode IRC network that are open to anybody with an IRC client. Online forums are another means for support, with notable examples being LinuxQuestions.org and the Gentoo forums. Linux-based newsgroups are available via the Google Groups interface and also via news readers. Finally, every established free software project and Linux distribution has one or more mailing lists; commonly there will be a specific topic such as usage or development for a given list.

In French, a Linux user may be known as a "Linuxien"; there is no such corresponding term in English. /There is a term "Linuxoid" in russian./

W języku francuskim użytkownik Linuksa zwany jest "Linuxien", w rosyjskim - "Linuxoid". W angielskim nie ma takiego odpowiednika.

Commercialization[edytuj | edytuj kod]

Finally, although Linux is generally available free of charge, several large corporations have established business models that involve selling, supporting, and contributing to Linux and free software. These include IBM, HP, Sun, Novell, and RedHat. The free software licenses on which Linux is based explicitly accommodate and encourage commercialization; the relationship between Linux as a whole and individual vendors may be seen as symbiotic. The business model of commercial suppliers is generally dependent on charging for support, especially for business users. A number of companies also offer a specialized business version of their distribution, which adds proprietary support packages and tools to administer higher numbers of installations or to simplify administrative tasks.

Distribution[edytuj | edytuj kod]

 Osobny artykuł: Linux distribution.

Role[edytuj | edytuj kod]

A particular feature of free software and open source operating systems such as Linux is that there is a clear separation between software production and software distribution. Free software projects, although developed in a collaborative fashion, are often produced independently of each other. However, given that the software licenses explicitly permit redistribution, this provides a basis for larger scale projects that collect the software produced by stand-alone projects and make it available all at once in the form of a Linux distribution. Even though some distributions may include non-free software, that software must still be available under a license that permits free redistribution, unless it is maintained by the distribution itself; otherwise, the individual vendor is responsible for both production and distribution.

A Linux distribution, commonly called a "distro", is a project that manages a remote collection of Linux-based software, and facilitates installation of a Linux operating system. Distributions are maintained by individuals, loose-knit teams, volunteer organizations, and commercial entities. They include system software and application software in the form of packages, and distribution-specific software for initial system installation and configuration as well as later package upgrades and installs. A distribution is responsible for the default configuration of installed Linux systems, system security, and more generally integration of the thousands of Linux-based software packages into a coherent whole.

A typical general purpose distribution includes: a boot loader such as LILO or GRUB, the Linux kernel, GNU libraries and tools, command-line shells, the graphical X Window System and an accompanying desktop environment such as KDE or GNOME, together with thousands of application software packages, from office suites to compilers, text editors, and scientific tools. Distribution-specific package management systems include RPM, dpkg, and Portage. As well as those designed for general purpose use, distributions may be specialized for different purposes including: computer architecture support, embedded systems, stability, security, localization to a specific region or language, targeting of specific user groups, support for real-time applications, or commitment to a given desktop environment. Furthermore, some distributions deliberately include only free software. Currently, over three hundred distributions are actively developed, with about a dozen distributions being most popular for general-purpose use[30].

Choosing a distribution[edytuj | edytuj kod]

Linux distributions are numerous and diverse, and choosing between them can be a complicated process; it is often useful to compare Linux distributions. Each distribution is different, and the project goals address varying vendor and end-user needs. Broadly, Linux distributions may be: 1) commercial or non-commercial; 2) designed for enterprise or for home usage; 3) designed for servers, desktops, or embedded devices; 4) targeted at regular users or power users; 5) general purpose or highly specialized toward specific machine functionalities, for example firewalls, network routers, and compute clusters; 6) designed and even certified for specific hardware and computer architectures; or 7) targeted at specific user groups, for example through language internationalization and localization, or through inclusion of many music production or scientific computing packages.

Well-known Linux distributions include:

  • Slackware, one of the first Linux distributions, founded in 1993, and since then actively maintained by Patrick J. Volkerding
  • Debian, a non-commercial distribution maintained by a volunteer developer community with a strong commitment to free software principles
  • Red Hat, maintained by the American company of the same name, which also provides a community version in the form of Fedora Core
  • Mandriva, a Red Hat derivative popular in France and Brazil, today maintained by the French company of the same name
  • SuSE, originally derived from Slackware with the system management software borrowed from Red Hat, maintained by the company Novell
  • Gentoo, a distribution targeted at power users, known for its FreeBSD-like automated system of compiling all applications from source code
  • Ubuntu, a rapidly growing desktop distribution maintained by the company Canonical that is derived from Debian
  • Knoppix, a LiveCD distribution that runs completely from removable media and without installation to a hard disk
  • Linspire, a commercial desktop distribution based on Debian, and once the defendant in the Microsoft vs. Lindows lawsuit over its former name.

That multiple Linux distributions peacefully coexist severely limits the possibility of anti-competitive lawsuits comparable to those filed in the United States v. Microsoft and European Union v. Microsoft trials; these lawsuits exposed the danger to a sole company that extends its monopoly through vendor lock-in by controlling not only an operating system installed on the vast majority of computers but also an important collection of software that runs under that operating system. One inconvenience of this system is that the definition of a Linux operating system is somewhat unclear. Linux may be seen as either an operating system unto itself, or a family of operating systems, one for each distribution. The important point is that most Linux software is compatible across all major distributions, even at the binary level, and that only distribution-specific software will not work with another distribution.

Installation[edytuj | edytuj kod]

The most common method of installing Linux on a personal computer is by booting from a CD-ROM or DVD that contains the installation program and installable software. Such a CD can be burned from a downloaded ISO image, purchased alone for a low price or provided as a cover disk with a magazine, obtained as part of a box set, or in some cases shipped for free by request. A box set may also include manuals and additional proprietary software. Mini CD images allow Linux to be installed from a disk with a small form factor. As with servers, personal computers that come with Linux already installed are available from vendors including Hewlett-Packard and Dell, although generally only for their business desktop lines. Alternatives to traditional desktop installation include thin client installation and running directly from a Live CD. In a thin client installation, the operating system is loaded and run from a centralised machine over a network connection. In a Live CD setup, the computer boots the entire operating system from CD without first installing it on the computer's hard disk. Some distributions have a Live CD installer, where the computer boots the operating system from the disk, and then proceeds to install it onto the computer's hard disk, providing a seamless transition from the OS running from the CD to the OS running from the hard disk. On embedded devices, Linux is typically held in the device's firmware and may or may not be consumer-accessible.

OEM Contracts[edytuj | edytuj kod]

Computer hardware is often sold with the operating system of a software original equipment manufacturer (OEM) already installed. It is uncommon for this operating system to be Linux, even though the portability features of Linux mean that it can be installed on most machines. In the case of IBM PC compatibles the OS is usually Microsoft Windows; in the case of Apple Macintosh computers it has always been a version of Apple's OS, currently OS X; Sun sells SPARC hardware with Solaris installed; video game consoles such as the Xbox, Playstation, and Gamecube each have their own proprietary OS. That Linux is not installed by default on most computer hardware limits its market share: consumers are unaware that an alternative exists, they must make a conscious effort to use a different operating system, and they must either perform the actual installation themselves, or depend on support from a friend, relative, or computer professional.

However, it is actually possible to buy hardware with Linux pre-installed. Hewlett-Packard and Dell both sell general purpose Linux laptops[31], and custom-order PC manufacturers will also build Linux systems. Terra Soft sells Macintosh computers and Playstation 3 consoles with Yellow Dog Linux pre-installed. It is more common to find embedded devices sold with Linux as the default manufacturer-supported OS, including the Linksys NSLU2 router, TiVo's line of personal video recorders, and Linux-based cellphones, PDAs, and portable music players.

Consumers also have the option of obtaining a refund for unused OEM operating system software. The end user license agreement (EULA) for Apple and Microsoft operating systems gives the consumer the opportunity to reject the license and obtain a refund. If requesting a refund directly from the manufacturer fails, it is also possible that a lawsuit in small claims court will work[32]. On February 15, 1999, a group of Linux users in Orange County, California held a "Windows Refund Day" protest in an attempt to pressure Microsoft into issuing them refunds[33]. In France, the Linuxfrench and AFUL organizations along with free software activist Roberto Di Cosmo started a "Windows Detax" movement[34], which led to a 2006 petition against "racketiciels"[35] (translation: software racketeers) and the DGCCRF branch of the French government filing several complaints against bundled software.

Interface[edytuj | edytuj kod]

Interfejs wiersza poleceń

Interfejs Wiersza Poleceń[edytuj | edytuj kod]

 Osobny artykuł: Wiersz poleceń.

Linux zawiera interfejs wiersza poleceń (CLI) jako część fuknkcji przejętych z Uniksa. Dystrybucje wyspecjalizowane na serwery lub administrację mogę używać wiersza poleceń jako jedynego interfejsu. Nieobecność [Interfejs graficzny|interfejsu graficznego] (GUI) pozwala na zminimalizowanie wykorzystywanych zasobów systemowych. Maszyny z Linuksem mogą równie dobrze działać bez podłączonego monitora. Aby administrator mógł się na nich zalogować potrzeba, albo zdalnego X11, albo terminal musi być uruchomiony z protokołu, takiego jak SSH lub telnet. W sieciach lokalnych zdalne używanie X11 jest przeważnie akceptowalne, ale na dłuższe dystanse operacje te mogą zajmować za dużo czasu.

Na początku wiele operacji wykonywanych w Linuksie wymagało użycia wiersza poleceń. Rozwój dystrybucji przeznaczonych na komputery biurkowe i domowe zmieniło ten stan rzeczy. Mimo wszystko, wiele manuali i tutorialów często podaje możliwoś rozwiązania problemu z wiersza poleceń nawet, gdy można to zrobić używająć aplikacji graficznej. Wiersz poleceń jest uniwersalny w świecie Linuksa, gdzie graficzny interfejs na każdej maszynie może być inny. To również ułatwia współpracę między Linuksem i innymi maszynami, które również używają wiersza poleceń, np. OS X. Łatwiej jest również udzielić pomocy, gdy operacja ta sprowadza się do napisania/skopiowania tego, co należy wkleić do terminala.

Dobrze zaprojektowane GUI jest łatwiejsze w użyciu dla większośći zadań, lecz bardziej doświadczeni użytkownicy mogą wciąż preferować linię komend; naukowcy, inżynierzy i twórcy oprogramowania najczęściej używają właśnie termia nala. Wiele ważnych programów nie ma GUI. Wynika to z filozofii Uniksa, mówiącej o tym, aby tworzyć program robiący dobrze jedną rzecz. Wiersz poleceń jest wyposażony w automat, pozwalający na kilkukrotne, lub opóźnione wypełnianie zadań i naturalnym procesem jest to, że komenda wykonująca pewne zadanie jest wpierw wydawana bezpośrednio, a potem używana ponownie w skrypcie zapewniając automatyzację.

Graficzny i tekstowy interfejs mogą również nawzajem się uzupełniać. Jest wiele graficznych emulatorów terminali, np. xterm, rxvt, aterm, gnome-terminal i konsole. X11 potrafi zapewnić komunikację między tymi porgramami a wierszem poleceń. Dodatkowo, KDE oferuje narzędzie DCOP, które zapewnia większą integrację aplikacji graficznych z terminalem.

Window Maker 0.91.0, pokazujący odtwarzacz muzyki XMMS, emulator terminala xterm, i manu oraz ustawienia Window Maker'a.

Interfejs graficzny[edytuj | edytuj kod]

Małe menedżery okien[edytuj | edytuj kod]

 Osobny artykuł: X window manager.

Tradycyjne GUI dla Linuksa bazuje na osobnym menadżerze okien, takim jak FVWM, Enlightenment, lub Window Maker i zestawem najrózniejszych aplikacji uruchamianych na nim. Menedżer okien pozwala na kontrolowanie położeia i wyglądu okien indywidualnych aplikacji oraz na interakcję z X Window System.

Niewygodne w używaniu niezależnego menedżera okien jest to, iż wymaga on znacznej pracy, aby dostosować go do własnych wymagań. Dodatkowo, będzie wiele niezgodności między interfejsami różnych aplikacji; zrzuty ekranów przedstawiają XMMS, RealPlayer, Mozilla Firefox, xterm, gaim i Konqueror, każdy z nich wygląda trochę inaczej, inaczej zachowuje się, używa innych skrótów klawiszowych, inaczej organizuje menu, posiada inny mechanizm kompiowania i wklejania. Nawet jeśli indywidualne aplikacje mają idealne rozwiązanie, to używanie ich wszystkich w grupie może być dość dziwnym doświadczeniem, a zachowania, których nauczymy się w jednej aplikacji zazwyczaj da się zastosować tylko w niej.

Z drugiej strony, duża elastyczność daje doświadczonym użytkownikom możliwość dopasowania swojego menedżera okien do własnych potrzeb oraz własnego gustu. Dodatkowo otrzymujemy bardzo szybki i niezawodny system. Pochłanianie zasobów, takich jak procesor, pamięć, a nawet miejsce na dysku twardym jest dużo mniejsze, niż potrzeby dużych środowisk graficznych, tj. np. GNOME, lub KDE. Użytkownicy, którzy preferują pracę w terminalu chętnie pracują na jak najmniejszych środowkiskach graficznych, a menedżer okien sam w sobie ma im zapewnić tylko możliwość otwierania okien emulatorów terminali komputerowych.

GNOME 2.16 z uruchomionym menadżerem plików Nautilus i edytorem tekstu gedit.
KDE 3.5 z uruchomionym menadżerem kontaktów Kontact, menadżerem plików, przeglądarką internetową i przeglądarką plików Konqueror.

Duże środowiska graficzne[edytuj | edytuj kod]

 Osobne artykuły: GNOMEKDE.

Używanie małych menedżerów okien staje się coraz mniej popularne wraz ze wzrostem większych środowisk graficznych, takich jak np. GNOME lub KDE. Są to zintegrowane sposoby na wygodną pracę, które starają się zapewnić interfejs równie łatwy w obsłudze jak ten z Mac OS X lub {{Microsoft Windows]]. Łączą one menedżer okien z pakietem standardowych aplikacji, które są bardzo łatwe w obsłudze, nawet przez początkujących użytkowników. Linuksowe środowiska graficzne są troche podobne do interfejsu Aqua w Mac OS X. Na początku znanym środowiskiem graficznym było CDE, lecz nigdy nie było popularne na Linuksie ze względu na koszty i ograniczenia licencyjne. W 1996 powstało KDE, a po nim, w 1997 GNOME. Xfce jest trochę mniejszym projektem, który również powstał w 1997 i skupia się na szybkości i możliwości konfiguracji. W dzisiejszych czasach GNOME i KDE są dominującymi rozwiązaniami i zazwyczaj instaluje się je standardowo na systemach Linuksowych. Każde z nich oferuje:

  • Programistom gwarantuje m. in. zestaw standardowych API, oraz środowisko programistyczne.
  • Tłumaczom zapewnia możliwość współpracy. KDE i GNOME są dostępne w wielu językach
  • Artystom miejsce, w którym mogą podzielić się swoimi talentami.
  • Ergonomistom daje szansę, aby uczynić środowisko pracy jeszcze prostszym.
  • Użytkownikom, kompletne środowisko graficzne z zestawem potrzebnych aplikacji, takich jak menadżer plików, przeglądarka internetowa, odtwarzacz multimediów, klient poczty elektronicznej, książka adresowa, przeglądarka dokument0ów PDF, menadżer fotografii i system umożliwiający dostosowanie systemu do swoich potrzeb.

Kilka lat po 2000r. te dwa środowiska w pełni dojrzały[36]. Projekty Appeal[37] i ToPaZ[38] skupiają się na opracowywaniu nowych możliwości dla kolejnych edycji KDE i GNOME. Mimo to, iż oba te środowiska graficzne mają podobne cele, radzą sobie z nimi całkiem inaczej. KDE stara się, aby aplikacje były jak najbardziej konfigurowalne, aby można było w nie ingerować i aby mogły ze sobą w łatwy sposób kooperować. GNOME z drugiej strony dbając o najmniejszy szczegół stara się aby całość była jak najprostsza.Każda z nich przyciąga inny rodzaj użytkowników i tworzy inną społeczność developerów.

Applications[edytuj | edytuj kod]

Desktop[edytuj | edytuj kod]

Under Linux, desktop software in high demand is of high quality; this includes applications such as word processors, spreadsheets, email clients, and web browsers. The following are the major Linux desktop applications:

Although in specialized application domains such as desktop publishing and professional audio there may be a lack of commercial quality software, users migrating from Mac OS X and Windows can find equivalent applications for most tasks[39]. Furthermore, it is uncommon for a free software project that works under Windows or OS X not to have a Linux version; a user accustomed to using free software under Windows can generally expect to find the same applications running under Linux. A growing amount of proprietary desktop software is also supported under Linux[40], examples being Macromedia Flash, Adobe Acrobat, Opera, Skype, and Nero Burning ROM. Additionally, Crossover Office is a commercial solution based on the open source WINE project that supports running Windows versions of Microsoft Office and Photoshop.

Vega Strike, a space flight game.

Gaming[edytuj | edytuj kod]

There are fewer games available for Linux than for Windows or console systems or Mac OS X; game development companies are generally reluctant to support an operating system with a small desktop market share. The games that are available can be classified into four categories: 1) open source games; 2) open source remakes or re-releases of classic games; 3) ports of proprietary games; 4) proprietary games that run under an emulator. The Linux Gamers' Game List is a long but selective list[41], and The Linux Game Tome is a database with many entries that is less discriminating but has user comments and rankings[42]. There is also a list of Linux games, a list of commercial Linux games, and a list of professionally-developed Linux games.

There are few original open source games that have obtained notability. Battle for Wesnoth is a turn-based strategy game; Nethack and ZAngband are text-based computer role-playing games; Nexuiz is a first-person shooter; Tuxracer is a 3D racing game featuring Tux; and Vega Strike is a space flight simulation game. There are a larger number of open source remakes of classic games; one of the most publicized is FreeCiv, a remake of Civilization II. There is also OpenTTD, a remake of Transport Tycoon Deluxe; Frozen Bubble and Snood, adaptations of Puzzle Bobble; Scorched 3D, a 3D adaptation of Scorched Earth; Ur-Quan Masters, based on the original source code for Star Control II; Homeworld SDL, based on the original source code for Homeworld; StepMania, a remake of Dance Dance Revolution; Crack Attack!, inspired by Tetris Attack; various remakes of Doom, Wolfenstein 3D, and Quake based on the engines for these games; and two different remakes of Wing Commander: Privateer based on the Vega Strike engine.

Nexuiz, a first-person shooter.

In some cases, developers have released Linux ports of their games directly. iD Software together with Raven Software ported Doom 3, the Quake series, and Return to Castle Wolfenstein; Bioware released Neverwinter Nights; Epic Games released Unreal Tournament 2003 and Unreal Tournament 2004; Croatem released the Serious Sam series; and Introversion released Darwinia and Uplink. More commonly, an independent company has taken on the task of porting prominent Windows games to Linux. Loki Software was the first such company, and between 1998 and 2002 ported Descent³, Heretic II, Heroes of Might and Magic III, Myth II: Soulblighter, Railroad Tycoon II, Rune, Sid Meier's Alpha Centauri, Sim City 3000, Tribes II, and Unreal Tournament. Linux Game Publishing was founded in 2001 in response to the impending demise of Loki, and has brought Cold War, Postal 2, and X2: The Threat to Linux. Finally, icculus.org has ported Aliens versus Predator, Duke Nukem 3D, Medal of Honor: Allied Assault, and Rise of the Triad.

There are also API's, virtual machines, and machine emulators that provide binary compatability: WINE and the commercial Cedega fork exist for Windows games; Snes9x and ZSNES for the Super Nintendo; ePSXe and PCSX for the Playstation; Mupen64 for the Nintendo 64; VisualBoy Advance for the GameBoy Advance; ScummVM for LucasArts adventures; DOSBox for MS DOS; UAE for the Amiga; Frotz for Z-Machine text adventures; and finally Java and Flash for games targeting these platforms.

As far as development is concerned, library support for Linux gaming is provided directly by OpenGL and ALSA, or by SDL, a cross-platform multimedia wrapper around system-dependent libraries. The DRI project provides open source video card drivers, and nVidia, and ATI also release binary kernel modules for their video cards. Linux also runs on several game consoles, including the Xbox[43], Playstation 2, and Gamecube[44], which allows game developers without an expensive game development kit to access console hardware.

Servers, supercomputers and embedded devices[edytuj | edytuj kod]

Historically, Linux has mainly been used as a server operating system, and has risen to prominence in that area; Netcraft reported in September 2006 that eight of the ten most reliable internet hosting companies run Linux on their web servers[45]. This is due to its relative stability and long uptimes, and the fact that desktop software with a graphical user interface is often unneeded. Enterprise and non-enterprise Linux distributions may be found running on servers. Linux is the cornerstone of the LAMP server-software combination (Linux, Apache, MySQL, Perl/PHP/Python) which has achieved popularity among developers, and which is one of the more common platforms for website hosting.

Linux is commonly used as an operating system for supercomputers. As of January 5 2007, out of the top 500 systems, 376 (75.2%) run Linux[46].

Due to its low cost and its high configurability, an embedded Linux is often used in embedded systems such as television set-top boxes, mobile phones, and handheld devices. Linux has become a major competitor to the proprietary Symbian OS found in many mobile phones (16.7% of smartphones sold worldwide during 3Q, 2006 were using Linux[47]), and it is an alternative to the dominant Windows CE and Palm OS operating systems on handheld devices. The popular TiVo digital video recorder uses a customized version of Linux[48]. Several network firewall and router standalone products, including several from Linksys, use Linux internally, using its advanced firewalling and routing capabilities.

Software development[edytuj | edytuj kod]

Most Linux distributions support dozens of programming languages. Core system software such as libraries and basic utilities are usually written in C. Enterprise software is often written in C, C++, Java, Perl, Ruby, or Python. The most common collection of utilities for building both Linux applications and operating system programs is found within the GNU toolchain, which includes the GNU Compiler Collection (GCC) and the GNU build system. Amongst others, GCC provides compilers for C, C++, Java, and Fortran. The Linux kernel itself is written to be compiled with GCC.

Most distributions also include support for Perl, Ruby, Python and other dynamic languages. Examples of languages that are less common, but still well-supported, are C# via the Mono project, and Scheme. A number of Java Virtual Machines and development kits run on Linux, including the original Sun Microsystems JVM (HotSpot), and IBM's J2SE RE, as well as many open-source projects like Kaffe. The two main frameworks for developing graphical applications are those of GNOME and KDE. These projects are based on the GTK+ and Qt widget toolkits, respectively, which can also be used independently of the larger framework. Both support a wide variety of languages. There are a number of Integrated development environments available including MonoDevelop, KDevelop, Anjuta, NetBeans, and Eclipse while the traditional editors Vim and Emacs remain popular[49].

As well as these free and open source options, there are proprietary compilers and tools available from a range of companies such as the Intel C++ Compiler, PathScale[50], Micro Focus COBOL[51], Franz Inc[52], and the Portland Group[53].

Comparisons with other operating systems[edytuj | edytuj kod]

Comparison of Windows and Linux[edytuj | edytuj kod]

Due to the prevalence of Windows from the mid-1990s onwards, a comparison between Windows and Linux became a common topic of conversation among computer enthusiasts. In the past, Linux and other free software projects have been frequently criticized for not going far enough to ensure ease of use[54]. However, the Berlin-based user experience organization Relevantive concluded in 2003 that the usability of Linux for a set of desktop-related tasks was "nearly equal to Windows XP."[55] Since then, there have been numerous independent studies and articles which indicate that a modern Linux desktop using either GNOME or KDE is on par with Microsoft Windows, even in a business setting[56].

Although lack of application support is often cited as a reason to use Windows over Linux, compatibility layers such as Wine or NdisWrapper allow some Microsoft Windows applications and drivers to be used on Linux without requiring the vendor to adapt them. This allows users to more easily migrate from Windows to Linux since they can still run many of their Windows applications with little additional effort. Additionally, commercial software such as CrossOver have been developed which extend Wine to allow many commercial Windows applications to run in a Linux environment. In a similar fashion, Cygwin and Microsoft Windows Services for UNIX make it possible for users of Windows to run some GNU and other software normally only available on Linux and other Unix-like systems.

References[edytuj | edytuj kod]

Przypisy[edytuj | edytuj kod]

  1. Linux.org: Linux Online ─ About the Linux Operating System. 2007-07-02. [dostęp 2007-07-06]. (ang.).
  2. 1.1. W: Lars Wirzenius, Joanna Oja, Stephen Stafford, Alex Weeks: Linux System Administrator's Guide. 2004.
  3. Overview of the GNU System - GNU Project - Free Software Foundation (FSF)
  4. Szablon:Cite newsgroup
  5. History of RedHat Linux
  6. a b David A Wheeler: More Than a Gigabuck: Estimating GNU/Linux's Size. 2002-07-29. [dostęp 2006-05-11].
  7. Jesús M González-Barahona, et al: Counting potatoes: The size of Debian 2.2. 3 January 2002. [dostęp 2006-05-11].
  8. David A Wheeler: Why Open Source Software / Free Software (OSS/FS)? Look at the Numbers!. [dostęp 2006-04-01].
  9. Linux To Ring Up $35 Billion By 2008. [dostęp 2006-04-01].
  10. Dominic White: Microsoft eyes up a new kid on the block. 2004-04-02. [dostęp 2006-09-09].
  11. Linux Online - Getting Started with Linux - Lesson 1 (2)
  12. Why customers are flocking to Linux.
  13. The rise and rise of Linux.
  14. Szablon:Cite newsgroup
  15. Linus pronouncing Linux in English and Swedish. [dostęp 2007-01-20].
  16. Poradnia językowa PWN: x czy ks przed końcówką?
  17. Linux and GNU - GNU Project - Free Software Foundation (FSF)
  18. Szablon:Cite video
  19. U.S. Reg No: 1916230. [dostęp 2006-04-01].
  20. Linux Timeline. 31 May 2006.
  21. Linus gets tough on Linux trademark. 2005-09-05. [dostęp 2006-09-04].
  22. Linus Torvalds interview. [dostęp 2006-05-08].
  23. IFSO: Transcript of a talk by Richard Stallman about GPLv3, February 25th 2006
  24. SCO Losing Linux Battle With IBM.
  25. Certifying Linux
  26. How source code compatible is Debian with other Unix systems?
  27. POSIX.1 (FIPS 151-2) Certification
  28. Richard Stallman: Stallman on why GNU chose the Unix design. 09. (Błąd! Nieznany kod języka: English. Sprawdź listę kodów.).
  29. Prakash Advani: If I could re-write Linux. February 8 2004. [dostęp 2007-01-23].
  30. The LWN.net Linux Distribution List. [dostęp 2006-05-19].
  31. Laptops/Notebooks with Linux Preinstalled
  32. Getting a Windows Refund in California Small Claims Court
  33. Windows Refund Day
  34. Detaxe.org (French) Say no to bundled software - Say yes to informed consumers
  35. (fr) Petition against software racketeers
  36. [www.linux-usability.de/download/linux_usability_report_en.pdf Raport Użyteczności Linuksa v1.01]
  37. Oficjalna strona Appeal
  38. Oficjalna strona ToPaZ
  39. The table of equivalents / replacements / analogs of Windows software in Linux.
  40. The Global Desktop Project, Building Technology and Communities. [dostęp 2006-05-07].
  41. Linux Gamers' Game List
  42. The Linux Game Tome
  43. Xbox Linux Wiki
  44. Gamecube Linux Wiki
  45. Rackspace Most Reliable Hoster in September. Netcraft, October 7 2006. [dostęp 2006-11-01].
  46. Statistics | TOP500 Supercomputing Sites
  47. The Palm OS Clings To Life - Smartphone Operating Systems - InformationWeek
  48. TiVo - GNU/Linux Source Code. [dostęp 2006-12-12].
  49. Joe Brockmeier: A survey of Linux Web development tools. [dostęp 2006-12-16].
  50. PathScale Compiler Suite | PathScale
  51. Enterprise Application Management and Modernization - Micro Focus
  52. Franz Inc. Web 3.0's Database
  53. The Portland Group
  54. John Blau: PC World - Linux Earns User-Friendly Rating. PC World, 2003-08-04. [dostęp 2005-12-17]].
  55. Relevantive Linux usability study. [dostęp 2006-04-03].
  56. Emmett Dulaney: Desktop Linux: Ready for Prime Time?. June 2005. [dostęp 2006-06-19].

See also[edytuj | edytuj kod]

Szablon:Portalpar

External links[edytuj | edytuj kod]

Szablon:Sisterlinks

Szablon:Unix-like Szablon:Linux-distro