Linux -Linux

Linux
Tuxa pingvinen
Tux pingvinen, Linux maskot
Utvecklare Samhällsbidragsgivare,
Linus Torvalds
Skrivet i C , assemblerspråk och andra
OS-familjen Unix-liknande
Arbetstillstånd Nuvarande
Källmodell Öppen källa
Initial release 17 september 1991 ; 31 år sedan ( 1991-09-17 )
Förvar git .kernel .org /pub /scm /linux /kernel /git /torvalds /linux .git /
Marknadsföringsmål Cloud computing , inbäddade enheter , stordatorer , mobila enheter , persondatorer , servrar , superdatorer
Tillgänglig i Flerspråkig
Plattformar Alpha , ARC , ARM , C - Sky , Hexagon , IA -64 , LoongArch , m68k , Microblaze , MIPS , Nios II , OpenRISC , PA-RISC , PowerPC , RISC-V , s390 , SuperH , SPARC , Xtensa
Typ av kärna Monolitisk
Användarland GNU , BusyBox
Standardanvändargränssnitt
_
Licens GPLv2
Artiklar i serien
Linux-kärna
Linux-distribution

Linux ( / ˈ l n ʊ k s / ( lyssna ) LEE -nuuks eller / ˈ l ɪ n ʊ k s / LIN -uuks ) är en familj av Unix-liknande operativsystem med öppen källkod baserad på Linux-kärnan , en operativsystemets kärna släpptes först den 17 september 1991 av Linus Torvalds . Linux är vanligtvis förpackat som en Linux-distribution , som inkluderar kärnan och stödjande systemprogramvara och bibliotek , av vilka många tillhandahålls av GNU-projektet . Många Linux-distributioner använder ordet "Linux" i sitt namn, men Free Software Foundation använder namnet " GNU/Linux " för att betona vikten av GNU -programvara, vilket orsakar en del kontroverser .

Populära Linux-distributioner inkluderar Debian , Fedora Linux och Ubuntu , varav den senare själv består av många olika distributioner och modifieringar, inklusive Lubuntu och Xubuntu . Kommersiella distributioner inkluderar Red Hat Enterprise Linux och SUSE Linux Enterprise . Desktop Linux-distributioner inkluderar ett fönstersystem som X11 eller Wayland , och en skrivbordsmiljö som GNOME eller KDE Plasma . Distributioner avsedda för servrar kan utelämna grafik helt, eller inkludera en lösningsstack som LAMP . Eftersom Linux är fritt omdistribuerbart, kan vem som helst skapa en distribution för vilket syfte som helst.

Linux utvecklades ursprungligen för persondatorer baserat på Intel x86- arkitekturen, men har sedan dess porterats till fler plattformar än något annat operativsystem. På grund av dominansen av den Linux-baserade Androidsmartphones , har Linux, inklusive Android, den största installerade basen av alla generella operativsystem, från och med maj 2022. Även om Linux, från och med november 2022, endast används av cirka 2,6 procent av stationära datorer dominerar Chromebook , som kör det Linux-kärnbaserade ChromeOS , den amerikanska grund- och gymnasieutbildningsmarknaden och representerar nästan 20 procent av försäljningen av bärbara datorer under 300 USD i USA. Linux är det ledande operativsystemet på servrar (över 96,4 % av de översta 1 miljon webbservrarnas operativsystem är Linux), leder andra stora järnsystem som stordatorer och används på alla världens 500 snabbaste superdatorer (sedan november 2017, efter att gradvis ha förskjutit alla konkurrenter).

Linux körs också på inbyggda system , dvs enheter vars operativsystem vanligtvis är inbyggt i firmware och är mycket skräddarsydda för systemet. Detta inkluderar routrar , automationskontroller , smarta hemenheter , videospelskonsoler , tv-apparater (Samsung och LG Smart-TV ), bilar (Tesla, Audi, Mercedes-Benz, Hyundai och Toyota) och rymdfarkoster ( Falcon 9- raket, Dragon- besättningskapsel och Perseverance rover) .

Linux är ett av de mest framträdande exemplen på gratis och öppen källkodsamarbete . Källkoden kan användas, modifieras och distribueras kommersiellt eller icke-kommersiellt av vem som helst under villkoren i dess respektive licenser, såsom GNU General Public License (GPL). Linuxkärnan, till exempel, är licensierad under GPLv2, med ett undantag för systemanrop som tillåter att kod som anropar kärnan via systemanrop inte licensieras under GPL.

Historia

Föregångare

Linus Torvalds , huvudförfattare till Linux-kärnan

Operativsystemet Unix skapades och implementerades 1969, vid AT&T :s Bell Labs , i USA av Ken Thompson , Dennis Ritchie , Douglas McIlroy och Joe Ossanna . Första gången släpptes 1971, Unix skrevs helt i assemblerspråk , vilket var vanligt vid den tiden. 1973, i ett banbrytande tillvägagångssätt, skrevs det om i programmeringsspråket C av Dennis Ritchie (med undantag för vissa hårdvara och I/O-rutiner). Tillgången till en språkimplementering på hög nivå av Unix gjorde porteringen till olika datorplattformar enklare.

På grund av ett tidigare antitrustfall som förbjöd det att komma in i datorbranschen, licensierade AT&T operativsystemets källkod som en affärshemlighet för alla som frågade. Som ett resultat växte Unix snabbt och blev allmänt antagen av akademiska institutioner och företag. 1984 avyttrade AT&T sina regionala verksamhetsbolag och befriades från sin skyldighet att inte gå in i datorbranschen; befriad från denna skyldighet började Bell Labs sälja Unix som en patentskyddad produkt, där användare inte lagligen fick ändra den.

Onyx Systems började sälja tidiga mikrodatorbaserade Unix-arbetsstationer 1980. Senare började Sun Microsystems , grundat som en spin-off av ett studentprojekt vid Stanford University , också sälja Unix-baserade skrivbordsarbetsstationer 1982. Även om Suns arbetsstationer inte använde PC-hårdvara som Linux senare utvecklades för, representerade det första framgångsrika kommersiella försöket att distribuera en primärt enanvändarmikrodator som körde ett Unix-operativsystem.

Med Unix alltmer "låst in" som en proprietär produkt, hade GNU-projektet , som startades 1983 av Richard Stallman , målet att skapa ett "komplett Unix-kompatibelt mjukvarusystem" helt sammansatt av fri programvara . Arbetet började 1984. Senare, 1985, startade Stallman Free Software Foundation och skrev GNU General Public License (GNU GPL) 1989. I början av 1990-talet var många av de program som krävdes i ett operativsystem (som bibliotek, kompilatorer ) , textredigerare , ett kommandoradsskal och ett fönstersystem ) färdigställdes, även om lågnivåelement som enhetsdrivrutiner , demoner och kärnan , kallad GNU Hurd , var avstannade och ofullständiga.

MINIX skapades av Andrew S. Tanenbaum , en professor i datavetenskap , och släpptes 1987 som ett minimalt Unix-liknande operativsystem riktat till studenter och andra som ville lära sig operativsystemets principer. Även om den fullständiga källkoden för MINIX var fritt tillgänglig, hindrade licensvillkoren att den var fri programvara tills licensen ändrades i april 2000.

Även om det inte släpptes förrän 1992, på grund av juridiska komplikationer , föregick utvecklingen av 386BSD , som NetBSD , OpenBSD och FreeBSD härstammade från, före Linux.

Linus Torvalds har vid olika tillfällen uttalat att om GNU-kärnan eller 386BSD hade varit tillgänglig vid den tiden (1991), skulle han förmodligen inte ha skapat Linux.

Skapande

När Torvalds gick på Helsingfors universitet hösten 1990, anmälde han sig till en Unix-kurs. Kursen använde en MicroVAX- minidator som körde Ultrix , och en av de obligatoriska texterna var Operativsystem: Design och implementering av Andrew S. Tanenbaum . Den här läroboken innehöll en kopia av Tanenbaums operativsystem MINIX . Det var med denna kurs som Torvalds först blev utsatt för Unix. 1991 blev han nyfiken på operativsystem. Frustrerad över licensieringen av MINIX, som vid den tiden begränsade den till enbart pedagogisk användning, började han arbeta på sin egen operativsystemkärna, som så småningom blev Linuxkärnan .

Den 3 juli 1991, i ett försök att implementera Unix- systemanrop , försökte Linus Torvalds få en digital kopia av POSIX -standarddokumentationen med en begäran till comp.os.minix -nyhetsgruppen . Efter att ha hittat POSIX-dokumentationen misslyckades Torvalds till en början att fastställa systemanrop från SunOS -dokumentation som ägs av universitetet för användning vid driften av dess Sun Microsystems- server. Han lärde sig också några systemanrop från Tenenbaums MINIX-text.

Torvalds påbörjade utvecklingen av Linux-kärnan på MINIX och applikationer skrivna för MINIX användes även på Linux. Senare mognade Linux och ytterligare Linux-kärnautveckling skedde på Linux-system. GNU-applikationer ersatte också alla MINIX-komponenter, eftersom det var fördelaktigt att använda den fritt tillgängliga koden från GNU-projektet med det nystartade operativsystemet; kod licensierad under GNU GPL kan återanvändas i andra datorprogram så länge de också släpps under samma eller en kompatibel licens. Torvalds initierade en byte från sin ursprungliga licens, som förbjöd kommersiell omdistribution, till GNU GPL. Utvecklare arbetade för att integrera GNU-komponenter med Linux-kärnan, vilket skapade ett fullt fungerande och gratis operativsystem.

Namngivning

5,25-tums disketter med en mycket tidig version av Linux

Linus Torvalds hade velat kalla sin uppfinning för " Freax ", en portmanteau av "fri", "freak" och "x" (som en anspelning på Unix). Under starten av hans arbete med systemet inkluderade några av projektets makefiler namnet "Freax" i ungefär ett halvår. Till en början ansåg Torvalds namnet "Linux" men avfärdade det som för egoistiskt.

För att underlätta utvecklingen laddades filerna upp till FTP-servern ( ftp.funet.fi) hos FUNET i september 1991. Ari Lemmke, Torvalds medarbetare vid Helsingfors Tekniska Högskola (HUT) som var en av de frivilliga administratörerna för FTP-servern vid den tiden, tyckte inte att "Freax" var ett bra namn, så han döpte projektet till "Linux" på servern utan att rådfråga Torvalds. Senare samtyckte Torvalds dock till "Linux".

Enligt ett nyhetsgruppsinlägg av Torvalds ska ordet "Linux" uttalas ( / ˈ l ɪ n ʊ k s / ( lyssna ) LIN -uuks ) med ett kort 'i' som i 'print' och 'u' som i 'sätta'. För att ytterligare demonstrera hur ordet "Linux" ska uttalas, inkluderade han en ljudguide med kärnans källkod. Men i den här inspelningen uttalar han Linux som /ˈlinʊks/ ( LEEN -uuks ) med en kort men nära främre orundad vokal istället för en nära nära främre orundad vokal som i hans nyhetsgruppsinlägg.

Kommersiellt och populärt upptag

Ubuntu , en populär Linux-distribution
Nexus 5X som kör Android

Adoptionen av Linux i produktionsmiljöer, snarare än att endast användas av hobbyister, började ta fart först i mitten av 1990-talet i superdatorsamhället, där organisationer som NASA började ersätta sina allt dyrare maskiner med kluster av billiga handelsdatorer som kör Linux . Kommersiell användning började när Dell och IBM , följt av Hewlett-Packard , började erbjuda Linux-stöd för att undkomma Microsofts monopol på marknaden för stationära operativsystem.

Idag används Linux-system genom hela datoranvändningen, från inbyggda system till praktiskt taget alla superdatorer , och har säkrat en plats i serverinstallationer som den populära LAMP -applikationsstacken. Användningen av Linux-distributioner i hem- och företagsdatorer har ökat. Linux-distributioner har också blivit populära på netbook- marknaden, med många enheter som levereras med anpassade Linux-distributioner installerade, och Google släpper sitt eget ChromeOS designat för netbooks.

Linuxs största framgång på konsumentmarknaden är kanske marknaden för mobila enheter, där Android är det dominerande operativsystemet på smartphones och mycket populärt på surfplattor och, på senare tid, på bärbara enheter . Linux-spel är också på frammarsch med Valve som visar sitt stöd för Linux och rullar ut SteamOS , sin egen spelorienterade Linux-distribution och senare Steam Deck- plattformen. Linux-distributioner har också vunnit popularitet hos olika lokala och nationella regeringar, såsom den federala regeringen i Brasilien .

Aktuell utveckling

Underhållningssystem under flygning startar upp och visar Linux-logotypen

Greg Kroah-Hartman är ledande underhållare för Linux-kärnan och vägleder dess utveckling. William John Sullivan är verkställande direktör för Free Software Foundation, som i sin tur stöder GNU-komponenterna. Slutligen utvecklar individer och företag tredjepartskomponenter som inte kommer från GNU. Dessa tredjepartskomponenter omfattar en stor mängd arbete och kan inkludera både kärnmoduler och användarapplikationer och bibliotek.

Linux-leverantörer och -gemenskaper kombinerar och distribuerar kärnan, GNU-komponenter och icke-GNU-komponenter, med ytterligare pakethanteringsprogram i form av Linux-distributioner .

Design

Många utvecklare med öppen källkod är överens om att Linux-kärnan inte designades utan snarare utvecklades genom naturligt urval . Torvalds anser att även om designen av Unix fungerade som en byggnadsställning, "växte Linux med många mutationer - och eftersom mutationerna var mindre än slumpmässiga, var de snabbare och mer riktade än alfapartiklar i DNA ." Eric S. Raymond anser att Linuxs revolutionerande aspekter är sociala, inte tekniska: innan Linux designades komplex programvara noggrant av små grupper, men "Linux utvecklades på ett helt annat sätt. Från nästan början hackades det ganska slentrianmässigt av enorma antal frivilliga som samordnar endast via Internet. Kvaliteten upprätthölls inte av stela standarder eller autokrati utan genom den naivt enkla strategin att släppa varje vecka och få feedback från hundratals användare inom några dagar, vilket skapade ett slags snabbt darwinistiskt urval av mutationer som introducerades av utvecklare." Bryan Cantrill , en ingenjör av ett konkurrerande operativsystem, håller med om att "Linux inte designades, det utvecklades", men anser att detta är en begränsning, och föreslår att vissa funktioner, särskilt de som är relaterade till säkerhet, inte kan utvecklas till, "det här är inte ett biologiskt system i slutet av dagen, det är ett mjukvarusystem." Ett Linux-baserat system är ett modulärt Unix-liknande operativsystem, som härleder mycket av sin grundläggande design från principer som etablerades i Unix under 1970- och 1980-talen. Ett sådant system använder en monolitisk kärna , Linux-kärnan , som hanterar processkontroll, nätverk, åtkomst till kringutrustning och filsystem . Enhetsdrivrutiner är antingen integrerade direkt med kärnan eller läggs till som moduler som laddas medan systemet körs.

GNU- användarlandet är en viktig del av de flesta system baserade på Linux-kärnan, med Android som det anmärkningsvärda undantaget. GNU C-biblioteket , en implementering av C-standardbiblioteket , fungerar som ett omslag för systemanrop av Linux-kärnan som är nödvändiga för kärnan-användarutrymmesgränssnittet, verktygskedjan är en bred samling av programmeringsverktyg som är avgörande för Linux-utveckling (inklusive kompilatorerna används för att bygga själva Linux-kärnan), och coreutils implementerar många grundläggande Unix-verktyg . GNU-projektet utvecklar också Bash , ett populärt CLI- skal . Det grafiska användargränssnittet (eller GUI) som används av de flesta Linux-system är byggt ovanpå en implementering av X Window System . På senare tid försöker Linux-communityt gå vidare till Wayland som det nya displayserverprotokollet i stället för X11 . Många andra program med öppen källkod bidrar till Linux-system.

Olika lager inom Linux, som också visar separation mellan användarlandet och kärnutrymmet
Användarläge Användarapplikationer bash , LibreOffice , GIMP , Blender , 0 AD , Mozilla Firefox , ...
Systemkomponenter init daemon :
OpenRC , runit , systemd ...
Systemdemoner :
polkitd , smbd , sshd , udevd ...
Fönsterhanterare :
X11 , Wayland , SurfaceFlinger (Android)
Grafik :
Mesa , AMD Catalyst , ...
Andra bibliotek:
GTK , Qt , EFL , SDL , SFML , FLTK , GNUstep , ...
C standardbibliotek fopen, execv, malloc, memcpy, localtime, pthread_create... (upp till 2000 subrutiner )
glibc siktar på att vara snabb, musl siktar på att vara lätt, uClibc siktar på inbyggda system, bionic skrevs för Android , etc. Alla siktar på att vara POSIX / SUS -kompatibla.
Kärnläge Linux kärna stat, splice, dup, read, open, ioctl, write, mmap, close, exit, etc. (cirka 380 systemanrop)
Linuxkärnan System Call Interface (SCI), syftar till att vara POSIX / SUS -kompatibel

Delsystem för processschemaläggning
IPC
delsystem

Undersystem för minneshantering
Virtuella filer
undersystem
Nätverksdelsystem
_
Andra komponenter: ALSA , DRI , evdev , klibc , LVM , device mapper , Linux Network Scheduler , Netfilter
Linux Security Modules : SELinux , TOMOYO , AppArmor , Smack
Hårdvara ( CPU , huvudminne , datalagringsenheter , etc.)

Installerade komponenter i ett Linux-system inkluderar följande:

Användargränssnitt

Användargränssnittet , även känt som skalet , är antingen ett kommandoradsgränssnitt (CLI), ett grafiskt användargränssnitt (GUI) eller kontroller kopplade till den tillhörande hårdvaran, vilket är vanligt för inbyggda system . För skrivbordssystem är standardanvändargränssnittet vanligtvis grafiskt, även om CLI är allmänt tillgängligt via terminalemulatorfönster eller på en separat virtuell konsol .

CLI-skal är textbaserade användargränssnitt, som använder text för både input och output. Det dominerande skalet som används i Linux är Bourne-Again Shell (bash), ursprungligen utvecklat för GNU-projektet . De flesta Linux-komponenter på låg nivå, inklusive olika delar av användarlandet , använder endast CLI. CLI är särskilt lämpad för automatisering av repetitiva eller försenade uppgifter och ger mycket enkel kommunikation mellan processer .

På skrivbordssystem är de mest populära användargränssnitten GUI-skalen , paketerade tillsammans med omfattande skrivbordsmiljöer , såsom KDE Plasma , GNOME , MATE , Cinnamon , LXDE , Pantheon och Xfce , även om en mängd ytterligare användargränssnitt finns. De flesta populära användargränssnitten är baserade på X Window System , ofta helt enkelt kallat "X". Det ger nätverkstransparens och tillåter att en grafisk applikation som körs på ett system visas på ett annat där en användare kan interagera med applikationen; vissa tillägg av X Window System kan dock inte fungera över nätverket. Det finns flera X-visningsservrar, där referensimplementeringen, X.Org Server , är den mest populära.

Serverdistributioner kan tillhandahålla ett kommandoradsgränssnitt för utvecklare och administratörer, men tillhandahålla ett anpassat gränssnitt mot slutanvändare, designat för systemets användningsfall. Detta anpassade gränssnitt nås via en klient som finns på ett annat system, inte nödvändigtvis Linux-baserat.

Det finns flera typer av fönsterhanterare för X11, inklusive sida vid sida , dynamisk , stapling och sammansättning . Fönsterhanterare tillhandahåller medel för att kontrollera placeringen och utseendet på individuella programfönster och interagera med X Window System. Enklare X-fönsterhanterare som dwm , ratpoison , i3wm eller herbstluftwm ger en minimalistisk funktionalitet, medan mer utarbetade fönsterhanterare som FVWM , Enlightenment eller Window Maker tillhandahåller fler funktioner som en inbyggd aktivitetsfält och teman , men är fortfarande lätta när jämfört med skrivbordsmiljöer. Skrivbordsmiljöer inkluderar fönsterhanterare som en del av sina standardinstallationer, såsom Mutter (GNOME), KWin (KDE) eller Xfwm (xfce), även om användare kan välja att använda en annan fönsterhanterare om så önskas.

Wayland är ett displayserverprotokoll avsett som en ersättning för X11-protokollet; från och med 2022 har den fått relativt bred användning. Till skillnad från X11 behöver Wayland inte en extern fönsterhanterare och sammansättningshanterare. Därför tar en Wayland-kompositör rollen som displayserver, fönsterhanterare och sammansättningshanterare. Weston är referensimplementeringen av Wayland, medan GNOMEs Mutter och KDE:s KWin porteras till Wayland som fristående skärmservrar. Enlightenment har redan porterats framgångsrikt sedan version 19.

Infrastruktur för videoingång

Linux har för närvarande två moderna API:er för kärnanvändarutrymme för hantering av videoingångsenheter: V4L2 API för videoströmmar och radio, och DVB API för digital-TV-mottagning.

På grund av komplexiteten och mångfalden av olika enheter, och på grund av det stora antalet format och standarder som hanteras av dessa API:er, måste denna infrastruktur utvecklas för att bättre passa andra enheter. Ett bra enhetsbibliotek för användarutrymme är också nyckeln till framgången för att ha användarutrymmesapplikationer för att kunna fungera med alla format som stöds av dessa enheter.

Utveckling

Förenklad historia av Unix-liknande operativsystem. Linux delar liknande arkitektur och koncept (som en del av POSIX -standarden) men delar inte icke-fri källkod med originalet Unix eller MINIX .

Den primära skillnaden mellan Linux och många andra populära samtida operativsystem är att Linux-kärnan och andra komponenter är gratis och öppen källkod . Linux är inte det enda sådana operativsystemet, även om det är det överlägset mest använda. Vissa mjukvarulicenser för gratis och öppen källkod är baserade på principen copyleft , ett slags ömsesidighet: allt arbete som härrör från en copyleft-programvara måste också vara copyleft själv. Den vanligaste fria mjukvarulicensen, GNU General Public License (GPL), är en form av copyleft, och används för Linux-kärnan och många av komponenterna från GNU-projektet .

Linux-baserade distributioner är avsedda av utvecklare för interoperabilitet med andra operativsystem och etablerade datorstandarder. Linux-system följer POSIX , SUS , LSB , ISO och ANSI -standarder där det är möjligt, även om hittills bara en Linux-distribution har POSIX.1-certifierad, Linux-FT.

Gratis mjukvaruprojekt, även om de utvecklas genom samarbete , produceras ofta oberoende av varandra. Det faktum att mjukvarulicenserna uttryckligen tillåter vidaredistribution ger dock en grund för större projekt som samlar den mjukvara som produceras av fristående projekt och gör den tillgänglig på en gång i form av en Linux-distribution.

Många Linux-distributioner hanterar en fjärrsamling av systemprogramvara och programvarupaket tillgängliga för nedladdning och installation via en nätverksanslutning. Detta gör att användarna kan anpassa operativsystemet efter sina specifika behov. Distributionerna sköts av individer, löst sammansatta lag, frivilligorganisationer och kommersiella enheter. En distribution är ansvarig för standardkonfigurationen av den installerade Linux-kärnan, allmän systemsäkerhet och mer allmänt integrering av de olika mjukvarupaketen till en sammanhängande helhet. Distributioner använder vanligtvis en pakethanterare som apt , yum , zypper , pacman eller portage för att installera, ta bort och uppdatera all programvara från ett system från en central plats.

gemenskap

En distribution drivs till stor del av dess utvecklar- och användargemenskaper. Vissa leverantörer utvecklar och finansierar sina distributioner på frivillig basis, Debian är ett välkänt exempel. Andra upprätthåller en communityversion av sina kommersiella distributioner, som Red Hat gör med Fedora och SUSE gör med openSUSE .

I många städer och regioner försöker lokala föreningar som kallas Linux User Groups (LUGs) främja sin föredragna distribution och i förlängningen fri programvara. De håller möten och tillhandahåller gratis demonstrationer, utbildning, teknisk support och installation av operativsystem till nya användare. Många Internet-gemenskaper tillhandahåller också stöd till Linux-användare och utvecklare. De flesta distributioner och fri programvara/open-source-projekt har IRC- chattrum eller nyhetsgrupper . Onlineforum är ett annat sätt att stödja, med anmärkningsvärda exempel är LinuxQuestions.org och de olika distributionsspecifika support- och communityforumen, såsom de för Ubuntu , Fedora och Gentoo . Linux-distributioner är värd för e-postlistor ; vanligtvis kommer det att finnas ett specifikt ämne som användning eller utveckling för en given lista.

Det finns flera teknikwebbplatser med Linux-fokus. Tryckta tidskrifter på Linux paketerar ofta omslagsskivor som innehåller programvara eller till och med kompletta Linux-distributioner.

Även om Linux-distributioner i allmänhet är tillgängliga utan kostnad, säljer, stödjer och bidrar flera stora företag till utvecklingen av komponenterna i systemet och fri programvara . En analys av Linux-kärnan 2017 visade att långt över 85 % av koden utvecklats av programmerare som får betalt för sitt arbete, vilket lämnar cirka 8,2 % till obetalda utvecklare och 4,1 % oklassificerade. Några av de stora företagen som ger bidrag är Intel , Samsung , Google , AMD , Oracle och Facebook . Ett antal företag, särskilt Red Hat, Canonical och SUSE , har byggt upp en betydande verksamhet kring Linux-distributioner.

De fria mjukvarulicenserna , på vilka de olika mjukvarupaketen för en distribution byggd på Linux-kärnan är baserade, rymmer och uppmuntrar uttryckligen kommersialisering; relationen mellan en Linux-distribution som helhet och enskilda leverantörer kan ses som symbiotisk . En vanlig affärsmodell för kommersiella leverantörer är att ta betalt för support, särskilt för företagsanvändare. Ett antal företag erbjuder också en specialiserad affärsversion av sin distribution, som lägger till proprietära supportpaket och verktyg för att administrera ett större antal installationer eller för att förenkla administrativa uppgifter.

En annan affärsmodell är att ge bort programvaran för att sälja hårdvara. Detta brukade vara normen i datorindustrin, med operativsystem som CP/M , Apple DOS och versioner av det klassiska Mac OS före 7.6 fritt kopierbara (men inte modifierbara). Eftersom datorhårdvara standardiserades under 1980-talet, blev det svårare för hårdvarutillverkare att dra nytta av denna taktik, eftersom operativsystemet skulle köras på vilken tillverkares dator som helst som delade samma arkitektur.

Programmering på Linux

De flesta programmeringsspråk stöder Linux antingen direkt eller via tredje parts community-baserade portar . De ursprungliga utvecklingsverktygen som används för att bygga både Linux-applikationer och operativsystemprogram finns i GNU-verktygskedjan , som inkluderar GNU Compiler Collection (GCC) och GNU Build System . GCC tillhandahåller bland annat kompilatorer för Ada , C , C++ , Go och Fortran . Många programmeringsspråk har en plattformsoberoende referensimplementering som stöder Linux, till exempel PHP , Perl , Ruby , Python , Java , Go , Rust och Haskell . LLVM -projektet släpptes först 2003 och tillhandahåller en alternativ plattformsoberoende kompilator med öppen källkod för många språk. Proprietära kompilatorer för Linux inkluderar Intel C++-kompilatorn , Sun Studio och IBM XL C/C++-kompilatorn . BASIC i form av Visual Basic stöds i sådana former som Gambas , FreeBASIC och XBasic , och vad gäller terminalprogrammering eller QuickBASIC eller Turbo BASIC- programmering i form av QB64 .

Ett vanligt kännetecken för Unix-liknande system, Linux inkluderar traditionella programmeringsspråk för särskilda ändamål inriktade på skript , textbehandling och systemkonfiguration och hantering i allmänhet. Linux-distributioner stöder skalskript , awk , sed och make . Många program har också ett inbäddat programmeringsspråk för att stödja konfigurering eller programmering själva. Till exempel stöds reguljära uttryck i program som grep och locate , den traditionella Unix MTA Sendmail innehåller sitt eget Turing kompletta skriptsystem och den avancerade textredigeraren GNU Emacs är uppbyggd kring en allmän Lisp- tolk.

De flesta distributioner inkluderar även stöd för PHP , Perl , Ruby , Python och andra dynamiska språk . Även om det inte är lika vanligt, stöder Linux också C# (via Mono ), Vala och Scheme . Guile Scheme fungerar som ett förlängningsspråk som riktar sig till GNU- systemverktygen och försöker göra de konventionellt små, statiska , kompilerade C -programmen av Unix-design snabbt och dynamiskt utbyggbara via ett elegant, funktionellt skriptsystem på hög nivå; många GNU-program kan kompileras med valfria Guile- bindningar för detta ändamål. Ett antal virtuella Java-maskiner och utvecklingspaket körs på Linux, inklusive den ursprungliga Sun Microsystems JVM ( HotSpot ), och IBM:s J2SE RE, såväl som många open-source-projekt som Kaffe och Jikes RVM .

GNOME och KDE är populära skrivbordsmiljöer och tillhandahåller ett ramverk för att utveckla applikationer. Dessa projekt är baserade på GTK- och Qt- widget-verktygssatserna , som också kan användas oberoende av det större ramverket. Båda stöder en mängd olika språk. Det finns ett antal integrerade utvecklingsmiljöer tillgängliga inklusive Anjuta , Code::Blocks , CodeLite , Eclipse , Geany , ActiveState Komodo , KDevelop , Lazarus , MonoDevelop , NetBeans och Qt Creator , medan de sedan länge etablerade redaktörerna Vim , nano och Emacs populär.

Hårdvarustöd

Linux finns överallt på olika typer av hårdvara.

Linux-kärnan är en brett portad operativsystemkärna, tillgänglig för enheter som sträcker sig från mobiltelefoner till superdatorer; den körs på ett mycket varierat utbud av datorarkitekturer , inklusive ARM -baserade Android -smartphones och IBM Z stordatorer . Specialiserade distributioner och kärngafflar finns för mindre vanliga arkitekturer; till exempel kan ELKS kärngaffel köras på Intel 8086 eller Intel 80286 16-bitars mikroprocessorer , medan µClinux kärngaffel kan köras på system utan minneshanteringsenhet . Kärnan körs också på arkitekturer som bara var avsedda att använda ett tillverkarskapat operativsystem, såsom Macintosh- datorer (med PowerPC- , Intel- och Apple-kiselprocessorer ), handdatorer , videospelskonsoler , bärbara musikspelare och mobiltelefoner.

Linux har ett rykte om att stödja gammal hårdvara mycket väl genom att underhålla standardiserade drivrutiner under lång tid. Det finns flera branschorganisationer och hårdvarukonferenser som ägnas åt att underhålla och förbättra stödet för diverse hårdvara under Linux, såsom FreedomHEC . Med tiden har stödet för olika hårdvara förbättrats i Linux, vilket resulterar i att alla köp från hyllan har en "god chans" att vara kompatibla.

Under 2014 lanserades ett nytt initiativ för att automatiskt samla in en databas över alla testade hårdvarukonfigurationer.

Används

Marknadsandelar och upptag

Många kvantitativa studier av gratis /öppen källkod fokuserar på ämnen inklusive marknadsandelar och tillförlitlighet, med många studier som specifikt undersöker Linux. Linux-marknaden växer och storleken på Linux-operativsystemmarknaden förväntas se en tillväxt på 19,2 % till 2027, och nå 15,64 miljarder USD, jämfört med 3,89 miljarder USD 2019. Analytiker och förespråkare tillskriver Linuxs relativa framgång till dess säkerhet och tillförlitlighet , låg kostnad och frihet från leverantörslåsning .

Stationära och bärbara datorer
Enligt webbserverstatistik (det vill säga baserat på antalet registrerade från besök på webbplatser av klientenheter), från maj 2022, är den uppskattade marknadsandelen för Linux på stationära datorer cirka 2,5 %. Som jämförelse har Microsoft Windows en marknadsandel på cirka 75,5 %, medan macOS täcker cirka 14,9 %.
Webbservrar
W3Cook publicerar statistik som använder de 1 000 000 Alexa-domänerna, som i maj 2015 uppskattar att 96,55 % av webbservrarna kör Linux, 1,73 % kör Windows och 1,72 % kör FreeBSD.
W3Techs publicerar statistik som använder de 10 000 000 Alexa-domänerna och de 1 000 000 bästa Tranco-domänerna, uppdaterad månadsvis och från och med november 2020 uppskattar att Linux används av 39 % av webbservrarna, jämfört med 21,9 % som används av Microsoft Windows . 40,1 % använde andra typer av Unix .
IDC :s rapport för första kvartalet 2007 visade att Linux hade 12,7 % av den totala servermarknaden vid den tiden; denna uppskattning baserades på antalet Linux-servrar som såldes av olika företag, och inkluderade inte serverhårdvara som köpts separat som hade Linux installerat på den senare.
Mobil enheter
Android, som är baserat på Linux-kärnan, har blivit det dominerande operativsystemet för smartphones . I juli 2022 använde 71,9 % av alla smartphones som fick tillgång till internet i hela världen Android. Android är också ett populärt operativsystem för surfplattor, och ansvarar för mer än 60 % av försäljningen av surfplattor från och med 2013. Enligt webbserverstatistik har Android från och med oktober 2021 en marknadsandel på cirka 71 %, med iOS med 28 % , och resterande 1% hänför sig till olika nischplattformar.
Filmproduktion
I flera år har Linux varit den bästa plattformen i filmbranschen. Den första stora filmen som producerades på Linux-servrar var 1997 års Titanic . Sedan dess har stora studior inklusive DreamWorks Animation , Pixar , Weta Digital och Industrial Light & Magic migrerat till Linux. Enligt Linux Movies Group använder mer än 95 % av servrarna och stationära datorer på stora företag inom animering och visuella effekter Linux.
Använd i regeringen
Linux-distributioner har också vunnit popularitet hos olika lokala och nationella myndigheter. Nyheter om den ryska militären som skapar sin egen Linux-distribution har också dykt upp och har kommit till förverkligande som GHost-projektet. Den indiska delstaten Kerala har gått så långt att de kräver att alla statliga gymnasieskolor kör Linux på sina datorer. Kina använder Linux uteslutande som operativsystem för sin Loongson -processorfamilj för att uppnå teknikoberoende. I Spanien har vissa regioner utvecklat sina egna Linux-distributioner, som används i stor utsträckning inom utbildning och officiella institutioner, som gnuLinEx i Extremadura och Guadalinex i Andalusien. Frankrike och Tyskland har också tagit steg mot antagandet av Linux. Nordkoreas Red Star OS , utvecklat sedan 2002, är baserat på en version av Fedora Linux .

Upphovsrätt, varumärke och namn

Linuxkärnan är licensierad under GNU General Public License (GPL), version 2. GPL kräver att alla som distribuerar programvara baserad på källkod under denna licens måste göra den ursprungliga källkoden (och eventuella ändringar) tillgänglig för mottagaren under samma villkor. Andra nyckelkomponenter i en typisk Linux-distribution är också huvudsakligen licensierade under GPL, men de kan använda andra licenser; många bibliotek använder GNU Lesser General Public License (LGPL), en mer tillåtande variant av GPL, och X.Org- implementeringen av X Window System använder MIT-licensen .

Torvalds säger att Linux-kärnan inte kommer att flyttas från version 2 av GPL till version 3. Han ogillar specifikt vissa bestämmelser i den nya licensen som förbjuder användningen av programvaran i hantering av digitala rättigheter . Det skulle också vara opraktiskt att få tillstånd från alla upphovsrättsinnehavare, som räknas i tusental.

En studie från 2001 av Red Hat Linux 7.1 fann att denna distribution innehöll 30 miljoner källrader med kod . Med hjälp av den konstruktiva kostnadsmodellen uppskattade studien att denna fördelning krävde cirka åtta tusen personår av utvecklingstid. Enligt studien, om all denna programvara hade utvecklats på konventionellt sätt , skulle det ha kostat cirka 1,64 miljarder USD att utveckla 2021 i USA. Det mesta av källkoden (71%) skrevs i programmeringsspråket C , men många andra språk användes, inklusive C++ , Lisp , assemblerspråk , Perl , Python , Fortran och olika skalskriptspråk . Något över hälften av alla kodrader var licensierade under GPL. Själva Linuxkärnan var 2,4 miljoner rader kod, eller 8% av totalen.

I en senare studie utfördes samma analys för Debian version 4.0 (etch, som släpptes 2007). Denna distribution innehöll närmare 283 miljoner källrader med kod, och studien uppskattade att det skulle ha krävt cirka sjuttiotre tusen manår och kostat 9,16 miljarder US$ (i 2021 dollar) att utveckla på konventionellt sätt.

Namnet "Linux" används också för ett tvättmedel tillverkat av det schweiziska företaget Rösch.

I USA är namnet Linux ett varumärke registrerat för Linus Torvalds. Till en början registrerade ingen det, men den 15 augusti 1994 ansökte William R. Della Croce, Jr. om varumärket Linux och krävde sedan royalties från Linux-distributörer. 1996 stämde Torvalds och några berörda organisationer honom för att få varumärket överlåtet till Torvalds, och 1997 avgjordes ärendet. Licenseringen av varumärket har sedan dess hanterats av Linux Mark Institute (LMI). Torvalds har uppgett att han varumärkesskyddade namnet endast för att hindra någon annan från att använda det. LMI tog ursprungligen ut en nominell underlicensavgift för användning av Linux-namnet som en del av varumärken, men ändrade senare detta till förmån för att erbjuda en gratis, evig världsomspännande underlicens.

Free Software Foundation (FSF) föredrar GNU/Linux som namn när de hänvisar till operativsystemet som helhet, eftersom de anser att Linux-distributioner är varianter av GNU -operativsystemet som initierades 1983 av Richard Stallman , ordförande för FSF. De tar uttryckligen inga problem med namnet Android för Android OS, som också är ett operativsystem baserat på Linux-kärnan, eftersom GNU inte är en del av det.

En minoritet av offentliga personer och andra programvaruprojekt än Stallman och FSF, särskilt Debian (som hade sponsrats av FSF fram till 1996), använder också GNU/Linux när de hänvisar till operativsystemet som helhet. De flesta medier och vanlig användning hänvisar dock till denna familj av operativsystem helt enkelt som Linux , liksom många stora Linux-distributioner (till exempel SUSE Linux och Red Hat Enterprise Linux ). Däremot använder Linux-distributioner som endast innehåller fri programvara "GNU/Linux" eller helt enkelt "GNU", som Trisquel GNU/Linux , Parabola GNU/Linux-libre , BLAG Linux och GNU , och gNewSense .

Från och med maj 2011 är cirka 8% till 13% av kodraderna i Linux-distributionen Ubuntu (version "Natty") gjorda av GNU-komponenter (intervallet beror på om GNOME anses vara en del av GNU); Samtidigt tas 6 % av Linux-kärnan, ökat till 9 % när man inkluderar dess direkta beroenden.

Se även

Anteckningar

Referenser

externa länkar