Sheeko-yaqaannada barnaamijyada iyo injineerada (qaybta 1)

Sheeko-yaqaannada barnaamijyada iyo injineerada (qaybta 1)

Tani waa sheekooyin laga soo doortay internetka oo ku saabsan sida cayayaanka mararka qaarkood u leeyihiin muuqaalo cajiib ah. Waxaa laga yaabaa inaad adiguna wax u sheegto.

Xasaasiyadda gaariga ee jalaatada vanilj

Sheeko u socota injineerada oo fahamsan in waxa muuqdaa aysan mar walba jawaab ahayn, si kasta oo ay xaqiiqadu u ekaan karto mid fog, haddana waa xaqiiqo jirta. Qaybta Pontiac ee General Motors Corporation waxay heshay cabasho:

Tani waa markii labaad oo aan warqad kuu soo qorayo, kuma eedeynayo inaadan u jawaabin, sababtoo ah waxay u egtahay waalli. Qoyskayagu waxa ay dhaqan u leeyihiin in ay cunaan jalaatada habeen walba cashada ka dib. Noocyada jalaatada ayaa isbedelaya mar kasta, ka dib casho, qoyska oo dhan ayaa dooranaya jalaatada si ay u iibsadaan, ka dib waxaan aadaa dukaanka. Waxaan dhawaan iibsaday Pontiac cusub tan iyo markaas safarradaydii si aan jalaatada u helo waxay noqdeen dhibaato. Waxaad arkaysaa, mar kasta oo aan iibsado jalaatada vaniljka oo aan ka soo noqdo dukaanka, gaadhigu ma bilaabi doono. Haddii aan keeno jalaatada kale, baabuurka wuxuu bilaabmaa dhib la'aan. Waxaan rabaa in aan weydiiyo su'aal halis ah, iyada oo aan loo eegin sida ay u nacas tahay: "Maxay ku saabsan tahay Pontiac oo ka dhigaysa in aysan bilaabin markaan keeno jalaatada vanilj, laakiin si fudud u bilaabma markaan keeno dhadhan kale oo jalaatada?" "

Sida aad qiyaasi karto, madaxwaynihii qaybta ayaa warqadda ka shakiyay. Si kastaba ha ahaatee, haddii ay dhacdo, waxaan u diray injineer si uu u hubiyo. Waxa uu la yaabay in uu la kulmay nin maalqabeen ah oo aqoon sare leh oo ku nool meel aad u qurux badan. Waxay ku heshiiyeen inay isla markiiba kulmaan cashada ka dib si ay labadooduba dukaanka u tagaan jalaatada. Fiidkaas waxay ahayd vanilj, markii ay ku soo noqdeen baabuurka, ma kicin.

Injineerkii wuxuu yimid saddex fiid oo kale. Markii ugu horeysay ee jalaatada waxay ahayd shukulaato. Baabuurkii ayaa bilaabay. Markii labaad waxaa jiray jalaatada strawberry. Baabuurkii ayaa bilaabay. Fiidkii saddexaad ayuu codsaday inuu qaato vanilj. Gaadhigu ma kicin.

Isagoo si macquul ah u sababaynaya, injineerku wuxuu diiday inuu rumaysto in baabuurka uu xasaasiyad ku leeyahay jalaatada vanilj. Sidaa darteed, waxaan kula heshiiyey mulkiilaha baabuurka inuu booqashadiisa sii wadan doono inta uu xal u helayo dhibaatada jirta. Intii uu socdayna waxa uu bilaabay in uu wax qoro: waxa uu qoray dhammaan macluumaadka, wakhtiga maalinta, nooca shidaalka, wakhtiga imaatinka iyo ka soo noqoshada dukaanka, iwm.

Ingineerku waxa uu isla markiiba gartay in mulkiilaha gaadhigu uu wakhti yar ku qaatay iibsashada jalaatada vaniljka. Sababtu waxay ahayd qaabaynta alaabta dukaanka. Jalaatada Vanilla ayaa ah tan ugu caansan waxaana lagu hayay qaboojiye gaar ah oo ku yaal afaafka hore ee dukaanka si ay ugu fududaato helista. Dhammaan noocyada kale waxay ku jireen gadaasha bakhaarka, waxayna qaadatay waqti badan si loo helo noocyada saxda ah iyo bixinta.

Hadda su'aashu waxay ahayd injineerka: muxuu baabuurku u bilaabi waayay haddii wakhti ka yar uu ka soo wareegay waqtigii mishiinka la damiyay? Maadaama dhibaatadu ay ahayd wakhti, ma aha vaniljka jalaatada, injineerku si dhakhso ah ayuu u helay jawaabta: waxay ahayd quful gaas ah. Waxay dhici jirtay fiid kasta, laakiin markii mulkiilaha baabuurku uu waqti badan ku qaatay raadinta jalaatada, matoorka ayaa ku guuleystay inuu qaboojiyo oo si fudud u bilaabo. Oo markii uu ninku soo iibsaday jalaatada vanilj, matoorku weli aad buu u kululaa oo qufulka gaaska ma helin wakhti uu ku milmo.

Akhlaaqda: Xitaa dhibaatooyinka gabi ahaanba waalan ayaa mararka qaarkood dhab ah.

shil Bandicoot

Waa xanuun inaad tan la kulanto. Barnaamij-yaqaan ahaan, waxa aad la qabsanaysaa in aad eedaynta code-kaaga marka hore, labaad, saddexaad...iyo meel tobanka kun ee meel ka mid ah waxa aad eedaynaysaa isku-xidhaha. Oo hoos liiska waxaad hore u eedaysay qalabka.

Waa tan sheekadeyda ku saabsan cilladda qalabka

Ciyaarta Crash Bandicoot, waxaan u qoray kood si aan u shubo oo aan u kaydiyo kaadhka xusuusta. Horumariyaha ciyaarta tahriibka ee noocan oo kale ah, waxay la mid tahay socodka beerta: Waxaan u maleeyay in shaqadu qaadan doonto dhawr maalmood. Si kastaba ha ahaatee, waxaan ku dhameeyay qaladka koodka muddo lix toddobaad ah. Intii aan jidka ku jiray, waxaan xaliyay dhibaatooyin kale, laakiin dhawrkii maalmoodba mar waxaan ku soo noqday koodkan dhawr saacadood. Waxay ahayd xanuun.

Calaamaduhu waxay u ekaayeen sidan: markaad badbaadiso ciyaarta ciyaarta ee hadda jirta oo aad gasho kaadhka xusuusta, wax walbaa had iyo jeer way fiicnaanayaan Duubista gaaban waxay inta badan dhaawacdaa kaadhka xusuusta. Marka ciyaaryahan uu isku dayo inuu badbaadiyo, kaliya kuma guuldareysto inuu badbaadiyo, laakiin sidoo kale wuxuu burburiyaa khariidada. Nacas

Muddo ka dib, soo saarahayaga Sony, Connie Bus, wuxuu bilaabay inuu argagaxo. Waanu ku soo rari waynay ciyaarta bug-gan, lix usbuuc kadibna ma fahmin waxa dhibaatada keenay. Iyadoo loo marayo Connie, waxaan la xiriirnay horumariyeyaasha kale ee PS1: ma jiraa qof la kulmay wax la mid ah? Maya Qofna dhib kama qabin kaadhka xusuusta.

Marka aanad haysan fikrado aad ku saxdo qaladka, habka kaliya ee hadhay waa "qaybin oo guulaysto": ka saar kood aad iyo aad u badan barnaamijka khaldan ilaa laga helayo qayb yar oo hadhay oo wali dhibaatada keenaysa. Yacni, waxaad goysaa qayb-qayb-barnaamijka ilaa inta ay ka hadhayso qaybta cilladdu ku jirto.

Laakiin arrintu waxay tahay, aad bay u adag tahay in la gooyo qaybo ka mid ah ciyaarta fiidyaha. Sidee loo socodsiiyaa haddii aad ka saarto koodka ku dayanaya cuf-jiidadka? Ama sawir jilayaasha?

Sidaa darteed, waa in aan ku beddelno cutubyada oo dhan oo aan ku beddelno dhejisyo iska dhigaya in ay sameeyaan wax faa'iido leh, laakiin dhab ahaantii samee wax aad u fudud oo aan ku jiri karin khaladaad. Waa inaan u qornaa biraha noocaan ah si ay ciyaarta ugu yaraan u shaqeyso. Tani waa hab tartiib tartiib ah oo xanuun badan.

Marka la soo koobo, waan sameeyay. Waxaan ka saaray qaybo badan oo kood ah ilaa aan ka tago koodka bilawga ah ee habeeya nidaamka si uu u socodsiiyo ciyaarta, bilaabaya qalabka wax soo saarka, iwm. Dabcan, marxaladan ma aan abuuri karin kaydinta iyo kaydinta menu, sababtoo ah waa inaan abuuraa stub dhammaan code-yada sawirada. Laakiin waxaan iska dhigi karaa isticmaale isticmaalaya (aan la arki karin) kaydinta iyo rarka shaashadda oo weydiisanaya inaan kaydiyo ka dibna ku qoro kaadhka xusuusta.

Tani waxay iga tagtay qayb yar oo kood ah oo weli haysata dhibaatada kor ku xusan - laakiin wali waxay u dhacaysay si aan kala sooc lahayn! Inta badan wax walba si fiican ayey u shaqeeyeen, laakiin marmar waxaa jiray cillado. Waxaan meesha ka saaray ku dhawaad ​​dhammaan koodkii ciyaarta, laakiin bugtu wali waa noolayd. Tani waxay ahayd wax la yaab leh: koodka soo hadhay runtii waxba ma samayn.

Mar mar, malaha abaaro saddexdii subaxnimo, ayaa fikir igu soo dhacay. Akhri oo qor (wax-soo-saarka/soo-saarka) hawlgallada waxay ku lug leeyihiin waqtiyo fulineed oo sax ah. Marka aad ku shaqeyso darawal adag, kaadhka xusuusta ama moduleka Bluetooth, koodhka heerka hoose ee ka masuulka ah akhriska iyo qorista wuxuu u sameeyaa si waafaqsan garaaca saacadaha.

Iyada oo la kaashanayo saacad, aaladda aan si toos ah ugu xirneyn processor-ka ayaa la midoobey code-ka ku shaqeeya processor-ka. Saacaddu waxay go'aamisaa heerka baud-xawaaraha xogta lagu wareejiyo. Haddii uu jiro jahawareer ku saabsan waqtiyada, markaa midkood hardware ama software, ama labadaba, sidoo kale waa wareersan yihiin. Tani waa mid aad u xun, sababtoo ah xogta waa la dhaawaci karaa.

Maxaa dhacaya haddii wax ku jira koodkayaga ay jahawareeraan wakhtiga? Waxaan ku hubiyay wax kasta oo arrintan la xiriira koodka barnaamijka imtixaanka waxaanan ogaaday in aan dejinay saacada barnaamijka la samayn karo ee PS1 ilaa 1 kHz (1000 ticks halkii ilbiriqsi). Tani waa wax badan; marka la eego, marka konsole-ku bilaabmo, wuxuu ku shaqeeyaa 100 Hz. Inta badan ciyaarahana waxay isticmaalaan soo noqnoqoshadan.

Andy, horumariyaha ciyaarta, wuxuu dejiyay saacada 1 kHz si dhaqdhaqaaqa si sax ah loo xisaabiyo. Andy wuxuu u janjeeraa inuu dhaafo, oo haddii aan ku dayano cuf-jiidadka, waxaan u sameynaa sida saxda ah ee suurtogalka ah!

Laakiin ka waran haddii la dedejiyo saacada si uun u saamayso wakhtiga guud ee barnaamijka, oo sidaas awgeed saacadda nidaamisa heerka baud ee kaadhka xusuusta?

Waxaan ka faallooday koodka saacadda Khaladkii dib uma dhicin. Laakiin tani macnaheedu maaha inaan hagaajinay, sababtoo ah guuldaradu waxay u dhacday si aan kala sooc lahayn. Maxaa dhacaya haddii aan nasiib leeyahay?

Dhowr maalmood ka dib waxaan mar kale tijaabiyey barnaamijka tijaabada. Kutaanku soo noqnoqon maayo. Waxaan dib ugu laabtay codebase ciyaarta oo dhan oo aan wax ka beddelay kaydinta iyo koodhka rarka si uu saacada barnaamijku u dejiyo qiimihiisii ​​asalka ahaa (100Hz) ka hor inta aan la helin kaadhka xusuusta, ka dibna dib ugu noqdo 1kHz. Shil dambe ma dhicin.

Laakiin maxay tani u dhacday?

Mar kale ayaan ku soo noqday barnaamijkii imtixaanka. Waxaan isku dayay inaan helo qaab ku saabsan dhacdada qaladka leh saacada 1 kHz. Ugu dambeyntii waxaan ogaaday in qaladku dhaco marka qof ku ciyaaro kontaroolaha PS1. Maadaama ay naadir tahay in aan tan sameeyo - maxaan ugu baahanahay kontaroole markaan tijaabinayo koodhka kaydinta iyo kaydinta? - Xitaa ma aan dareemin ku-tiirsanaantan. Laakiin maalin maalmaha ka mid ah mid ka mid ah fanaaniintayada ayaa i sugayay in aan imtixaan ka dhameeyo - malaha waan habaarayay wakhtigaas - oo si naxdin leh uu gacantiisa ugu qalloociyey maamulaha. Khalad ayaa dhacay "Sug, waa maxay?!" Hagaag, mar kale samee!”

Markii aan ogaaday in labadan dhacdo ay isku xiran yihiin, waxaan awooday inaan si fudud u soo saaro qaladka: Waxaan bilaabay duubista kaadhka xusuusta, dhaqaajiyay kontoroolka, waxaana burburiyay kaadhka xusuusta. Aniga waxay iila ekaatay kutaan hardware

Waxaan u imid Connie waxaana u sheegay wax ku saabsan helitaankeyga. Waxay xogta u gudbisay mid ka mid ah injineerada naqshadeeyay PS1. "Suurtagal maaha," ayuu ku jawaabay, "Ma noqon karto dhibaato qalabeed." Waxaan ka codsaday Connie inay noo diyaariso wada hadal.

Injineerka ayaa isoo wacay waxaanu ku murmay Ingiriisi jaban iyo Jabbaankayga (aad u xun) ee jaban. Ugu dambayntii waxaan idhi, "Aan uun u diro barnaamijkayga tijaabada 30-ka ah ee tijaabada ah halkaas oo dhaqaajinta kontarooluhu ay keento cillad." Wuu aqbalay. Wuxuu sheegay inay ahayd wakhti lumis iyo inuu si aad ah ugu mashquulsanaa ka shaqaynta mashruuc cusub, laakiin wuu bixin doonaa sababtoo ah waxaan nahay horumariye aad muhiim u ah Sony. Waxaan nadiifiyay barnaamijkaygii tijaabada oo u diray isaga.

Fiidkii xigay (waxaan joognay Los Angeles oo uu Tokyo joogay) wuu isoo wacay oo si xishood la’aan ah ii raali galiyay. Waxay ahayd dhibaato qalabeed

Ma garanayo waxa dhabta ah ee bug-ku yahay, laakiin wixii aan ka maqlay xarunta Sony, haddii aad dejiso saacada qiime aad u sarreeya, waxay faragelisay qaybo ka mid ah Motherboard-ka oo ku yaal agagaarka saacadda crystal. Mid ka mid ah ayaa ahaa kantaroolaha heerka baud ee kaadhka xusuusta, kaas oo sidoo kale dejinaya heerka baud ee kantaroolayaasha. Ma ihi injineer, markaa waxaa laga yaabaa inaan wax khalkhal galiyay.

Laakiin gunta hoose ayaa ah in ay jirtay faragalin u dhaxaysa qaybaha Motherboard-ka. Oo marka la isku mar gudbiyo xogta iyada oo loo marayo dekedda kontoroolka iyo dekedda kaadhka xusuusta ee saacaduhu ku socdo 1 kHz, waxoogaa ayaa lumay, xogtu way luntay, kaarkana waa dhaawac.

Lo' xun

Sanadihii 1980-aadkii, macalinkayga Sergei wuxuu u qoray software-ka SM-1800, oo ah clone Soviet ee PDP-11. Microcomputer-kan waxa hadda lagu rakibay xarun tareen oo u dhow Sverdlovsk, oo ah xudunta gaadiidka ee USSR. Nadaamka cusub waxaa loogu talagalay in lagu maro gawaarida iyo gaadiidka xamuulka. Laakin waxa ku jiray bug dhibsado taasoo keentay shilal iyo shilal aan toos ahayn. Dhacdooyinka had iyo jeer waxay dhacaan marka qof guriga tago fiidkii. Laakiin inkasta oo baadhitaan qotodheer la sameeyay maalintii xigtay, kombuyuutarku si sax ah ayuu u shaqeeyay dhammaan imtixaanada gacanta iyo tooska ah. Tani waxay badanaa muujisaa xaalad jinsiyadeed ama qaar kale oo tartan ah oo ku dhaca xaalado gaar ah. Ku daalay wicitaanada habeenkii dambe, Sergei wuxuu go'aansaday inuu gunta u tago, oo marka hore, fahamto xaaladaha deyrka marshalling ee u horseeday burburka kombiyuutarka.

Ugu horrayn, waxa uu ururiyay tira-koobyada dhammaan dhicistii aan la sharraxin oo uu sameeyay garaaf taariikhda iyo wakhtiga. Qaabka ayaa ahaa mid iska cad. Kadib dhowr maalmood oo dheeraad ah, Sergei wuxuu ogaaday in uu si fudud u saadaalin karo wakhtiga nidaamka mustaqbalka ee fashilka.

Isla markiiba waxa uu ogaaday in khalkhalku uu dhacay kaliya markii saldhiga lagu kala saarayay tareennada lo'da ee waqooyiga Ukraine iyo galbeedka Ruushka oo u socday kawaan u dhow. Tani lafteedu waxay ahayd mid la yaab leh, sababtoo ah kawaanka waxaa bixiyay beero ku yaal meel aad ugu dhow, Kazakhstan.

Warshada tamarta nukliyeerka ee Chernobyl waxay qaraxday 1986-kii, iyo burburka shucaaca ayaa ka dhigay meelaha ku xeeran kuwo aan la degi karin. Meelo aad u ballaaran oo ku yaal waqooyiga Ukraine, Belarus iyo galbeedka Ruushka ayaa wasakhoobay. Ka shakisanaanta shucaaca sare ee gawaarida imanaya, Sergei wuxuu sameeyay hab lagu tijaabiyo aragtidan. Dadwaynaha ayaa laga mamnuucay inay haystaan ​​​​dosimeters, sidaas darteed Sergei wuxuu iska diiwaan geliyay dhowr nin oo milatari ah oo jooga saldhigga tareenka. Cabitaanno badan oo vodka ah ka dib, wuxuu ku guuleystay inuu ku qanciyo askari inuu cabbiro heerka shucaaca ee mid ka mid ah gawaarida laga shakiyo. Waxaa soo baxday in heerku uu dhowr jeer ka sarreeyay qiyamka caadiga ah.

Xooluhu kaliya shucaac badan ma sii daayeen, heerkiisuna aad buu u sarreeyay, taas oo keentay in ay si aan kala sooc lahayn u lumiyaan xusuusta SM-1800, kaas oo ku yaallay dhismo ku dheggan saldhigga.

Cunto yaraan ayaa ka jirtay USSR, mas'uuliyiintu waxay go'aansadeen inay ku daraan hilibka Chernobyl iyo hilibka gobollada kale ee dalka. Tani waxay suurtogal ka dhigtay in la yareeyo heerka guud ee shucaaca iyada oo aan lumin kheyraadka qiimaha leh. Markii uu arrintan ka war helay, Sergei isla markiiba waxa uu buuxiyey dukumentiyada socdaalka. Waxayna shilalka kombayuutarku iskood u istaageen markii heerka shucaaca uu hoos u dhacay muddo ka dib.

Iyada oo tuubooyinka

Hal mar, Movietech Solutions waxay u samaysay shaleemooyinka software-ka, looguna talagalay xisaabinta, iibinta tigidhada iyo maamulka guud. Nooca DOS ee abka calanka ayaa aad caan uga ahaa silsiladaha masraxyada filimada yaryar iyo kuwa dhexe ee Waqooyiga Ameerika. Markaa la yaab ma leh in markii lagu dhawaaqay nooca Windows 95, oo lagu daray shaashadihii ugu dambeeyay ee taabashada iyo dukaamada is-adeegga, oo lagu qalabeeyay dhammaan noocyada kala duwan ee agabka warbixinta, si dhakhso ah ayuu caan u noqday, sidoo kale. Inta badan cusboonaysiinta waxay tagtay dhibaato la'aan. Shaqaalaha IT-ga maxalliga ah ayaa rakibay qalab cusub, xog guurtay, ganacsiguna wuu sii socday. Marka laga reebo marka ay waarin. Marka tani dhacdo, shirkadu waxay soo diri doontaa James, oo lagu naaneeso "Nadiifiyihii."

Inkasta oo naanaysta ay soo jeedinayso nooc nefarious ah, nadiifiyuhu waa uun isku darka macalinka, rakibaha iyo jack-of-all-ganacsiga. James waxa uu dhawr maalmood ku qaadan doonaa goobta macmiilka isaga oo isku daraya dhammaan qaybaha kala duwan ee ka kooban yahay, ka dibna waxa uu dhawr maalmood oo kale ku qaadan doonaa in uu shaqaalaha baro sida loo isticmaalo nidaamka cusub, isaga oo xalinaya wixii dhibaato ah ee hardware-ka ah ee soo ifbaxa oo si dhab ah u caawiya software-ka ilaa yaraantiisii.

Sidaa darteed, la yaab ma leh in xilliyadan qallafsanaanta ah, uu James xafiiska yimi subaxnimadii, ka hor inta aanu gaadhin miiskiisii, waxa ku soo dhaweeyay maareeyaha, oo ay ka buuxsameen kafeyn aan caadi ahayn.

"Waxaan ka baqayaa inaad u baahan tahay inaad u tagto Annapolis, Nova Scotia, sida ugu dhakhsaha badan." Nidaamkooda oo dhan ayaa hoos u dhacay, ka dib habeen aan la shaqeynay injineeradooda, ma ogaan karno waxa dhacay. Waxay u egtahay in shabakadu ku guuldareysatay server-ka. Laakiin kaliya ka dib markii nidaamku socday dhowr daqiiqo.

- Dib uguma soo laaban nidaamkii hore? - James si dhab ah ayuu ugu jawaabay, inkasta oo maskaxiyan uu indhaha kala qaaday isagoo yaaban.

- Sida saxda ah: khabiirkooda IT-ga "waxay beddeleen mudnaanta" waxayna go'aansadeen inay la baxaan serverkoodii hore. James, waxay ku rakibeen nidaamka lix goobood oo kaliya waxay bixiyeen taageero qaali ah, ganacsigooduna hadda wuxuu u shaqeeyaa sidii uu ahaa 1950-yadii.

James wuu yara toosay.

- Taasi waa arrin kale. Hagaag, aan bilowno

Markii uu yimid Annapolis, waxa ugu horreeya ee uu sameeyo waxa ay ahayd in uu helo masraxa ugu horreeya ee macmiilka oo dhibaato ka haysatay. Khariidadda laga qaaday gegida dayuuradaha, wax walbaa waxay u muuqdeen kuwo wanaagsan, laakiin aagga ciwaanka la rabo ayaa u muuqday mid laga shakisan yahay. Ma aha ghetto, laakiin xasuusin filimka noir. Markii James uu dhiganayay jid-gooyada magaalada hoose, waxaa u soo dhawaatay dhillo. Marka la eego xajmiga Annapolis, waxay u badan tahay inay ahayd midda kaliya ee magaalada oo dhan. Muuqaalkeeda ayaa isla markiiba maskaxda ku haya dabeecadda caanka ah ee ku bixisay galmo lacag ah shaashadda weyn. Maya, kuma saabsan Julia Roberts, laakiin waxa ku saabsan Jon VoightTilmaamaha filimka "Cowboy Midnight" - qiyaastii. haad].

Markuu naagtii soo diray ayuu James aaday shaleemada. Meesha ku xeeran ayaa ka soo roonaatay, laakiin wali waxay siinaysaa aragtida ah in la hoos u dhacay. Ma aha in James aad u walwalsanaa. Hore ayuu meelo xun u tagay. Tani waxay ahayd Kanada, halkaas oo xitaa muggers ay si xushmad leh u dhahaan "Mahadsanid" ka dib qaadashada boorsadaada.

Dhanka shaleemada laga soo galo waxay ku taal luuq daan ah. James ayaa soo galay albaabka oo garaacay. Wax yar ka dib way gariirtay oo yara furtay.

-Ma tahay nadiifiye? - Cod xabeeb ah ayaa gudaha ka yimid.

- Haa, waa aniga... Waxaan u imid inaan wax walba hagaajiyo.

James wuxuu soo galay hoolka shaleemada. Sida muuqata ma haysan doorasho kale, shaqaaluhu waxay bilaabeen inay tigidh waraaqo ah u qaybiyaan booqdayaasha. Tani waxay ka dhigtay warbixinta maaliyadeed mid adag, iska daa tafaasiisha xiisaha badan. Laakin shaqaalihii ayaa James ku salaamey nafis waxayna isla markiiba geeyeen qolka server-ka.

Jaleecada hore, wax walba way fiicnaayeen. James wuxuu galay server-ka wuxuuna hubiyay meelaha laga shakiyo ee caadiga ah. Dhib malahan Si kastaba ha ahaatee, taxaddar badan awgeed, James wuxuu xiray server-kii, wuxuu beddelay kaadhka shabakadda, oo dib u rogay nidaamka. Isla markiiba waxay bilawday inay si buuxda u shaqeyso. Shaqaaluhu waxay bilaabeen iibinta tigidhada mar kale.

James wuxuu wacay Mark wuxuuna u sheegay xaalada. Ma adka in la qiyaaso in James laga yaabo inuu rabo inuu ku ekaado oo uu eego haddii ay wax lama filaan ah dhacaan. Jaranjaradii ayuu ka degay oo bilaabay inuu shaqaalihii waydiiyo maxaa dhacay. Sida cad nidaamku wuu joojiyay shaqadii. Way damiyeen oo damiyeen, wax walbaa waa shaqeeyeen. Laakiin 10 daqiiqo ka dib nidaamku wuu dhacay.

Isla wakhtigan wax la mid ah ayaa dhacay. Isla markiiba, nidaamka tigidhisku wuxuu bilaabay inuu tuuro khaladaadka. Shaqaalihi way taahaayeen oo waxay qabteen tigidhkii waraaqaha, James wuxuu u degdegay qolkii server-ka. Wax walba waxay u muuqdeen kuwo ku wanaagsan server-ka.

Kadibna mid ka mid ah shaqaalaha ayaa soo galay.

- Nidaamku mar kale ayuu shaqaynayaa.

James wuu yaabay sababtoo ah waxba ma uu samayn. Si sax ah, ma jiraan wax ka dhigaya nidaamka inuu shaqeeyo. Wuu soo baxay, waxa uu qaatay taleefoonkiisa, waxa uuna wacay khadka taageerada ee shirkadiisa. Isla markiiba isla shaqaalihii ayaa soo galay qolka server-ka.

- Nidaamku waa hoos u dhacay.

James wuxuu jaleecay seefarka. Qaab xiiso leh oo caan ah oo qaabab midabyo badan leh ayaa lagu qoob-ka-ciyaaray shaashadda - si fowdo ah u qoran iyo tuubooyin is-dhexgal ah. Dhammaanteen waxaan aragnay shaashad-saaraha mar uun. Si qurux badan ayaa loo soo bandhigay oo macno ahaan hypnoting.


James ayaa badhan riixay, qaabkiina waa la waayay. Si degdeg ah ayuu u tagay xafiiskii tigidhada, intii uu jidka ku soo jirayna waxa uu la kulmay shaqaale u soo noqday.

- Nidaamku mar kale ayuu shaqaynayaa.

Haddii aad samayn karto calaacalaha maskaxda, taasi waa dhab wixii uu James sameeyay. Screensaver. Waxay isticmaashaa OpenGL. Oo sidaas daraaddeed, inta lagu guda jiro hawlgalka, waxa ay ku baabbi'iyee dhammaan khayraadka processor server. Natiijadu waxay tahay, wicitaan kasta oo loo diro server-ku wuxuu ku dhammaanayaa wakhti go'an.

James wuxuu ku soo noqday qolkii server-ka, wuu soo galay, wuxuuna ku beddelay shaashadda tuubooyinka quruxda badan oo leh shaashad bannaan. Taasi waa, halkii aan ka ahaan lahaa Screensaver oo 100% ka ah agabka processor-ka, waxaan rakibay mid kale oo aan isticmaalin kheyraadka. Kadib waxaan sugay 10 daqiiqo si aan u eego malahayga.

James markii uu yimid shineemo xiga, waxa uu la yaaban yahay sida uu ugu sharaxo maamulihiisa in uu 800 km uun u duulay si uu u damiyo shaashadaha.

Shilalka inta lagu jiro marxalad gaar ah oo dayaxa ah

Sheeko dhab ah. Maalin maalmaha ka mid ah waxaa kacay cillad software ah oo ku xiran marxaladda dayaxa. Waxaa jiray wax yar oo joogto ah oo sida caadiga ah loo isticmaali jiray barnaamijyo kala duwan oo MIT ah si loo xisaabiyo qiyaasta wajiga dhabta ah ee Dayaxa. GLS waxay nidaamkan u dhistay barnaamij LISP kaasoo, marka faylka la qorayo, soo saari doono xariiq leh shaambad wakhti ku dhow 80 xaraf. Aad bay dhif u ahayd in xariiqda ugu horreysa ee farriintu ay noqoto mid aad u dheer oo u horseedda xariiqda xigta. Barnaamijku markii dambe ee uu akhriyay faylkan, wuu habaaray. Dhererka xariiqda kowaad waxay ku xidhan tahay taariikhda saxda ah iyo wakhtiga, iyo sidoo kale dhererka qeexida wejiga wakhtiga shaabada wakhtiyada la daabacay. Taasi waa, cayayaanka macno ahaan waxay kuxirantahay marxaladda dayaxa!

Daabacaadda koowaad ee warqadda Faylka Jargon (Steele-1983) waxa uu ka kooban yahay tusaale xariiqan oo kale ah kaas oo horseeday bug la tilmaamay, laakiin teebtarka "ayaa hagaajiyay". Tan ayaa tan iyo markaas lagu sifeeyay inay tahay "dhitaan wejiga dayaxa".

Si kastaba ha ahaatee, ka taxaddar malaha. Dhowr sano ka hor, injineerada ka socda CERN (Xarunta Yurub ee Cilmi-baarista Nukliyeerka) waxay la kulmeen khaladaad tijaaboyin lagu sameeyay Large Electron-Positron Collider. Maadaama kombuyuutarku si firfircoon u farsameeyaan xogta tirada badan ee qalabkani soo saartay ka hor inta aan natiijada loo tusin saynisyahannada, dad badan ayaa qiyaasayay in software-ku si uun u xasaasi u yahay marxaladda dayaxa. Dhowr Injineer oo quus ah ayaa runta u guntaday. Khaladka ayaa ka dhashay isbeddel yar oo ku yimid joomatari giraanta dhererkeedu yahay 27 km taas oo ay ugu wacan tahay qallafsanaanta dhulku inta uu dayaxu marayo! Sheekadani waxa ay gashay sheeko-yaqaannada fiisigiska “Newton’s Revenge on Particle Physics” iyo tusaale u ah xidhiidhka ka dhexeeya shuruucda fiisigiska ugu fudud iyo kan ugu da’da weyn iyo fikradaha sayniska ee ugu horumarsan.

Biyo raacida musqusha waxay joojisaa tareenka

Cilad qalabeedka ugu fiican ee aan waligay maqlay waxa uu ahaa tareenka xawaaraha sare ku socda ee France. Cayayaanka ayaa horseeday in bareegga degdega ah ee tareenka, laakiin waa haddii ay jiraan rakaab saaran. Xaalad kasta oo sidan oo kale ah, tareenka ayaa laga saaray adeegga, la hubiyay, laakiin waxba lama helin. Ka dib ayaa dib loogu celiyay khadka, isla markiiba waa uu shil galay oo joogsaday.

Inta lagu guda jiro mid ka mid ah hubinta, injineer ku safrayay tareenka ayaa aaday musqusha. Markiiba wuu maydhay, BOOM! Joogsiga degdega ah

Injineerka ayaa la xiriiray darawalkii oo weydiiyey:

- Maxaad samaynaysay ka hor inta aanad bareegga dhigin?

- Hagaag, waxaan ka gaabiyay soo degitaanka...

Tani waxay ahayd mid la yaab leh, sababtoo ah inta lagu jiro hawlgalka caadiga ah tareenku wuxuu hoos u dhigaa soo degista daraasiin jeer. Tareenkii wuu dhaqaaqay, soo degidii xigtay ayuu darawalku ka digay:

- Waan gaabinayaa.

Waxba ma dhicin.

- Maxaad samaysay intii lagu jiray bareegii u dambeeyay? - ayuu waydiiyay darawalkii.

- Hagaag... waxaan ku jiray musqusha...

- Hagaag, dabadeed gal musqusha oo samee wixii aad samaysay markaan mar kale hoos u dhacno!

Injineerkii wuxuu aaday musqusha, markii uu dirawalkii ka digay: "Waan ka gaabinayaa," ayuu biyihii daadiyay. Dabcan, tareenkii ayaa isla markiiba istaagay.

Hadda waxay dib u soo saari karaan dhibaatada waxayna u baahan yihiin inay helaan sababta.

Laba daqiiqo ka bacdi waxay dareemeen in fiilada lagu hago ee bireega injiinka (tareenku cidhif kasta uu lahaa hal matoor) uu ka go’ay gidaarka golaha korantada oo uu dul jiifay relay-ga gacanta ku haya musqusha fur solenoid... Markii la isku dhaafiyay waa la shiday, waxay abuurtay faragalin fiilada biriiga ah, iyo nidaamka ka hortagga fashilka si fudud waxaa ku jiray bareegga degdega ah.

Albaabkii nacay FORTRAN

Dhowr bilood ka hor waxaan ogaanay in isku xirka shabakadaha ee dhul weynaha [tani waxay ku taal Hawaii] ay aad iyo aad u gaabis ahaayeen. Tani waxay socon kartaa 10-15 daqiiqo ka dibna si lama filaan ah ayay mar kale u dhici kartaa. Muddo ka dib, saaxiibkay ayaa iga cawday in isku xidhka shabkada ee dhul weynaha guud ahaan ma shaqeeyo. Waxa uu lahaa qaar ka mid ah koodka FORTRAN oo u baahan in lagu koobiyeeyo mishiin ku yaala dhul waynaha, laakiin way kari wayday sababtoo ah "shabakadu ma aysan haynin wakhti dheer oo ku filan in FTP-ga la geliyo si loo dhamaystiro."

Haa, waxaa soo baxday in fashilka shabakadu ay dhacday markii saaxiibkii isku dayay inuu FTP fayl wata koodka isha ee FORTRAN una geeyo mishiinka dhul waynaha. Waxaan isku daynay inaan kaydinno faylka: ka dibna si habsami leh ayaa loo koobiyeeyay (laakiin mashiinka bartilmaameedka ma lahayn baakadaha, markaa dhibaatada lama xalin). Ugu dambayntii waxaanu u kala qaybinay koodka FORTRAN qaybo aad u yaryar oo midba mar u dirnay. Inta badan jajabyada waxaa la koobiyeeyay dhib la'aan, laakiin dhowr xabbadood ayaan dhaafin, ama dhaafin tiro badan isku dayga.

Markii aan baarnay tuducyada dhibka leh, waxaan ogaanay inay wax ka dhexeeyaan: dhamaantood waxay ka koobnaayeen blocks faallooyin ah oo bilaabay kuna dhamaaday xarriiqyo ka kooban caasimad C (sida saaxiibkiis door biday inuu faallo ka bixiyo FORTRAN). Waxaan email u dirnay khubaro shabakadeed oo ku sugan dhul weynaha waxaanan waydiisanay gargaar. Dabcan, waxay rabeen inay arkaan muunado ka mid ah faylalkayaga oo aan lagu wareejin karin FTP... laakiin waraaqahayagu ma ay gaadhin. Ugu dambeyntii waxaan la nimid fudud sharaxsida ay u egyihiin faylasha aan la wareejin karin. Way shaqeysay Malaha uma qalmo!]

Ugu dambayntii waxa aanu ku guulaysanay in aanu ogaano. Irid cusub ayaa dhawaan la rakibay inta u dhaxaysa qaybteena kambaska iyo shabakada dhulwaynaha. Waxaa dhib weyn ku noqotay gudbinta baakooyinka ay ku jiraan farmaajo soo noqnoqda ee C! In yar oo ka mid ah xidhmooyinkan ayaa qaadi kara dhammaan agabka albaabka oo waxay ka ilaalin karaan baakadaha kale in ay soo maraan. Waxaan u dacwoonnay soo saaraha kadinka... waxayna iigu jawaabeen: “Haah, haa, waxa ku soo food saartay cayayaan C ah oo soo noqnoqday! Horay ayaanu uga naqaannay isaga.” Waxaan ugu dambeyntii xalinay dhibaatada annagoo ka soo iibsannay albaab cusub oo ka yimid shirkad kale (difaaca hore, awood la'aanta wareejinta barnaamijyada FORTRAN ayaa laga yaabaa inay faa'iido u tahay qaar!).

Waqtiyada adag

Dhowr sano ka hor, anigoo ka shaqeynaya abuurista nidaamka ETL ee Perl si loo dhimo kharashyada wejiga 40 ee tijaabooyinka bukaan-socodka, waxaan u baahday inaan ka shaqeeyo qiyaastii 000 oo taariikhood. Laba ka mid ah ma aysan gudbin imtixaanka. Tani wax badan igama aysan dhibin sababtoo ah taariikhahaan waxaa laga soo qaatay xogta macmiilku bixiyo oo inta badan ahaa, miyaan dhahnaa, la yaab leh. Laakiin markii aan hubiyay xogta asalka ah, waxaa ii soo baxday in taariikhahani ay ahaayeen Janaayo 1, 2011 iyo Janaayo 1, 2007. Waxaan u maleeyay in cilladdu ay ku jirto barnaamijkii aan hadda qoray, laakiin waxaa ii soo baxday inay hore u ahayd 30 sano. duqoobay. Tani waxay u ekaan kartaa qarsoodi kuwa aan aqoon u lahayn nidaamka deegaanka ee software-ka. Sababtoo ah shirkad kale oo go'aansatay in ay lacag samayso muddo dheer, macmiilkaygu wuxuu ii dhiibay si aan u hagaajiyo cillad ay shirkadi shil ku keentay mid kalena si ulakac ah. Si aad u fahanto waxa aan ka hadlayo, waxaan u baahanahay in aan ka hadlo shirkadii ku dartay muuqaalkii noqday cayayaan, iyo sidoo kale dhawr dhacdo oo kale oo xiisa leh oo gacan ka gaystay bug dahsoon oo aan hagaajiyay.

Waagii hore ee wanaagsanaa, kombuyuutarada Apple waxay mararka qaarkood si iskood ah dib ugu dhigi lahaayeen taariikhdooda ilaa Janaayo 1, 1904. Sababtu waxay ahayd mid fudud: waxay adeegsatay “saacada nidaamka” batari ku shaqeeya si ay ula socoto taariikhda iyo wakhtiga. Maxaa dhacay markuu batarigu dhintay? Kumbuyuutarada ayaa bilaabay inay taariikhda ku raadiyaan tirada ilbiriqsi tan iyo bilowgii waagii. Xilligii waxaan ula jeednay tixraaca taariikhda asalka ah, Macintoshes-na waxay ahayd Janaayo 1, 1904. Kadibna batarigu wuu dhintay, taariikhda hadda waxay dib u dhigtay tii la cayimay. Laakiin maxay tani u dhacday?

Markii hore, Apple waxay isticmaashay 32 bits si ay u kaydiso tirada ilbiriqsi tan iyo taariikhda asalka ah. Mid ka mid ah wuxuu kaydin karaa mid ka mid ah laba qiimo - 1 ama 0. Laba xabbadood ayaa kaydin kara mid ka mid ah afarta qiyam: 00, 01, 10, 11. Saddex-bit - hal qiime oo ka mid ah siddeed: 000, 001, 010, 011, 100 , 101, 110, 111, iwm. Oo 32 waxay kaydin kartaa mid ka mid ah 232 qiyamka, taas oo ah, 4 ilbiriqsi. Taariikhaha Apple, tani waxay u dhigantaa ilaa 294 sano, sidaa darteed Mac-yada waaweyn ma xamili karaan taariikhaha ka dib 967. Haddii batteriga nidaamku dhinto, taariikhda dib ayaa loo dhigayaa ilaa 296 ilbiriqsi tan iyo bilowgii waagii, waana inaad gacanta ku dhejisaa taariikhda mar kasta oo aad shido kumbuyuutarka (ama ilaa aad ka iibsanayso baytari cusub).

Si kastaba ha ahaatee, go'aanka Apple ee ah in uu kaydiyo timirta ilbiriqsi ahaan tan iyo waagii wuxuu ka dhigan yahay in aanaan xamili karin taariikhaha ka hor waagii, taas oo leh cawaaqib fog, sida aynu arki doono. Apple waxay soo bandhigtay muuqaal, ma aha cayayaan. Waxyaabaha kale, tani waxay ka dhigan tahay in nidaamka hawlgalka Macintosh uu ka difaacay "bug-ka kun" (taas oo aan la sheegi karin codsiyo badan oo Mac ah oo lahaa nidaam taariikheed iyaga u gaar ah si ay uga gudbaan xayiraadaha).

Horey u soco Waxaan isticmaalnay Lotus 1-2-3, IBM's "application killer" kaas oo ka caawiyay bilawga kacaanka PC, in kasta oo kombuyuutarrada Apple ay lahaayeen VisiCalc, taas oo ka dhigtay kombuyutarka gaarka ah mid guuleysta. Si caddaalad ah, haddii 1-2-3 uusan soo muuqan, kombuyuutarrada si dhib leh uma kici lahaayeen, taariikhda kombuyuutarrada shakhsi ahaaneed waxay u horumari karaan si aad u kala duwan. Lotus 1-2-3 ayaa 1900 si qaldan ula dhaqmay sanad boodbood. Markii Microsoft ay sii deysay xaashideeda ugu horreysa, Multiplan, waxay qabsatay qayb yar oo suuqa ah. Oo markii ay bilaabeen mashruuca Excel, waxay go'aansadeen ma aha oo kaliya inay nuqul ka sameeyaan nidaamka magacaabista safka iyo tiirka ee Lotus 1-2-3, laakiin sidoo kale si loo hubiyo ku-talogalka cayayaanka iyaga oo si ula kac ah ula dhaqmaya 1900 sidii sannad bood ah. Dhibaatadani ilaa maanta way jirtaa. Sidaa darteed 1-2-3 waxay ahayd bug, laakiin Excel waxay ahayd go'aan miyir leh si loo hubiyo in dhammaan isticmaalayaasha 1-2-3 ay u soo dhoofsadaan miisaska Excel iyaga oo aan bedelin xogta, xitaa haddii ay khalad ahayd.

Laakiin dhibaato kale ayaa jirtay. Marka hore, Microsoft waxay sii daysay Excel ee Macintosh, taas oo aan aqoonsan taariikhaha ka hor Janaayo 1, 1904. Iyo Excel, Janaayo 1, 1900 waxaa loo tixgeliyey bilawga xilliga. Sidaa darteed, horumariyayaashu waxay sameeyeen isbeddel si ay barnaamijkoodu u aqoonsado nooca xilliga iyo kaydinta xogta lafteeda si waafaqsan xilliga la rabo. Microsoft xitaa waxay ka qortay maqaal sharraxaad arrintan ku saabsan. Go'aankani wuxuu horseeday cilad-kayga.

Nidaamkeyga ETL wuxuu ka helay xaashiyaha Excel macaamiisha lagu abuuray Windows, laakiin sidoo kale waxaa lagu abuuri karaa Mac. Sidaa darteed, bilowga xilliga shaxda wuxuu noqon karaa Janaayo 1, 1900, ama Janaayo 1, 1904. Sidee lagu ogaan karaa? Qaabka faylka Excel wuxuu muujinayaa macluumaadka lagama maarmaanka ah, laakiin baareeyaha aan isticmaalay ma muujin (hadda wuu muuqdaa), oo waxaan u qaatay inaad taqaanno waayihii miis gaar ah. Waxaa laga yaabaa inaan waqti badan ku bixin lahaa fahamka qaabka binary-ga ee Excel oo aan u diro balastar qoraaga baarayaasha, laakiin wax badan ayaan u qabtay macmiilka, sidaa darteed waxaan si dhakhso ah u qoray heuristic si aan u go'aamiyo waagii. Way fududayd.

Excel, taariikhda Juulaay 5, 1998 waxaa lagu matali karaa qaabka "07-05-98" (nidaamka Ameerikaanka aan waxtar lahayn), "Jul 5, 98", "July 5, 1998", "5-Jul-98" ama Qaab kale oo aan faa'iido lahayn (macnaha la yaabka leh, mid ka mid ah qaababka aan nuqulka Excel aan bixin ayaa ahaa ISO 8601). Si kastaba ha ahaatee, miiska dhexdiisa, taariikhda aan la qaabayn waxa loo kaydiyay "35981" ee epoch-1900 ama "34519" ee epoch-1904 (tirooyinka waxay matalaan tirada maalmaha tan iyo waagii). Waxaan si fudud u adeegsaday baarser fudud si aan sanadka uga soo saaro taariikhda la qaabeeyey, ka dibna waxaan adeegsaday parser-ka Excel si aan sanadka uga soo saaro taariikhda aan la qaabayn. Haddii labada qiyamka ay ku kala duwan yihiin 4 sano, markaas waan ogaa in aan isticmaalay nidaam la epoch-1904.

Waa maxay sababta aan kaliya u isticmaali waayay taariikhaha la qaabeeyey? Sababtoo ah Luulyo 5, 1998 waxaa loo qaabayn karaa "July, 98" iyadoo maalinta bishu luntay. Waxaan ka helnay miisaska shirkado badan oo u abuuray siyaabo badan oo kala duwan oo ay ku xiran tahay annaga (kiiskan, aniga) si aan u ogaano taariikhda. Ka sokow, haddii Excel si sax ah u helo, markaa waa inaan sidaas oo kale sameynaa!

Isla mar ahaantaana waxaan la kulmay 39082. Aan ku xasuusiyo in Lotus 1-2-3 uu tixgeliyey 1900 sanadka boodboodka, tanina si daacad ah ayaa loogu soo celiyay Excel. Tan iyo markii ay tani ku dartay hal maalin sannadkii 1900, hawlo badan oo xisaabinta taariikhda waxay noqon karaan kuwo qaldan maalintaas. Taasi waa, 39082 waxay noqon kartaa Janaayo 1, 2011 (Mac) ama Diisambar 31, 2006 (Windows). Haddii "parser-ka sanadka" uu ka soo saaray sanadka 2011 qiimaha la qaabeeyey, markaa wax walba waa fiican yihiin. Laakiin maadaama uu falanqeeyaha Excel uusan garanaynin waxa loo yaqaan 'poch-ka loo isticmaalo', waxay u dhigantaa epoch-1900, soo noqoshada sanadka 2006. Codsigaygu wuxuu arkay in faraqa u dhexeeyaa uu ahaa 5 sano, u tixgeliyey inuu khalad yahay, galiyay, oo soo celiyay qiime aan qaabaysanayn.

Si aan arrintan uga gudbo, waxaan qoray kan (pseudocode):

diff = formatted_year - parsed_year
if 0 == diff
    assume 1900 date system
if 4 == diff
    assume 1904 date system
if 5 == diff and month is December and day is 31
    assume 1904 date system

Kadibna dhammaan 40 oo timirood ayaa si sax ah loo falanqeeyay.

Dhexda shaqooyinka daabacaadda waaweyn

Horraantii 1980-meeyadii, aabbahay waxa uu ka shaqeeyay Kaydinta Technology, oo ah qayb hadda shaqaynaysa oo abuurtay cajalado iyo hababka sambabada oo loogu talagalay quudinta cajaladda xawaaraha sare leh.

Waxay dib u habayn ku sameeyeen wadiiqooyinka si ay u helaan hal dhexe oo “A” ah oo ku xidhan todobada “B” drives, OS-ka yar ee RAM-ka ku jira ee gacanta ku haya waditaanka “A” waxa uu u wakiishay akhrinta iyo qorista hawlaha dhammaan darawallada “B”.

Mar kasta oo darawalka “A” la bilaabo, waxa lagama maarmaan noqotay in la geliyo disk-ga loo yaqaan 'floppy disk' ee ku xidhan "A" si uu nidaamka hawlgalka ugu shubo xusuusta. Waxay ahayd mid asal ah: awoodda xisaabinta waxaa bixiyay 8-bit microcontroller.

Dhageystayaasha la beegsaday qalabkan oo kale waxay ahaayeen shirkado leh bakhaar xogeed aad u weyn - bangiyada, silsiladaha tafaariiqda, iwm. - kuwaas oo u baahan inay daabacaan calaamado badan oo cinwaan ama qoraalo bangi ah.

Hal macmiil ayaa dhibaato kala kulmay. Dhexda shaqada daabacaadda, hal baabuur oo gaar ah "A" ayaa joojin kara shaqada, taasoo keenaysa in dhammaan shaqadu istaagto. Si loo soo celiyo hawlgalkii wadista, shaqaaluhu waa inay dib u kiciyaan wax walba. Oo haddii ay tani ku dhacday badhtamaha hawl lix saacadood ah, ka dibna qadar aad u badan oo waqti kombuyuutar ah oo qaali ah ayaa lumay iyo jadwalka hawlgalka oo dhan waa la carqaladeeyey.

Farsamoyaqaanno ayaa laga soo diray Teknolojiyadda Kaydinta. Laakiin inkastoo dadaalkooda ugu wanaagsan, waxay awoodi waayeen inay dib u soo saaraan cayayaanka xaaladaha imtixaanka: waxay u muuqatay inay ku dhex jirto shaqooyinka waaweyn ee daabacaadda. Dhibaatadu ma ahayn qalabka, waxay beddeleen wax kasta oo ay awoodaan: RAM, microcontroller, floppy drive, qayb kasta oo la qiyaasi karo oo ka mid ah cajaladda - dhibaatadu way sii socotay.

Kadibna farsamayaqaanadii waxay waceen xaruntii oo ay waceen khabiirkii.

Khabiirkii waxa uu qabsaday kursi iyo koob kafee ah, waxa uu fadhiistay qolka kombayutarka-wakhtiyadaas waxa jiray qolal kombayuutarrada loo qoondeeyay—waxana uu daawatay shaqaaluhu oo saf ugu jira shaqo weyn oo daabacaad ah. Khabiirku waxa uu sugayay guul-darro in ay dhacdo - wayna dhacday. Qof kastaa wuxuu eegay Khabiirka, laakiin ma uusan ogeyn sababta ay tani u dhacday. Markaa waxa uu amar ku bixiyay in mar kale shaqada saf loo galo, shaqaalihii iyo farsamayaqaanadii oo dhamina ay dib ugu soo laabteen shaqadii.

Khabiirkii ayaa mar kale fadhiistay kursigii oo bilaabay inuu sugo guul darro. Qiyaastii lix saacadood ayaa ka soo wareegtay, waxaana dhacay fashilaadkii. Khabiirku mar kale wax fikrad ah ma lahayn, marka laga reebo in wax walba ay ka dhaceen qol ay ka buuxaan dad. Wuxuu amray in hawshii dib loo bilaabo, dib u fadhiistay oo la sugo.

Guul-darradii saddexaad, Khabiirku wax buu ogaaday. Guuldarradu waxay dhacday markii shaqaaluhu beddeleen cajalado ku jira darawal shisheeye. Waxaa intaa dheer, guuldarradu waxay dhacday isla markii mid ka mid ah shaqaaluhu uu dhex maray saqaf gaar ah oo dabaqa ah.

Dabaqa sare waxa uu ka samaysan yahay aluminium tiles oo la dhigay joog dhan 6 ilaa 8 inches. Fiilooyin badan oo kombiyuutaro ah ayaa ku hoos orday dabaqa sare ee hoostiisa si ay uga hortagaan qof kasta inuu si lama filaan ah ugu talaabsado fiilada muhiimka ah. Taleefannada si adag ayaa loo dhigay si looga ilaaliyo qashinka inay hoos yimaadaan dabaqa sare.

Khabiirku waxa uu gartay in mid ka mid ah tiles-ku uu xumaaday. Marka shaqaaluhu geeskiisa ka soo talaabsado, cidhifyada foornada ayaa ku xoqay tiirarka ku xiga. Qaybaha balaastiigga ah ee isku xira xayndaabyada ayaa sidoo kale lagu xoqay iyaga, taas oo keentay microdischarges taagan oo abuuray faragelinta soo noqnoqda raadiyaha.

Maanta, RAM aad ayaa looga ilaaliyaa faragelinta soo noqnoqda raadiyaha. Laakiin sannadahaas xaaladdu sidaas may ahayn. Khabiirku waxa uu ogaaday in faragelintani ay carqaladaysay xusuusta, iyo iyada oo ay la socoto hawlgalka nidaamka hawlgalka. Wuxuu wacay adeegga taageerada, wuxuu dalbaday taayirro cusub, isaga laftiisa ayaa rakibay, dhibaatadiina waa la waayay.

Waa mawjad sare!

Sheekadu waxay ka dhacday qol server ah, oo ku yaal dabaqa afraad ama shanaad ee xafiis ku yaal Portsmouth (waxaan filayaa), aagga doomaha.

Maalin maalmaha ka mid ah waxaa shil galay seerfarkii Unix ee keydka ugu weyni wata. Way dib u kiciyeen, laakiin isaga oo faraxsan ayuu sii dhacayay marar badan. Waxaan go'aansanay inaan wacno qof ka socda adeegga taageerada.

Ninka taageerada ah ... Waxaan u maleynayaa in magaciisa uu ahaa Mark, laakiin taasi dhib ma leh... Uma maleynayo inaan aqaano isaga. Dhib malahan, runtii. Aan ku dhegno Mark, okay? Wayn

Sidaa darteed, dhowr saacadood ka dib Mark ayaa yimid (ma ahan wax fog oo ka yimid Leeds ilaa Portsmouth, waad ogtahay), wuxuu shiday server-ka wax walbana waxay ku shaqeeyeen dhibaato la'aan. Taageerada naclad ee caadiga ah, macmiilku aad buu uga xanaaqaa. Mark wuxuu eegayaa faylalka log-ga oo ma helin wax lidi ku ah. Marka Mark wuxuu dib ugu soo laabtay tareenka (ama nooc kasta oo gaadiid ah oo uu ku yimid, waxay noqon kartaa sac curyaan ah dhammaan aan ogahay... si kastaba ha ahaatee, dhib malahan, okay?) Oo dib ugu laabtay Leeds, isagoo khasaaray. maalinta.

Isla fiidkaas seerfarkii ayaa mar kale burburay. Sheekadu waa isku mid... Server-ku ma kaco. Mark wuxuu isku dayaa inuu meel fog ka caawiyo, laakiin macmiilku ma bilaabi karo serverka.

Tareen kale, bas, liin liin ama wax kale, iyo Mark wuxuu ku soo laabtay Portsmouth. Fiiri, kabaha server-ka dhib la'aan! Mucjiso. Mark wuxuu ku qaataa dhowr saacadood si uu u hubiyo in wax walba ay u hagaagsan yihiin nidaamka qalliinka ama software-ka oo uu u ambabaxo Leeds.

Ku dhawaad ​​badhtamaha maalinta server-ku wuu burburaa (u fududeeyaa!). Markan waxay u muuqataa mid macquul ah in la keeno dadka taageerada qalabka si ay u beddelaan server-ka. Laakiin maya, qiyaastii 10 saacadood ka dib iyaduna way dhacdaa.

Xaaladdu waxay soo noqnoqonaysay dhawr maalmood. Seerfarku wuu shaqeeyaa, wuu burburaa 10 saacadood ka dib mana bilaabo 2 saacadood ee soo socda. Waxay hubiyeen qaboojinta, xusuusta daadinta, wax walba ayay hubiyeen, laakiin waxba ma helin. Kadib shilalka ayaa joogsaday.

Usbuuca ayaa ku dhamaaday si taxadar la'aan ah... qof walba wuu faraxsanaa. Farxad leh ilaa ay wax walba dib u bilaabmaan. Sawirku waa isku mid. 10 saacadood oo shaqo ah, 2-3 saacadood oo shaqo ah ...

Dabadeedna qof (waxaan u malaynayaa inay ii sheegeen inaanu qofkani IT-ga shaqo ku lahayn) wuxuu yidhi:

"Waa mawjada!"

Dhawaaqa waxa la kulmay indho-madhan, qof gacantiisana waxa laga yaabaa inay ka labalabaysay badhanka wacitaanka ammaanka.

"Waxay joojinaysaa la shaqaynta badda."

Tani waxay u ekaan kartaa fikrad gebi ahaanba qalaad shaqaalaha taageerada IT, kuwaas oo aan u badnayn inay akhriyaan Buugga Sannadka Tide inta ay u fadhiyaan qaxwo. Waxa ay ku macneeyeen in aanay arrintani la xidhiidhin karin sinaba, sababtoo ah Server-ku waxa uu shaqaynayay muddo toddobaad ah oo aan guul-darrooyin lahayn.

"Toddobaadkii hore duufaanku wuu yaraa, laakiin toddobaadkan wuu sarreeyaa."

Ereybixin yar oo loogu talagalay kuwa aan haysan shatiga doonyaha. hirarku waxay ku xidhan yihiin meertada dayaxa. Iyo sida uu dhulku wareego, 12,5 saacadood kasta cufisjiidka cadceedda iyo dayaxu waxay abuurtaa mowjad baraf ah. Bilowga wareegga 12,5-saac waxaa jira mowjado sare, dhexda dhexe ee wareegga waxaa jira ebb, dhammaadkana waxaa mar kale soo noqnoqda. Laakin marka uu dayaxu wareegiisa is bedelo, waxaa la mid ah farqiga u dhexeeya hirka hoose iyo kan sare. Marka dayaxu u dhexeeyo qoraxda iyo dhulka ama dhinaca ka soo horjeeda ee dhulka (dayax buuxa ama dayax la'aan), waxaan helnaa tides Syzygyn - hirarka sare ee ugu sarreeya iyo hirarka hoose ee ugu hooseeya. Marka la gaaro nuska dayax waxaan helnaa mawjadaha quadrature-ka ee ugu hooseeya. Farqiga u dhexeeya labada daraf aad buu u yaraaday. Wareega dayaxu wuxuu socdaa 28 maalmood: syzygian - quadrature - syzygian - quadrature.

Markii farsamayaqaannada loo sharraxay nuxurka ciidamada badda, waxay isla markiiba u maleeyeen inay u baahan yihiin inay u wacaan booliiska. Waana macquul. Laakiin waxaa soo baxday in saaxiibkii uu sax ahaa. Laba toddobaad ka hor, burburiye ayaa ku soo dhacay meel aan ka fogayn xafiiska. Mar kasta oo baddu kor u qaaddo dherer gaar ah, boosteejada radar ee markabka waxay ku dhammaatay heerka dabaqa qolka server-ka. Iyo raadaarka (ama qalabka elektaroonigga ah ee dagaalka, ama qaar ka mid ah qalabka kale ee militariga) ayaa fowdo ku abuuray kombiyuutarada.

Hawlgalka duulimaadka ee gantaalka

Waxa la ii xilsaaray in aan geeyo nidaam ballaadhan oo (ilaa 400) oo xariiqyo ah) xakamaynta gantaalaha iyo nidaamka la socodka noocyada cusub ee nidaamka qalliinka, kombuyuutarrada iyo luqadda. Si sax ah, laga bilaabo Solaris 2.5.1 ilaa Solaris 7, iyo Verdix Ada Development System (VADS), oo ku qoran Ada 83, ilaa nidaamka Rational Apex Ada, oo ku qoran Ada 95. VADS waxaa soo iibsaday Rational, alaabteedana waxay ahayd duugoobay, inkasta oo Rational uu isku dayay in uu hirgeliyo noocyada ku habboon ee xirmooyinka gaarka ah ee VADS si loo fududeeyo u gudubka isu-duwaha Apex.

Saddex qof ayaa iga caawiyay inaan koodka si nadiif ah u ururiyo. Waxay qaadatay laba toddobaad. Kadibna waxaan ka shaqeeyay si aan u shaqeeyo nidaamka. Isku soo wada duuboo, waxay ahayd qaab-dhismeedkii ugu xumaa iyo hirgelinta nidaamka software-ka ee aan la kulmo, markaa waxay qaadatay laba bilood oo kale si loo dhamaystiro dekedda. Nidaamka ayaa markaa loo gudbiyay si loo tijaabiyo, kaas oo qaatay dhowr bilood oo dheeraad ah. Isla markiiba waxaan saxay dhiqlaha la helay intii lagu jiray tijaabada, laakiin lambarkoodu si dhakhso ah ayuu u yaraaday (code code wuxuu ahaa nidaam wax soo saar, sidaas darteed shaqadeedu waxay u shaqeysay si kalsooni leh, kaliya waxaan ku qasbanaaday inaan ka saaro cayayaanka soo kacay inta lagu jiro la qabsiga cusub). Ugu dambeyntii, markii wax walba ay u shaqeynayeen sidii la rabay, waxaa la ii wareejiyay mashruuc kale.

Maalintii Jimcaha ee ka horreysay Thanksgiving, ayaa telefoonku soo dhacay.

Ridida gantaalka ayaa la rabay in lagu tijaabiyo muddo saddex toddobaad gudahood ah, iyo inta lagu jiro shaybaadhka shaybaadhka ee tirinta, nidaamka amarrada waa la xannibay. Nolosha dhabta ah, tani waxay soo ridi doontaa imtixaanka, iyo haddii xannibaadda ay dhacdo dhowr ilbiriqsi gudahood marka la bilaabo mishiinka, dhowr ficil oo aan la bedeli karin ayaa ku dhici doona nidaamyada kaalmada, taas oo u baahan doonta dheer - iyo qaali - diyaargarowga gantaalka. Ma aysan bilaaban, laakiin dad badan ayaa aad uga xanaaqi lahaa waqti lumis iyo lacag badan. Ha u ogolaan qofna inuu kuu sheego in Wasaaradda Difaaca ay lacag ku bixiso si taxadar la'aan ah-Weligay maan la kulmin maamule qandaraasle ah oo aan gelin miisaaniyadda koowaad ama labaad, oo ay ku xigto jadwalka.

Bilihii hore, loolankan tirinta ayaa la sameeyay boqolaal jeer oo kala duwanaansho badan, iyada oo ay jirtay wax yar oo hiccups ah. Markaa suurtagalnimada in tani dhacdo aad bay u yarayd, laakiin cawaaqibkeedu aad bay muhiim u ahaayeen. Ku dhufo labadan arrimood, waxaadna fahmi doontaa in warku ii saadaaliyay usbuuc fasax ah oo burburay aniga iyo daraasiin injineero ah iyo maamulayaal ah.

Waxaana la ii fiirsaday aniga oo ah qofka nidaamka soo xamaali jiray.

Sida nidaamyada amniga-muhiimka ah intooda badan, cabbirro badan ayaa la galiyay, sidaa darteed aad bay u fududayd in la aqoonsado dhowr xariiq oo kood ah oo la fuliyay ka hor inta uusan nidaamku burburin. Dabcan, ma jirin wax aan caadi ahayn oo ku saabsan iyaga; isla tibaaxaha ayaa si guul leh loo fuliyay kumanaan jeer isla muddadaas.

Dadka Apex waxaan ugu yeernay Rational sababtoo ah waxay ahaayeen kuwa soo saaray compiler-ka iyo qaar ka mid ah hababka ay sameeyeen ayaa loogu yeeray code shaki leh. Iyaga (iyo cid kasta oo kaleba) waxay la dhacsanaayeen in loo baahan yahay in guntiga dhiisha isaga dhigo dhibaatada dhabta ah ee qarankani leedahay.

Maadaama aysan jirin wax xiiso leh oo ku jira joornaalada, waxaan go'aansanay inaan isku dayno inaan dib u soo saarno dhibaatada shaybaarka maxaliga ah. Tani ma ahayn hawl fudud tan iyo markii ay dhacdadu dhacday qiyaastii hal mar 1000kii orodba. Mid ka mid ah sababaha looga shakisan yahay ayaa ahayd wicitaanka shaqada xajinta ee horumarsan iibiye (qayb ka mid ah xirmada socdaalka VADS) Unlock ma keenin in la furo. Dufanka habaynta ee loo yaqaan shaqada ayaa habeeyey farriimaha garaaca wadnaha, kuwaas oo magac ahaan yimi ilbiriqsi kasta. Waxaan kor u qaadnay inta jeer ee 10 Hz, taas oo ah, 10 jeer ilbiriqsikii, waxaana bilownay orod. Qiyaastii saacad ka dib nidaamku wuu is xidhay. Diiwaanka, waxaan ku aragnay in isku xigxiga fariimaha la duubay ay la mid yihiin intii lagu jiray imtixaankii dhicisoobay. Waxaan samaynay dhowr orod oo kale, nidaamka si joogto ah ayaa loo xannibay 45-90 daqiiqo ka dib bilawga, iyo mar kasta loggu wuxuu ka kooban yahay isla waddo isku mid ah. Inkasta oo aanu farsamo ahaan ku soconay kood kala duwan - inta jeer ee fariintu way ka duwan tahay - habdhaqanka nidaamku waa isku mid, markaa waxaan ku kalsoonahay in dhacdadan culeyska ah ay keenayso isla dhibaatada.

Hadda waxaan u baahanahay inaan ogaano halka saxda ah ee xannibaadda ay ka dhacday isku xigxiga tibaaxaha.

Hirgelinta nidaamkan waxay adeegsatay nidaamka hawsha Ada, waxayna u adeegsatay si aad u liidata. Hawshu waa dhisme heer sare ah oo isla markaa la fulin karo oo Ada, wax la mid ah dunta fulinta, oo kaliya lagu dhisay luqadda lafteeda. Marka laba hawlood ay u baahan yihiin inay wada xiriiraan, waxay "dejiyaan dib-u-dejin", waxay isweydaarsadaan xogta lagama maarmaanka ah, ka dibna joojiyaan dib-u-celinta oo ay ku noqdaan fulintooda madaxbannaan. Si kastaba ha ahaatee, nidaamka ayaa loo fuliyay si ka duwan. Ka dib markii hawshii bartilmaameedku ahayd dib loo bilaabay, hawshaas yoolka ah waxay dib u soo celisay hawl kale, ka dibna waxay ku celisay hawl saddexaad, iyo wixii la mid ah ilaa laga dhammeeyo hawsha. Intaa ka dib, dhammaan dib-u-dejintaas waa la dhammaystiray oo hawl kastaa waxay noqotay inay ku soo noqoto fulinta. Taasi waa, waxaan la macaamilaynay nidaamka wicitaanka shaqada ugu qaalisan adduunka, kaas oo joojiyay dhammaan geeddi-socodka "multitasking" inta uu ka shaqeynayo qayb ka mid ah xogta gelinta. Taasna ka hor ma aysan keenin dhibaatooyin kaliya sababtoo ah wax-soo-saarka ayaa ahaa mid aad u hooseeya.

Waxaan qeexay habkan hawsha sababtoo ah marka dib-u-dejinta la codsado ama la filayo in la dhammaystiro, "shaqada beddelka" ayaa dhici karta. Taasi waa, processor-ku wuxuu bilaabi karaa socodsiinta hawl kale oo diyaar u ah in la fuliyo. Waxay soo baxday in marka hal hawl uu diyaar u yahay in uu dib u soo celiyo hawl kale, hawl gebi ahaanba ka duwan ayaa bilaabi karta fulinta, ugu dambeyntiina xakamaynta ayaa ku soo laabanaysa dib-u-soo-celinta koowaad. Waxaana dhici karta in ay dhacaan dhacdooyin kale oo sababa in hawshu badasho; Mid ka mid ah dhacdadan oo kale waa wicitaanka shaqada nidaamka, sida daabacaadda ama fulinta mutex.

Si aan u fahmo xariiqa koodka ee dhibaatada keenay, waxaan u baahday in aan helo hab aan ku diiwaan geliyo horumarka iyada oo loo marayo odhaahyo isdaba-joog ah adoon kicin hawl-wareejin, kaas oo ka hortagaya shil inuu dhaco. Markaa waan ka faa'iidaysan waayay Put_Line()si looga fogaado fulinta hawlgallada I/O. Waxaan dejin karaa doorsoome counter ama wax la mid ah, laakiin sidee baan u arki karaa qiimaheeda haddii aanan ku soo bandhigi karin shaashadda?

Sidoo kale, markii la baarayay log, waxay soo baxday in, inkasta oo la qaboojiyey habaynta farriimaha garaaca wadnaha, taas oo xannibtay dhammaan hawlgallada I / O ee habka iyo ka hortagga in la fuliyo hawlo kale, hawlo kale oo madaxbannaan ayaa sii waday in la fuliyo. Taasi waa, shaqada lama xannibin oo dhan, kaliya silsilad hawleed (muhiim ah).

Tani waxay ahayd tilmaanta loo baahan yahay si loo qiimeeyo muujinta xannibaadda.

Waxaan sameeyay xirmo Ada oo ka kooban hawl, nooc la tiriyey, iyo doorsoome caalami ah oo noocaas ah. Qoraallo tiro badan ayaa lagu xidhay tibaaxo gaar ah oo isku xigxiga dhibka leh (tusaale. Incrementing_Buffer_Index, Locking_Mutex, Mutex_Unlocked), ka dibna dhex galiyay tibaaxo shaqo oo u qoondeeyay tirinta u dhiganta doorsoome caalami ah. Maadaama koodka shayga waxaas oo dhan uu si fudud u keydiyay xusuusta joogtada ah, beddelka shaqada natiijada fulinteedu waxay ahayd mid aan macquul ahayn. Waxaan ugu horeyn ka shakinay tibaaxaha beddeli kara hawsha, maadaama xannibaaddu ay dhacday fulinta halkii ay ku noqon lahayd marka hawsha dib loo beddelo (sababo dhowr ah dartood).

Hawsha dabagalka ayaa si fudud ku socotay wareeg oo si xilliyo ah loo hubiyay si loo arko in qiimaha doorsoomiyaha caalamiga ahi uu isbedelay. Isbeddel kasta, qiimaha waxaa lagu keydiyay fayl. Kadib sugitaan gaaban iyo jeeg cusub. Waxaan u qoray doorsoomiyaha faylka sababtoo ah hawsha waxaa la fuliyay kaliya markii nidaamku u xushay fulinta marka la bedelayo hawsha goobta dhibaatada. Wax kasta oo ku dhacay hawshan ma saamaynayso hawlo kale oo xannibmay oo aan xidhiidh la lahayn.

Waxaa la filayay in marka nidaamku gaaro heerka fulinta koodka dhibka leh, doorsoomayaasha caalamiga ah dib loo dajin doono marka loo guurayo tibaax kasta oo soo socota. Markaa waxa dhacaya wax sababa in hawshu is beddesho, maadaama inta jeer ee fulinta (10 Hz) ay ka hoosayso hawsha la socodka, kormeeruhu waxa uu qabsan karaa qiimaha doorsoomiyaha caalamiga ah oo uu qori karaa. Xaalad caadi ah, waxaan heli karaa isku xigxiga soo noqnoqda ee tirooyin hoosaadyo: qiyamka ugu dambeeya ee doorsoomaha wakhtiga beddelka hawsha. Marka la laadlaado, doorsoomaha caalamiga ahi waa in aanu is beddelin, qiimaha u dambeeya ee qorana waxa uu tilmaamayaa tibaaxaha aan dhammaystirmin.

Waxaan ku ordayay koodka raadraaca Wuu barafoobay. Waxayna la socodka u shaqaynaysay sida saacada shaqada.

Loggu waxa uu ka kooban yahay isku xigxiga la filayo, kaas oo uu kala gooyay qiime tilmaamaya in la soo wacay mutex Unlock, oo hawshu ma dhammayn - sida kiiska kumannaan wicitaan hore.

Injineerada Apex waxay si xun u falanqeeyeen koodkooda wakhtigan waxayna heleen meel xudunta u ah meesha, aragti ahaan, quful uu dhici karo. Laakin itimaalkeedu aad buu u hooseeyey, maadaama dhowr dhacdooyin oo isdaba joog ah oo dhacay waqti cayiman ay keeni karaan xannibaad. Sharciga Murphy, nimanyahow, waa sharciga Murphy.

Si aan u ilaaliyo qaybta koodka ee aan u baahanahay, waxaan ku badalay wicitaanada shaqada mutex-ka (oo lagu dhisay korka shaqada mutex OS mutex) baakidh yar oo Ada mutex oo wadani ah si aan u xakameeyo gelitaanka mutex ee gabalkaas.

Koodhka ayaan galiyay oo imtixaankii ka qaaday. Todoba saacadood ka dib koodku weli wuu shaqaynayay.

Koodhkayga waxa loo gudbiyay Rational, halkaas oo ay ku soo ururiyeen, kala furfureen, oo ay hubiyeen in aanu isticmaalin hab la mid ah kii loo adeegsaday hawlihii mutex ee dhibka lahaa.

Tani waxay ahayd dib-u-eegistii code ee ugu badnayd ee xirfaddayda

Xeerka dib ayaa loo eegay, faylal cusub oo la fulin karo ayaa la ururiyay waxaana loo gudbiyay imtixaan ka noqosho rasmi ah. Dhawr toddobaad ka dib, tijaabadii tirinta ayaa lagu guulaystay oo gantaalkii ayaa kacay.

Hagaag, taasi waa wax fiican oo wanaagsan, laakiin waa maxay macnaha sheekadu?

Waxay ahayd dhibaato aad u fool xun. Boqollaal kun oo khad kood ah, fulin isbar-bar socda, in ka badan dhowr iyo toban hab oo is dhexgal ah, qaabdhismeed liita iyo hirgelinta liidata, is-dhexgallada nidaamyada ku-xidhan iyo malaayiin doollar oo la isticmaalay. Ma jiro cadaadis, sax.

Ma ahayn ka kaliya ee ka shaqaynayay dhibaatadan, in kasta oo aan isha ku hayay markii aan samaynayey xamaaliga. Laakiin inkasta oo aan sameeyay, taasi macnaheedu maaha in aan fahmay dhammaan boqollaal kun oo xariiq oo kood ah, ama xitaa aan ka leexiyay. Koodhka iyo looxyada waxa falanqeeyay injineero dalka oo dhan ah, laakiin markii ay ii sheegeen mala-awaalkooda sababihii fashilka keenay, waxa ay igu qaadatay in aan beeniyo muddo nus daqiiqo ah. Marka la i weydiiyo in aan falanqeeyo aragtiyaha, waxaan u gudbin jiray qof kale, sababtoo ah waxaa ii muuqatay in injineeradani ay u socdaan waddo khaldan. Ma u muuqataa kibir? Haa, tani waa run, laakiin waxaan diiday mala-awaalka iyo codsiyada sabab kale.

Waxaan fahmay dhibaatada nooca ay tahay. Ma garan si sax ah meesha ay wax u dhacayaan iyo sababta, laakiin waan ogaa waxa dhacaya.

Sanado badan, waxaan urursaday aqoon iyo khibrad badan. Waxaan ka mid ahaa hormoodka isticmaalka Ada oo aan fahmay faa'iidada iyo khasaaraha ay leedahay. Waan ogahay sida ay maktabadaha runtime-ku u qabtaan hawlaha oo ay ula macaamilaan fulinta is barbar socda. Oo waxaan fahamsanahay barnaamijyada hoose ee heerka xusuusta, diiwaangelinta iyo isu-ururinta. Si kale haddii loo dhigo, waxaan leeyahay aqoon qoto dheer oo ku saabsan beertayda. Oo waxaan u adeegsaday si aan u helo sababta dhibaatada. Kaliya kamaan shaqayn agagaarka cayayaanka, waxaan fahmay sida loogu helo jawi runtime aad xasaasi u ah.

Sheekooyinka noocan oo kale ah ee halganka code-ka ah maaha mid aad u xiiso badan kuwa aan aqoon u lahayn sifooyinka iyo xaaladaha halgankaas. Laakiin sheekooyinkani waxay naga caawinayaan inaan fahanno waxa loo baahan yahay si loo xalliyo mashaakil aad u adag.

Si aad u xalliso mashaakil aad u adag, waxaad u baahan tahay inaad ka badan tahay barnaamij-sameeyaha. Waxaad u baahan tahay inaad fahanto "masiirka" koodhka, sida uu ula falgalo deegaankiisa, iyo sida deegaanka laftiisa u shaqeeyo.

Kadibna waxaad yeelan doontaa usbuucaaga fasaxa ee burburay.

In la sii wado.

Source: www.habr.com

Add a comment