Disse 5 Unix-ideer fra 1970'erne er grunden til, at Linux stadig fungerer så godt

Indeks
  1. Biblioteksstruktur
    1. Træet af filer
  2. Processer
    1. Kør flere processer samtidig fra kommandolinjen
  3. Pipelines
    1. Omdiriger input og output på nye måder
  4. Åben kildekode i C
    1. C muliggør drift på tværs af maskiner
  5. Brugersupport
    1. Linux klarer sig med støtte fra venner
  6. At udnytte lavenergihardware
    1. Find en gammel maskine – men måske ikke en PDP-7
    2. Fortsætte Unix-traditionen

Linux bygger på mere end 50 års konceptuelle grundsten fra Unix, herunder en hierarkisk biblioteksstruktur, multitasking, pipelines, portabel C-kode, og evnen til at køre på gammel hardware.

Linux repræsenterer et moderne operativsystem, men det trækker på konceptuelle grundsten, der stammer fra over 50 år tilbage. Herunder er nogle centrale idéer, der stadig præger nutidens Linux-distributioner.

Biblioteksstruktur

Træet af filer

Bibliotekstrukturen forbløffede dataloger i 1974, da "The Unix Time-Sharing System" blev offentliggjort i Communications of the ACM. Den hierarkiske tilgang var revolutionerende dengang, og den er nu standard.

Strukturen strækker sig fra rodbiblioteket "/" og minder om grene fra en træstamme. I modsætning til DOS eller Windows er der ingen drevbogstaver; et bibliotekstræ kan inkludere adskillige enheder som harddiske, SSD’er, USB’er og optiske drev. Det giver filsystemet en bemærkelsesværdig fleksibilitet.

Processer

Kør flere processer samtidig fra kommandolinjen

Unix har længe haft multitasking, hvilket adskiller det fra systemer som MS-DOS, der kun kunne køre én opgave ad gangen. Denne evne muliggør jobkontrol.

Du kan flytte et job til baggrunden og dermed frigøre shell'en til andre opgaver:

some_long_process &

Denne kommando sætter some_long_process i baggrunden, så du kan fortsætte arbejdet. Hvis en proces tager for lang tid, tryk Ctrl+z for at suspendere den og få kontrol over shell'en igen. Flyt den derefter til baggrunden med:

bg

Jobkontrol blev udviklet i en tid, hvor tekstbaserede terminaler var almindelige. Selvom vindussystemer som X11 nu hersker, er det stadig nyttigt i terminalvinduet.

Pipelines

Omdiriger input og output på nye måder

Pipelines er en af Unix’ mest indflydelsesrige ideer. Det tillader programmer at omdirigere deres input og output i shell.

For eksempel kan programmet ps udskrive alle processer til en fil:

ps aux > allprocs 

Du kan også dirigere input fra en fil, som når du kører et shell-script:

sh > command_list.sh

Men den mest interessante funktion er pipelinen, der forbinder output fra én kommando til input af en anden. Den sjove kommando, der omdanner output fra fortune til regnbuefarvet tekst, ser således ud:

fortune | lolcat

Brian Kernighan, en af skaberne af C-sproget, viser i en Bell Labs reklame fra 1982, hvordan man kan foretage stavekontrol med eksisterende kommandolinjeprogrammer.

Åben kildekode i C

C muliggør drift på tværs af maskiner

Mens Unix ikke var open-source, fik universiteter, der modtog det fra Bell Labs, ofte kildekoden. Det ærgrede sig over, at Unix's komponenter var skrevet i C, et højniveau sprog skabt af Dennis Ritchie, som fik et stort gennembrud gennem "The C Programming Language" af Ritchie og Brian Kernighan, forkortet "K&R."

Tidligere var operativsystemer typisk skrevet i assembler. Selvom assemblerprogrammer er hurtige, er de vanskelige at udvikle og bundet til specifikke maskiner. Med C, der er et kompileret sprog, krævede det kun en compiler for at få et program til at køre på et andet system.

Teoretisk set var portabiliteten til stede. At kompilere et C-program fra én maskine til en anden var relativt simpelt, men...

mennesker skrev C-programmer på Unix-maskiner i starten.

Unix var en given størrelse. Dette gjorde programmerne utilgængelige på andre operativsystemer. En løsning var at tilpasse Unix til en ny maskine. C, et højniveau sprog, gjorde det muligt at ændre maskinafhængige dele uden videre.

Brugersupport

Linux klarer sig med støtte fra venner

Unix så dagens lys under Bell Labs' moderselskab AT&T, der havde en gensidig aftale i bytte for den dominans, de havde i telefonsektoren i USA. Resultatet? AT&T kunne ikke sælge Unix kommercielt. Gennem Western Electric delte de Unix ud til universiteter og forskningslaboratorier til marginale omkostninger.

Men support? Det var et ressourcetræk. Unix-brugerne måtte klare skærene selv – reparationer og opgraderinger lå på deres skuldre. Brugernetværk blev dannet. Usenix, en af de mest kendte, voksede til en betydningsfuld datalogi-konference. Datastuderende og kandidater fandt et fællesskab. BSD, eller Berkeley Software Distribution, opstod ved UC Berkeley i slutningen af 1970'erne.

I dag er hjælpen stadig tilgængelig. Brugergrupper, fora og subreddits tilbyder support.

At udnytte lavenergihardware

Find en gammel maskine – men måske ikke en PDP-7

Linux-brugeres stolthed ligger i evnen til at køre distributioner på gammel hardware som bærbare computere. Denne tradition stammer fra Unix. Ken Thompson og Dennis Ritchie arbejdede med Unix efter Bell Labs trak sig fra MULTICS-projektet, et forsøg på at skabe det, vi nu kalder "cloud computing", der skulle gøre beregningskraft tilgængelig som elektricitet.

MULTICS overskred budgettet og led under forsinkelser, selvom det senere nåede mainframes i 1970'erne. Thompson og Ritchie måtte bruge mindre kraftfuld hardware. De greb en Digital Equipment Corporation PDP-7, svarende til at genbruge en gammel PC i dag.

Fortsætte Unix-traditionen

Fra hierarkiske katalogtræer til portabel C-kode, bærer Linux videre på mange traditioner fra Unix. Det bygger på fortidens styrker, samtidig med at det bevæger sig mod fremtiden.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *

Go up