UNIX
UNIX er et operativsystem, altså den grundlæggende software der styrer samspillet mellem en computers hardware og de programmer, brugeren kører. Systemet er bygget til at afvikle flere programmer og betjene flere brugere på samme tid, og det er kendetegnet ved en kommandolinjebaseret betjening og et hierarkisk filsystem, hvor alt data organiseres i mapper under en fælles rodmappe. UNIX blev udviklet hos AT&T’s Bell Labs og har siden dannet grundlag for en lang række andre operativsystemer.
Et hverdagsnært eksempel findes på mange almindelige Mac-computere: macOS er bygget oven på en UNIX-kerne, og når en bruger åbner Terminal-programmet og skriver en kommando for at flytte en fil eller se en mappes indhold, arbejder man reelt direkte med et UNIX-system – selvom det for de fleste er skjult bag en grafisk brugerflade. Det samme gælder for store dele af internettets infrastruktur, hvor webservere ofte kører UNIX eller UNIX-lignende systemer som Linux i baggrunden.
Historien bag UNIX
UNIX blev til hos Bell Labs i slutningen af 1960’erne, da Ken Thompson og Dennis Ritchie sammen med kolleger byggede videre på erfaringer fra det mere ambitiøse og komplekse Multics-projekt. Navnet UNIX opstod som et ordspil på netop Multics og betegnede oprindeligt et enklere og mere afgrænset system. I starten var UNIX skrevet i assembler-sprog og dermed tæt bundet til én bestemt hardwaretype, men systemet blev senere omskrevet til programmeringssproget C. Det gjorde UNIX langt lettere at flytte til andre computertyper og er en af hovedårsagerne til, at systemet fik så bred udbredelse i både forskningsmiljøer og senere i erhvervslivet.
I løbet af 1970’erne og 1980’erne opstod flere selvstændige grene af UNIX, blandt andet BSD-varianten fra University of California, Berkeley, og AT&T’s egen System V-linje. Denne opsplitning i flere indbyrdes forskellige udgaver førte senere til forsøg på standardisering, så programmer og kommandoer i højere grad kunne fungere på tværs af de forskellige UNIX-varianter. Da Linus Torvalds i begyndelsen af 1990’erne skabte Linux, trak han direkte på UNIX’ens designprincipper uden at bruge den oprindelige kildekode, og dermed opstod endnu en gren af UNIX-lignende systemer, der siden er blevet meget udbredt.
Designfilosofien bag UNIX
UNIX er ikke kun et sæt tekniske funktioner, men også en bestemt tilgang til, hvordan software bør bygges. Denne tankegang kaldes ofte UNIX-filosofien og bygger på nogle få gennemgående principper:
- Hvert program bør løse én afgrænset opgave og gøre det så godt som muligt, i stedet for at samle mange funktioner i ét stort program.
- Næsten alt i systemet – dokumenter, enheder, og selv netværksforbindelser – kan behandles og tilgås som filer, hvilket giver en ensartet måde at arbejde med meget forskellige ressourcer på.
- Data gemmes fortrinsvis i almindelig tekst, så indholdet er let at læse, redigere og dele mellem forskellige programmer.
- Små, specialiserede programmer kan kædes sammen ved hjælp af såkaldte pipes, så output fra ét program bliver input til det næste, og komplekse opgaver dermed løses ved at kombinere enkle byggeklodser.
Centrale funktioner og opbygning
Rent teknisk består et UNIX-system af nogle få centrale dele, der arbejder sammen. Kernen (kernel) er systemets inderste lag og styrer direkte kontakt med hardwaren, herunder hukommelse, processorer og lagerenheder, samt fordeler ressourcer mellem de programmer der kører. Shell’en er den kommandolinjegrænseflade, brugeren typisk møder først – her indtastes kommandoer, som shell’en videresender til kernen for udførelse. Der findes flere forskellige shells, blandt andet bash og csh, og en bruger kan ofte vælge, hvilken der skal anvendes. Filsystemet organiserer alle filer og mapper i en træstruktur under en fælles rodmappe, hvilket giver en systematisk og forudsigelig måde at finde og administrere data på. Endelig behandler UNIX ethvert kørende program som en proces med sit eget id, hvilket gør det muligt at overvåge, prioritere og om nødvendigt stoppe enkelte programmer uden at påvirke resten af systemet.
Hvem bruger UNIX?
UNIX og UNIX-lignende systemer bruges særligt i miljøer, hvor stabilitet, sikkerhed og finkornet kontrol over ressourcer vejer tungt. Systemadministratorer anvender UNIX-baserede systemer til at drive servere, netværk og datacentre, mens forskere og ingeniører ofte benytter dem til tunge beregninger og dataanalyse. Softwareudviklere bruger UNIX-miljøer til at skrive, teste og afvikle kode, ofte direkte fra en terminal, fordi kommandolinjen giver hurtig og præcis kontrol over systemet. I dag foregår en del af dette arbejde sammen med AI-understøttede værktøjer – mange udviklere bruger for eksempel Claude Code til at få hjælp direkte i kommandolinjen, mens protokoller som Model Context Protocol (MCP) gør det muligt at koble AI-modeller sammen med lokale filer og værktøjer på UNIX-baserede maskiner på en standardiseret måde.
UNIX-varianter og efterkommere
UNIX findes i dag i flere kommercielle og fritstående udgaver. Apples macOS bygger på en UNIX-kerne kaldet Darwin, hvilket giver systemet en del af den stabilitet, der kendetegner klassisk UNIX, kombineret med en grafisk brugerflade rettet mod almindelige brugere. Solaris, oprindeligt udviklet af Sun Microsystems og senere ejet af Oracle, bruges typisk i store virksomhedsmiljøer, mens IBM’s AIX og HP’s HP-UX er proprietære UNIX-varianter designet til at køre på producenternes egen serverhardware. BSD-familien, med udgaver som FreeBSD, NetBSD og OpenBSD, stammer direkte fra Berkeley-grenen af UNIX og bruges blandt andet til webservere, netværksudstyr og systemer med særligt fokus på sikkerhed.
UNIX og Linux – hvad er forskellen?
Linux forveksles ofte med UNIX, men er ikke det samme system. Linux er skabt som et selvstændigt, UNIX-lignende operativsystem, der efterligner UNIX’ens designprincipper og kommandoer uden at bygge på den oprindelige UNIX-kildekode. En central forskel er også licensvilkårene: Linux er open source og frit tilgængeligt, mens flere klassiske UNIX-varianter, som Solaris og AIX, er proprietære og kræver licens fra producenten. I praksis mærker de fleste brugere dog ikke stor forskel, da både UNIX og Linux i store træk deler samme opbygning med kerne, shell og hierarkisk filsystem.