Wat maakt Unix speciaal?

Schrijver: Judy Howell
Datum Van Creatie: 2 Juli- 2021
Updatedatum: 11 Kunnen 2024
Anonim
UNIX Special: Profs Kernighan & Brailsford - Computerphile
Video: UNIX Special: Profs Kernighan & Brailsford - Computerphile

Inhoud



Bron: Lightcome / iStockphoto

Afhaal:

Waarom heeft dit eigenzinnige besturingssysteem te maken gehad met uitdagingen zoals Microsoft? Het antwoord is eenvoudig: veel ontwikkelaars vinden het een verfrissend alternatief voor monolithische tools zoals IDE's en talen zoals Java.

Sinds Unix in de vroege jaren '70 op het toneel verscheen, hebben waarnemers in de computerwereld het snel afgeschilderd als een eigenzinnig besturingssysteem dat is ontworpen door en voor deskundige programmeurs. Ondanks hun proclamaties weigert Unix te sterven. Lang geleden, in 1985, vroeg Stewart Cheifet zich af of Unix het standaardbesturingssysteem van de toekomst zou worden op de PBS-show 'The Computer Chronicles', hoewel MS-DOS goed in zijn glorietijd was. In 2018 is het duidelijk dat Unix echt het standaardbesturingssysteem is, niet op desktop-pc's, maar op smartphones en tablets.

Het is ook het standaardsysteem voor webservers. Het is een feit dat miljoenen mensen over de hele wereld elke dag interactie hebben gehad met Linux- en Unix-systemen, van wie de meesten nooit een regel code in hun leven hebben geschreven.


Dus wat maakt Unix zo geliefd bij programmeurs en andere techneutypes? Laten we eens kijken naar enkele dingen die dit besturingssysteem goed doet. (Kijk voor enige achtergrondinformatie over Unix in The History of Unix: From Bell Labs to the iPhone.)

De schelp

Het ontwerp van de gebruikersinterface heeft een lange weg afgelegd sinds de begindagen van het computergebruik. Er zijn opdrachtregelinterfaces, grafische interfaces, op gebaren gebaseerde interfaces, noem maar op. De meeste serieuze gebruikers geven echter de voorkeur aan de ouderwetse opdrachtregel. Ten eerste, omdat op Unix gebaseerde besturingssystemen vaak op servers leven, vermindert het gebruik van alleen software de overhead. In plaats van een speciale monitor, toetsenbord en muis op een server, kunnen beheerders op afstand via SSH inloggen op de machine, rechtstreeks of vaak op een consoleserver, waarop besturingssystemen worden weergegeven en de machine opnieuw kan worden opgestart.


Deze gebruikers brengen het grootste deel van hun tijd in de shell door, dit is het programma dat input neemt en dit vertaalt in acties, die programma's uitvoeren of het systeem configureren. Het lijkt op de MS-DOS-prompt of de oude BASIC-talen op 8-bits computers zoals de Commodore 64.

Op Unix- en Linux-systemen heeft de gebruiker de keuze uit shells. De standaard in de Linux-wereld is Bash, voor Bourne Again Shell, een woordspeling op de maker van een van de originele shells, Stephen R. Bourne. Andere populaire shells zijn zsh, de C shell en de Korn Shell, genoemd naar David Korn.

Dit toont de voorkeur voor modulair ontwerp in de Unix-wereld. Alles, van de shell tot de grafische gebruikersinterface, is gewoon een ander programma en componenten kunnen eenvoudig worden verwisseld. Het maakt ook een benadering van ontwikkeling mogelijk op basis van kleine tools. Ga daar later op in. (Lees meer over een ander type shell, Mosh, in Mosh: Secure Shell Without the Pain.)

Alles is een () bestand

Een van de dingen die Unix-achtige systemen kenmerken, is hun afhankelijkheid van bestanden, in tegenstelling tot andere systemen uit die tijd die ondoorzichtige binaire bestanden gebruikten om configuratie-informatie op te slaan. De focus op geïrriteerd sommige gebruikers van andere systemen, maar Unix-gebruikers vinden dat leuk.

Geen bugs, geen stress - Uw stapsgewijze handleiding voor het creëren van levensveranderende software zonder uw leven te vernietigen


U kunt uw programmeervaardigheden niet verbeteren als niemand om softwarekwaliteit geeft.

"De rode draad was woordsmeden; een verdacht hoog percentage van mijn UNIX-collega's had in een eerdere carrière al een troost en vloeiendheid met en woorden ontwikkeld", schreef Thomas Scoville. "Ze waren bedreven lezers en schrijvers en UNIX speelde handig in op die sterke punten. UNIX was in zekere zin literatuur voor hen. Plots leek de oververtegenwoordiging van polyglots, liberale kunsten en vraatzuchtige lezers in de UNIX-gemeenschap niet zo mysterieus, en wees de weg naar een diepere kwestie: in een wereld die steeds meer wordt gedomineerd door beeldcultuur (tv, films, .jpg-bestanden), blijft UNIX geworteld in de cultuur van het woord. "

Het traditionele Unix-ontwerp is om zoveel mogelijk gewone ASCII-bestanden te gebruiken. Zelfs apparaten zoals de harde schijf of de er worden weergegeven als bestanden. Het zijn geen echte bestanden, maar programmeurs kunnen deze speciale bestanden behandelen alsof ze dat zijn.

Klein gereedschap

De shell en het hebben van alles als een bestand leent zich voor een ander belangrijk kenmerk van Unix-ontwikkeling: complexe taken uitvoeren door pijpleidingen te bouwen uit kleine tools.

Alle shells hebben een pijplijnkarakter, "|", dat de uitvoer van het ene programma naar de invoer van een ander is. Dit maakt het aan elkaar rijgen van programma's eenvoudig.

Stel dat u een gesorteerde lijst wilt van alle gebruikers die bij het systeem zijn aangemeld zonder duplicaten (aangezien gebruikers meerdere keren kunnen inloggen). Hier is hoe het eruit zou zien:

wie | cut -d -f1 | sorteren | uniq

Hoewel het er vreemd uitziet, toont het de kracht van deze stijl van ontwikkeling. Als u besluit dit helemaal opnieuw in C te implementeren, kijkt u misschien naar duizenden regels code.

Deze stijl van ontwikkeling is de Unix-filosofie genoemd. Misschien wil je het boek van Mike Gancarz lezen, "Linux and the Unix Philosophy", als je geïntrigeerd bent.

Waarom Unix leeft

Dus waarom heeft dit eigenzinnige besturingssysteem te maken gehad met uitdagingen zoals Microsoft? Het antwoord is eenvoudig: veel ontwikkelaars vinden het een verfrissend alternatief voor de monolithische tools zoals IDE's en talen zoals Java. In plaats van door een bedrijf van bovenaf te worden overgedragen, groeien moderne Unix-versies organisch. Science fiction-schrijver Neal Stephenson noemde Unix het "Gilgamesh-epos" van de computerwereld in zijn essay "In the Beginning Was the Command Line".

Als het aanhoudende succes enige indicatie is, zal Unix de komende jaren nog veel meer ontwikkelaars blijven aantrekken.