Në fund të vitit të kaluar, gjatë pastrimit në qendrën e kompjuterëve të Universitetit të Utah, u zbulua një kasetë magnetike arkivale me kodin e sistemit operativ UNIXv4, i cili u zhvillua në vitin 1973 për kompjuterin PDP-11/45 dhe ishte konsideruar i humbur. UNIXv4 vazhdoi zhvillimin e versionit paraprak UNIXv3, ku për herë të parë u përdor gjuha C dhe kanalet e paemëruar. Një veçori e UNIXv4 ishte rishkrimi i bërthamës nga assemblori në gjuhën C. Kodi i bërthamës së UNIXv4 u shkrua nga Ken Thompson, ndërsa drejtorët nga Dennis Ritchie.
NĂ« fund tĂ« dhjetorit 2025, punonjĂ«sit e muzeut tĂ« historisĂ« sĂ« teknologjisĂ« kompjuterike arritĂ«n tĂ« gjenin pajisjet e nevojshme dhe tĂ« nxjerrin arkivĂ«n e ruajtur nĂ« kasetĂ«. PĂ«r dixhitalizimin e sinjalit analĂČg tĂ« regjistruar nĂ« kasetĂ« u pĂ«rdor mjeti readtape, dhe pĂ«r dekodimin e formatit tĂ« arkivĂ«s u angazhuan punimet e kryera gjatĂ« rikthimit tĂ« arkivĂ«s me implementimin e redaktorit Emacs nga James Gosling.
PĂ«rveç kodit UNIXv4, nĂ« kasetĂ« u gjetĂ«n gjithashtu kodet burimore tĂ« njĂ« nga kompilerĂ«t e parĂ« pĂ«r gjuhĂ«n C dhe interpretuesit tĂ« gjuhĂ«s SNOBOL. MĂ« vonĂ«, kodi UNIXv4 u pastrua dhe u publikua nĂ« GitHub nĂ« njĂ« formĂ« tĂ« pĂ«rshtatshme pĂ«r ndĂ«rtim dhe nisje nĂ« simulatorin PDP-11. Kodi UNIXv4 pĂ«rfshin 61 mijĂ« rreshta, prej tĂ« cilĂ«ve 27 mijĂ« nĂ« gjuhĂ«n C, 33 mijĂ« nĂ« assemblorin pĂ«r PDP-11 dhe rreth njĂ« mijĂ« â skedarĂ«t e titujve.

Një nga hulumtuesit e sigurisë vuri re utilitarin "su", i cili vinte me UNIXv4. Ky utilitar përmbante më pak se 50 rreshta kodi, instalohej me flamurin setuid-root dhe lejonte nisjen e /bin/sh me të drejta root pas futjes së fjalëkalimit të saktë. Kodi përmbante një dobësi, e cila çonte në mbushje të tamponëve për shkak të kopjimit të fjalëkalimit të dhënë nga përdoruesi në një tabllo të fiksuar prej 100 karaktesh pa kontrollimin e madhësisë së të dhënave të futur.
Problemin e identifikuar e komentoi 93-vjeçari Douglas McIlroy, i cili ishte pjesë e ekipit të zhvilluesve të parë të Unix në Bell Labs, që propozi konceptin e kanaleve të paemëruar dhe krijoi utilitarë si echo, spell, diff, sort, join, dhe tr. Sipas Douglas-it, deri në shfaqjen e virusit Morris në vitin 1988, pak njerëz u interesuan për mbushjet e tamponëve. Shtimi i kontrollit të madhësisë së të dhënave të futur manualisht u konsiderua si shtim i kodit të panevojshëm, ndërsa përfundimi aksidental në rast mbushjeje u perceptua si një formë e papërshtatshme përgjigje ndaj të dhënave të papërshtatshme. Me kalimin e kohës, mbushjet që ndodhnin gjatë përpunimit të vargjeve të gjeneruara automatikisht filluan të rregulloheshin, por për futjen manuale logjika ishte në nivelin "kush mund të ketë nevojë të futë manualisht vargje shumë të gjata?"
Burimi: opennet.ru
