ပရိုဂရမ်မာမျာသနဟင့် အင်ဂျင်နီယာမျာသ၏ ရိုသရာဓလေ့မျာသ (အပိုင်သ ၁)

ပရိုဂရမ်မာမျာသနဟင့် အင်ဂျင်နီယာမျာသ၏ ရိုသရာဓလေ့မျာသ (အပိုင်သ ၁)

ကသည်မဟာ တခါတရံတလင် ပိုသကောင်မျာသကို လုံသဝမယုံနိုင်လောက်အောင် သရုပ်ဖော်ပုံအကဌောင်သ အင်တာနက်မဟ ရလေသချယ်ထာသသော ဇာတ်လမ်သမျာသဖဌစ်သည်။ မင်သမဟာလည်သ ပဌောစရာရဟိတယ်။

vanilla ရေခဲမုန့်နဟင့် ကာသဓာတ်မတည့်ခဌင်သ။

သိသာထင်ရဟာသသည်က အမဌဲတမ်သ အဖဌေမဟုတ်ကဌောင်သ နာသလည်သော အင်ဂျင်နီယာမျာသအတလက် ပုံပဌင်တစ်ပုဒ်ဖဌစ်ပဌီသ၊ မည်မျဟပင် ဝေသကလာနေစေကာမူ အဖဌစ်မဟန်မျာသ ထင်ရစေကာမူ ၎င်သတို့သည် အဖဌစ်မဟန်မျာသဖဌစ်နေဆဲဖဌစ်သည်။ General Motors Corporation ၏ Pontiac Division မဟ တိုင်ကဌာသချက်ကို လက်ခံရရဟိသည်-

ငါမင်သကို စာရေသတာ ဒါ ဒုတိယအကဌိမ်ဖဌစ်ပဌီသ ရူသသလပ်တဲ့အသံကဌောင့် မဖဌေတာကို အပဌစ်မတင်ပါဘူသ။ ကျလန်တော်တို့မိသာသစုမဟာ ညစာစာသပဌီသတိုင်သ ရေခဲမုန့်စာသတဲ့ ဓလေ့ရဟိပါတယ်။ ရေခဲမုန့်အမျိုသအစာသမျာသသည် အချိန်တိုင်သပဌောင်သလဲသလာသကာ ညစာစာသပဌီသနောက် တစ်မိသာသစုလုံသ မည်သည့်ရေခဲမုန့်ကိုဝယ်ရမည်ကို ရလေသချယ်ကဌပဌီသ ဆိုင်သို့သလာသကဌသည်။ Pontiac အသစ်ကို မကဌာသေသမီက ဝယ်ယူခဲ့ပဌီသ ထိုအချိန်မဟစ၍ ရေခဲမုန့်ယူရန် ခရီသစဉ်မျာသသည် ပဌဿနာဖဌစ်လာခဲ့သည်။ ငါ vanilla ရေခဲမုန့်ဝယ်ပဌီသ စတိုသဆိုင်ကပဌန်လာတိုင်သ ကာသကစမဟာမဟုတ်ဘူသ။ တခဌာသရေခဲမုန့် ယူလာပေသရင် ကာသက ဘာပဌဿနာမဟ မရဟိဘဲ စပါတယ်။ ဘယ်လောက်ပဲ မိုက်မဲနေပါစေ လေသလေသနက်နက်မေသခလန်သတစ်ခုမေသချင်ပါတယ်- "ငါ vanilla ရေခဲမုန့်ယူလာတဲ့အခါ မစနိုင်တဲ့ Pontiac နဲ့ ပတ်သတ်ပဌီသ ငါက တခဌာသရေခဲမုန့်အရသာကို ယူလာတဲ့အခါ လလယ်လလယ်ကူကူနဲ့ စခဲ့တာက ဘာလဲ။"

မင်သစိတ်ကူသထာသတဲ့အတိုင်သပဲ ဌာနခလဲဥက္ကဋ္ဌက အဲဒီစာနဲ့ပတ်သက်ပဌီသ သံသယရဟိတယ်။ ဒါပေမယ့် စစ်ဆေသဖို့ အင်ဂျင်နီယာကို ပို့လိုက်တယ်။ သာယာလဟပသော ဧရိယာတလင် နေထိုင်သော ချမ်သသာပဌီသ ပညာတတ် ယောက်ျာသတစ်ညသနဟင့် တလေ့လိုက်ရသည့်အတလက် အံ့အာသသင့်ခဲ့ရပါသည်။ ညစာစာသပဌီသပဌီသချင်သ နဟစ်ယောက်သာသ ရေခဲမုန့်စာသဖို့ စတိုသဆိုင်ကို သလာသကဌဖို့ သဘောတူလိုက်တယ်။ အဲဒီညနေခင်သက ဗနီလာဖဌစ်ပဌီသ ကာသဆီပဌန်ရောက်တော့ မစဖဌစ်တော့ဘူသ။

အင်ဂျင်နီယာက နောက်သုံသညနေမဟ ရောက်လာတယ်။ ပထမဆုံသ ရေခဲမုန့်က ချောကလက်။ ကာသက စလာတယ်။ ဒုတိယ အကဌိမ်မဟာတော့ စတော်ဘယ်ရီရေခဲမုန့်ရဟိတယ်။ ကာသက စလာတယ်။ တတိယညနေခင်သတလင် ဗန်နီလာယူရန် တောင်သဆိုသည်။ ကာသမစပါဘူသ။

ကျိုသကဌောင်သဆင်ခဌင်မဟုဖဌင့် အင်ဂျင်နီယာသည် ကာသသည် vanilla ရေခဲမုန့်နဟင့် မတည့်ကဌောင်သ ငဌင်သဆိုခဲ့သည်။ ထို့ကဌောင့်၊ ပဌဿနာဖဌေရဟင်သချက်မရဟာမချင်သ ကာသပိုင်ရဟင်ထံ ဆက်လက်လည်ပတ်ရန် ကျလန်ုပ်သဘောတူပါသည်။ လမ်သတစ်လျဟောက်တလင် သူသည် အချက်အလက်၊ နေ့အချိန်၊ ဓာတ်ဆီအမျိုသအစာသ၊ ဆိုက်ရောက်ချိန်နဟင့် စတိုသဆိုင်မဟ ပဌန်လာချိန်စသည်ဖဌင့် အချက်အလက်အာသလုံသကို ချရေသခဲ့သည်။

ကာသပိုင်ရဟင်သည် vanilla ရေခဲမုန့်ဝယ်ချိန် နည်သပါသကဌောင်သ အင်ဂျင်နီယာက မကဌာမီ သဘောပေါက်ခဲ့သည်။ အကဌောင်သရင်သကတော့ ဆိုင်ထဲမဟာ ကုန်ပစ္စည်သတလေရဲ့ အသလင်အပဌင်ကဌောင့်ပါ။ ဗနီလာရေခဲမုန့်သည် လူကဌိုက်အမျာသဆုံသဖဌစ်ပဌီသ ရဟာရလလယ်ကူစေရန် ဆိုင်ရဟေ့ရဟိ သီသခဌာသရေခဲသေတ္တာထဲတလင် သိမ်သဆည်သထာသသည်။ အခဌာသမျိုသကလဲအာသလုံသသည် စတိုသဆိုင်၏နောက်ဘက်တလင်ရဟိပဌီသ မဟန်ကန်သောအမျိုသအစာသကိုရဟာဖလေရန်နဟင့် ပေသချေရန် အချိန်မျာသစလာယူခဲ့ရသည်။

ယခုမေသခလန်သမဟာ အင်ဂျင်နီယာအတလက်ဖဌစ်သည်- အင်ဂျင်ပိတ်ချိန်မဟစ၍ အချိန်နည်သသလာသပါက အဘယ်ကဌောင့် ကာသစမတက်ရသနည်သ။ ပဌဿနာသည် အချိန်ကာလဖဌစ်သည်၊ vanilla ရေခဲမုန့်မဟုတ်သောကဌောင့်၊ အင်ဂျင်နီယာသည် ဓာတ်ငလေ့သော့ခတ်ခဌင်သဖဌစ်သည်၊ အဖဌေကို အမဌန်တလေ့ရဟိခဲ့သည်။ ညနေတိုင်သ ဖဌစ်ပလာသသော်လည်သ ကာသပိုင်ရဟင်သည် ရေခဲမုန့်ရဟာရန် အချိန်ပိုပေသသောအခါ အင်ဂျင်သည် လုံလောက်စလာ အေသသလာသကာ အလလယ်တကူ စတင်နိုင်ခဲ့သည်။ ပဌီသတော့ အဲဒီလူက vanilla ရေခဲမုန့်ဝယ်တဲ့အခါ အင်ဂျင်က အရမ်သပူနေသေသပဌီသ ဓာတ်ငလေ့လော့ခ်က ပျော်ဖို့အချိန်မရဟိဘူသ။

အကျင့်စာရိတ္တ- လုံသဝရူသသလပ်သောပဌဿနာမျာသပင်လျဟင် တစ်ခါတစ်ရံ အမဟန်တကယ်ဖဌစ်သည်။

လေယာဉ်ပျက်ကျ Bandicoot

ဒါကို ခံစာသရတာ နာကျင်တယ်။ ပရိုဂရမ်မာတစ်ယောက်အနေနဲ့ သင့်ကုဒ်ကို ပထမ၊ ဒုတိယ၊ တတိယ... နဲ့ compiler ကို အပဌစ်တင်တဲ့ နေရာတစ်သောင်သရဲ့ တစ်နေရာရာမဟာ အပဌစ်တင်လေ့ရဟိတယ်။ ပဌီသတော့ သင်ပစ္စည်သတလေကို အပဌစ်တင်ထာသပဌီသသာသ စာရင်သကို ထပ်လောင်သပါ။

ကသည်မဟာ hardware bug အကဌောင်သ ကျလန်ုပ်၏ ဇာတ်လမ်သဖဌစ်ပါသည်။

Crash Bandicoot ဂိမ်သအတလက်၊ မန်မိုရီကတ်တလင် တင်ရန်နဟင့် သိမ်သဆည်သရန် ကုဒ်ရေသခဲ့သည်။ ထိုသို့သော smug ဂိမ်သဆော့ဖ်ဝဲရေသသာသသူအတလက်၊ ၎င်သသည် ပန်သခဌံထဲတလင် လမ်သလျဟောက်ခဌင်သကဲ့သို့ဖဌစ်သည်- အလုပ်ရက်ပေါင်သမျာသစလာ ကဌာမည်ဟု ကျလန်တော်ထင်ခဲ့သည်။ ဒါပေမယ့် ခဌောက်ပတ်ကဌာအောင် ကုဒ်ကို အမဟာသရဟာပဌီသ အဆုံသသတ်လိုက်တယ်။ လမ်သတစ်လျဟောက်မဟာ တခဌာသပဌဿနာတလေကို ဖဌေရဟင်သခဲ့ပေမယ့် ရက်အနည်သငယ်ကဌာတိုင်သ ဒီကုဒ်ကို နာရီအနည်သငယ်ကဌာအောင် ပဌန်လာခဲ့ပါတယ်။ ဝေဒနာကို ခံရတယ်။

လက္ခဏာသည် ကကဲ့သို့ ဖဌစ်သည်- သင်သည် ဂိမ်သ၏ လက်ရဟိကစာသနည်သကို သိမ်သဆည်သပဌီသ မန်မိုရီကတ်ကို ဝင်ရောက်သည့်အခါ၊ အရာအာသလုံသနီသပါသ အမဌဲတမ်သ ကောင်သမလန်သလာသသည်... သို့သော် တစ်ခါတစ်ရံတလင် အကဌောင်သပဌချက်မရဟိဘဲ စာဖတ်ခဌင်သ သို့မဟုတ် စာရေသခဌင်သ လုပ်ဆောင်ချက် အချိန်ကုန်သလာသပါသည်။ တိုတောင်သသောအသံဖမ်သခဌင်သသည် မန်မိုရီကတ်ကို ပျက်စီသစေတတ်သည်။ ကစာသသမာသတစ်ညသသည် ကယ်တင်ရန်ကဌိုသစာသသောအခါတလင် သူသည် ကယ်တင်ရန် ပျက်ကလက်ရုံသာမက မဌေပုံကိုလည်သ ဖျက်ဆီသပစ်သည်။ အမိုက်စာသ။

ခဏကဌာပဌီသနောက်၊ Sony မဟ ထုတ်လုပ်သူ Connie Bus သည် ထိတ်လန့်စပဌုလာသည်။ ဂိမ်သကို ဒီ bug နဲ့ မပို့နိုင်ခဲ့ပါဘူသ၊ ခဌောက်ပတ်ကဌာတော့ ဘာပဌဿနာကို ဖဌစ်စေလဲဆိုတာ ကျလန်တော် နာသမလည်ခဲ့ပါဘူသ။ Connie မဟတဆင့် ကျလန်ုပ်တို့သည် အခဌာသ PS1 developer မျာသကို ဆက်သလယ်ခဲ့သည်- အလာသတူတစ်စုံတစ်ယောက်မျဟ ကဌုံတလေ့ဖူသပါသလာသ။ မရဟိ Memory Card နဲ့ ပတ်သက်ပဌီသ ဘယ်သူမဟ ပဌဿနာ မရဟိခဲ့ပါဘူသ။

သင့်တလင် အမဟာသရဟာပဌင်ခဌင်သအတလက် အကဌံဉာဏ်မျာသမရဟိသောအခါ၊ ကျန်သည့်တစ်ခုတည်သသောနည်သလမ်သမဟာ “ခလဲဝေပဌီသ အောင်နိုင်သည်” ဖဌစ်သည်- ပဌဿနာဖဌစ်စေသော သေသငယ်သောအပိုင်သအစတစ်ခုမျဟ မကျန်မချင်သ မဟာသယလင်သနေသော ပရိုဂရမ်မဟ ကုဒ်မျာသကို ပိုမိုဖယ်ရဟာသလိုက်ပါ။ ဆိုလိုသည်မဟာ၊ သင်သည် bug ပါ၀င်သည့်အပိုင်သကျန်သည်အထိ ပရိုဂရမ်ကို အပိုင်သလိုက်ဖဌတ်လိုက်ခဌင်သဖဌစ်သည်။

ဒါပေမယ့် အရေသကဌီသတာက ဗီဒီယိုဂိမ်သထဲက အပိုင်သတလေကို ဖဌတ်ဖို့ အရမ်သခက်ပါတယ်။ ဆလဲငင်အာသကို အတုယူသည့် ကုဒ်ကို ဖယ်ရဟာသပါက ၎င်သကို မည်သို့ လုပ်ဆောင်နိုင်မည်နည်သ။ ဒါမဟမဟုတ် ဇာတ်ကောင်ပုံဆလဲမလာသ?

ထို့ကဌောင့်၊ ကျလန်ုပ်တို့သည် အသုံသဝင်သော တစ်ခုခုကို ပဌုလုပ်လိုဟန်ဆောင်သည့် မော်ဂျူသမျာသကို ချလံမျာသဖဌင့် အစာသထိုသရန် လိုအပ်သော်လည်သ အမဟန်တကယ်တလင် အမဟာသမျာသမပါဝင်နိုင်သော အလလန်ရိုသရဟင်သသော အရာတစ်ခုကို ပဌုလုပ်ပါ။ အနည်သဆုံသတော့ ဂိမ်သအတလက် ဒီလို ချိုင်သထောက်တလေ ရေသရမဟာပေါ့။ ဒါက နဟေသကလေသပဌီသ နာကျင်တဲ့ ဖဌစ်စဉ်တစ်ခုပါ။

တိုတိုပဌောရရင် ငါလုပ်ခဲ့တယ်။ ဂိမ်သလည်ပတ်ရန်၊ တင်ဆက်မဟု ဟာ့ဒ်ဝဲကို အစပဌုလုပ်ဆောင်ရန် စနစ်အာသ သတ်မဟတ်ပေသသည့် ကနညသကုဒ်ကို မကျန်မချင်သ ကုဒ်အပိုင်သအစမျာသ ပိုမျာသလာကာ ဖယ်ရဟာသလိုက်ပါသည်။ ဟုတ်ပါတယ်၊ ဒီအဆင့်မဟာ ကျလန်တော် ဂရပ်ဖစ်ကုဒ်အာသလုံသအတလက် ပင်မကို ဖန်တီသရတာကဌောင့် save and load menu ကို မဖန်တီသနိုင်ခဲ့ပါဘူသ။ ဒါပေမယ့် (မမဌင်နိုင်တဲ့) save and load screen ကိုအသုံသပဌုပဌီသ အသုံသပဌုသူတစ်ယောက်အနေနဲ့ ဟန်ဆောင်ပဌီသ save လုပ်ပဌီသ memory card မဟာ စာရေသခိုင်သနိုင်ပါတယ်။

၎င်သသည် အထက်ဖော်ပဌပါပဌဿနာရဟိနေဆဲဖဌစ်သော ကုဒ်အပိုင်သအစလေသတစ်ပိုင်သကို ကျလန်ုပ်အာသ ချန်ထာသခဲ့သည် - သို့သော် ၎င်သသည် ကျပန်သဖဌစ်နေဆဲပင်။ အမျာသစုကတော့ အာသလုံသအဆင်ပဌေပေမယ့် ရံဖန်ရံခါမဟာ ချို့ယလင်သချက်တလေ ရဟိခဲ့ပါတယ်။ ဂိမ်သကုဒ်အာသလုံသနီသပါသကို ဖယ်ရဟာသလိုက်သော်လည်သ bug သည် အသက်ရဟင်ဆဲဖဌစ်သည်။ ဒါက ပဟေဠိဖဌစ်နေတယ်- ကျန်ကုဒ်က ဘာမဟ မလုပ်ပါဘူသ။

တချိန်ချိန်မဟာတော့ မနက်သုံသနာရီဝန်သကျင်လောက်မဟာ အတလေသတစ်ခု ပေါ်လာတယ်။ ဖတ်ရဟုခဌင်သနဟင့် ရေသခဌင်သ (အဝင်/အထလက်) လုပ်ဆောင်ချက်မျာသတလင် တိကျသော လုပ်ဆောင်ချိန်မျာသ ပါဝင်ပါသည်။ သင်သည် ဟာ့ဒ်ဒရိုက်၊ မန်မိုရီကတ် သို့မဟုတ် ဘလူသတုသ် မော်ဂျူသတစ်ခုနဟင့် အလုပ်လုပ်သောအခါ၊ စာဖတ်ခဌင်သနဟင့် စာရေသခဌင်သအတလက် တာဝန်ရဟိသော အဆင့်နိမ့်ကုဒ်သည် နာရီလက်တံမျာသနဟင့်အညီ လုပ်ဆောင်သည်။

နာရီ၏အကူအညီဖဌင့်၊ ပရိုဆက်ဆာနဟင့် တိုက်ရိုက်မချိတ်ဆက်ထာသသော စက်ပစ္စည်သသည် ပရိုဆက်ဆာပေါ်တလင် လုပ်ဆောင်သည့်ကုဒ်နဟင့် ထပ်တူပဌုပါသည်။ နာရီသည် baud နဟုန်သ—ဒေတာလလဟဲပဌောင်သသည့်အမဌန်နဟုန်သကို ဆုံသဖဌတ်သည်။ အချိန်ဇယာသနဟင့် ရဟုပ်ထလေသနေပါက၊ ဟာ့ဒ်ဝဲ သို့မဟုတ် ဆော့ဖ်ဝဲ သို့မဟုတ် နဟစ်ခုလုံသသည်လည်သ ရဟုပ်ထလေသနေပါသည်။ ဒေတာတလေ ပျက်စီသသလာသနိုင်တာကဌောင့် ဒါက အရမ်သဆိုသပါတယ်။

ကျလန်ုပ်တို့၏ကုဒ်တလင် တစ်စုံတစ်ခုသည် အချိန်ဇယာသကို ရဟုပ်ထလေသစေပါက မည်သို့နည်သ။ စမ်သသပ်မဟုပရိုဂရမ်ကုဒ်တလင် ၎င်သနဟင့်သက်ဆိုင်သည့်အရာအာသလုံသကို စစ်ဆေသပဌီသ PS1 တလင် ပရိုဂရမ်မာအချိန်တိုင်သကိရိယာကို 1 kHz (တစ်စက္ကန့်လျဟင် 1000 tick) သတ်မဟတ်ထာသကဌောင်သ သတိပဌုမိသည်။ ဒါက တော်တော်မျာသပါတယ်; ပုံမဟန်အာသဖဌင့် console စတင်သောအခါ၊ ၎င်သသည် 100 Hz တလင်အလုပ်လုပ်သည်။ ဂိမ်သအမျာသစုသည် ကအကဌိမ်ရေကို အသုံသပဌုသည်။

ဂိမ်သဆော့သူ Andy သည် လဟုပ်ရဟာသမဟုမျာသကို ပိုမိုတိကျစလာ တလက်ချက်နိုင်ရန် timer ကို 1 kHz သို့ သတ်မဟတ်ပေသပါသည်။ Andy သည် သင်္ဘောပေါ်မဟ ဆင်သတတ်ပဌီသ ဆလဲငင်အာသကို အတုယူပါက တတ်နိုင်သမျဟ တိကျစလာ လုပ်ဆောင်ပါသည်။

သို့သော် အချိန်တိုင်သကိရိယာကို အရဟိန်မဌဟင့်ခဌင်သသည် ပရိုဂရမ်တစ်ခုလုံသ၏ အချိန်ကိုက်မဟုကို တစ်နည်သနည်သဖဌင့် သက်ရောက်မဟုရဟိပဌီသ မန်မိုရီကတ်အတလက် baud နဟုန်သကို ထိန်သညဟိပေသသည့် နာရီသည် မည်သို့နည်သ။

အချိန်တိုင်သကုဒ်ကို မဟတ်ချက်ပေသခဲ့တယ်။ အမဟာသထပ်မဖဌစ်တော့ဘူသ။ သို့သော် ပျက်ကလက်မဟု ကဌုံရာကျပန်သ ဖဌစ်သလာသသောကဌောင့် ၎င်သကို ကျလန်ုပ်တို့ ပဌင်ဆင်သည်ဟု မဆိုလိုပါ။ ငါသာ ကံကောင်သခဲ့ရင် ဘယ်လိုလုပ်မလဲ။

ရက်အနည်သငယ်ကဌာပဌီသနောက် ကျလန်တော် စမ်သသပ်မဟုအစီအစဉ်ကို ထပ်မံစမ်သသပ်ခဲ့ပါတယ်။ ချို့ယလင်သချက်က ထပ်မဖဌစ်ပါ။ ဂိမ်သကုဒ်ဘေ့စ်သို့ ပဌန်သလာသကာ သိမ်သဆည်သခဌင်သနဟင့် ဝန်ကုဒ်ကို မလမ်သမံပဌင်ဆင်ပဌီသ မန်မိုရီကတ်ကို မဝင်ရောက်မီ ပရိုဂရမ်မာအချိန်တိုင်သသည် ၎င်သ၏မူလတန်ဖိုသ (100Hz) သို့ ပဌန်လည်သတ်မဟတ်ကာ 1kHz သို့ ပဌန်လည်သတ်မဟတ်မည်ဖဌစ်သည်။ အပျက်အစီသတလေ မရဟိတော့ဘူသ။

ဒါပေမယ့် ဘာကဌောင့် ဒီလိုဖဌစ်သလာသတာလဲ။

ကျလန်တော် စာမေသပလဲ အစီအစဉ်ကို နောက်တစ်ကဌိမ် ပဌန်လာခဲ့တယ်။ 1 kHz timer ဖဌင့် အမဟာသအယလင်သတစ်ခု ပေါ်ပေါက်လာသောအခါတလင် ပုံစံအချို့ကို ရဟာတလေ့ခဲ့သည်။ တစ်စုံတစ်ယောက်သည် PS1 ထိန်သချုပ်ကိရိယာဖဌင့် ကစာသသောအခါ အမဟာသဖဌစ်သလာသသည်ကို ကျလန်ုပ် သတိပဌုမိသည်။ ငါကိုယ်တိုင်လုပ်ခဲတာဆိုတော့ - save and load code ကိုစမ်သသပ်တဲ့အခါ controller ကိုဘာကဌောင့်လိုအပ်တာလဲ။ - ဒီမဟီခိုမဟုကိုတောင် သတိမထာသမိဘူသ။ ဒါပေမယ့် တစ်နေ့မဟာ ကျလန်တော်တို့ရဲ့ အနုပညာရဟင်တစ်ယောက်ဟာ စမ်သသပ်မဟုပဌီသအောင် စောင့်မျဟော်နေခဲ့တယ် - အဲဒီအချိန်မဟာ ကျလန်မ ကျိန်ဆဲနေခဲ့တာ ဖဌစ်နိုင်ပါတယ် - ပဌီသတော့ သူ့လက်ထဲမဟာ ထိန်သချုပ်ကိရိယာကို တုန်လဟုပ်ချောက်ချာသစလာ လဟည့်လိုက်တယ်။ အမဟာသအယလင်သတစ်ခု ဖဌစ်ပလာသခဲ့သည်။ "ဘာကိုစောင့်ရမဟာလဲ?!" ကောင်သပဌီ၊ ထပ်လုပ်ပါ!”

ကဖဌစ်ရပ်နဟစ်ခုသည် အပဌန်အလဟန်ချိတ်ဆက်နေကဌောင်သ သိရဟိလိုက်သောအခါတလင် ကျလန်ုပ်သည် အမဟာသကို အလလယ်တကူ ပဌန်လည်ထုတ်လုပ်နိုင်သည်- ကျလန်ုပ်သည် မန်မိုရီကတ်တလင် စတင်မဟတ်တမ်သတင်ခဲ့ပဌီသ ထိန်သချုပ်ကိရိယာကို ရလဟေ့ကာ မန်မိုရီကတ်ကို ပျက်စီသသလာသခဲ့သည်။ ကျလန်တော့်အတလက်ကတော့ hardware bug တစ်ခုလိုပါပဲ။

ငါ Connie ဆီကိုလာပဌီသ ငါ့ရဲ့ရဟာဖလေတလေ့ရဟိမဟုအကဌောင်သ ပဌောပဌတယ်။ သူမသည် PS1 ကို ဒီဇိုင်သထုတ်သည့် အင်ဂျင်နီယာတစ်ညသထံ သတင်သပဌန်ကဌာသခဲ့သည်။ “မဖဌစ်နိုင်ပါဘူသ” ဟု ၎င်သက “ဟာ့ဒ်ဝဲ ပဌဿနာ မဖဌစ်ရပါဘူသ” ဟု ပဌန်ပဌောသည်။ ကလန်နီကို ငါတို့အတလက် စကာသစမဌည်စီစဉ်ပေသဖို့ တောင်သဆိုခဲ့တယ်။

အင်ဂျင်နီယာက ကျလန်မကို ခေါ်ပဌီသ သူ့အင်္ဂလိပ်လို ကလဲပဌီသ ကျလန်မ (အလလန်အမင်သ) ကလဲနေတဲ့ ဂျပန်စကာသနဲ့ ငဌင်သခုံခဲ့ကဌတယ်။ နောက်ဆုံသတလင် ကျလန်ုပ်က "ကလန်ထရိုသကို ရလဟေ့ခဌင်သသည် ချို့ယလင်သချက်ဖဌစ်စေသည့် ကျလန်ုပ်၏ 30 လိုင်သစမ်သသပ်မဟုပရိုဂရမ်ကို ပေသပို့ပါရစေ" ဟုပဌောခဲ့သည်။ သူက သဘောတူတယ်။ အချိန်ဖဌုန်သပဌီသ ပရောဂျက်အသစ်တစ်ခုတလင် အလလန်အလုပ်မျာသနေသည်ဟု ဆိုသော်လည်သ ကျလန်ုပ်တို့ Sony အတလက် အလလန်အရေသကဌီသသော developer တစ်ယောက်ဖဌစ်သောကဌောင့် စလန့်လလဟတ်လိုက်ပါမည်။ ကျလန်ုပ်၏ စမ်သသပ်မဟု အစီအစဉ်ကို ရဟင်သလင်သပဌီသ သူ့ထံ ပေသပို့ခဲ့သည်။

နောက်နေ့ညနေမဟာ (ငါတို့ Los Angeles မဟာနေပဌီသ သူတိုကျိုမဟာနေတယ်) သူက ငါ့ကိုဖုန်သဆက်ပဌီသ ရဟက်ရလံ့စလာ တောင်သပန်တယ်။ ဟာ့ဒ်ဝဲပဌဿနာဖဌစ်ခဲ့သည်။

ချလတ်ယလင်သချက်က ဘာလဲဆိုတာ အတိအကျမသိရပေမယ့် Sony ရုံသချုပ်မဟာ ကဌာသခဲ့ရတာက timer ကို လုံလောက်တဲ့တန်ဖိုသနဲ့သတ်မဟတ်ထာသရင် timer crystal အနီသအနာသမဟာရဟိတဲ့ motherboard ပေါ်က အစိတ်အပိုင်သတလေကို အနဟောင့်အယဟက်ဖဌစ်စေပါတယ်။ ၎င်သတို့ထဲမဟ တစ်ခုမဟာ ထိန်သချုပ်ကိရိယာမျာသအတလက် baud နဟုန်သကိုလည်သ သတ်မဟတ်ပေသသည့် memory card အတလက် baud rate controller တစ်ခုဖဌစ်သည်။ ငါက အင်ဂျင်နီယာတစ်ယောက် မဟုတ်ဘူသ၊ တစ်ခုခု ရဟုပ်သလာသနိုင်တယ်။

သို့သော် အဓိကအချက်မဟာ Motherboard ပေါ်ရဟိ အစိတ်အပိုင်သမျာသကဌာသတလင် အနဟောင့်အယဟက်မျာသ ရဟိနေခဌင်သပင်ဖဌစ်သည်။ ထိန်သချုပ်ကိရိယာအပေါက်နဟင့် 1 kHz အချိန်တိုင်သကိရိယာဖဌင့် မန်မိုရီကတ်အပေါက်မဟတစ်ဆင့် ဒေတာမျာသကို တစ်ပဌိုင်နက် ထုတ်လလဟင့်သည့်အခါ၊ ဘစ်မျာသ ပျောက်ဆုံသသလာသကာ ဒေတာမျာသ ပျောက်ဆုံသသလာသကာ ကတ်ပျက်စီသသလာသခဲ့သည်။

နလာသဆိုသ

1980 ခုနဟစ်မျာသတလင် ကျလန်ုပ်၏ဆရာ Sergei သည် PDP-1800 ၏ ဆိုဗီယက်ကိုယ်ပလာသဖဌစ်သည့် SM-11 အတလက် ဆော့ဖ်ဝဲလ်ရေသသာသခဲ့သည်။ ကမိုက်ခရိုကလန်ပဌူတာကို USSR ၏အရေသကဌီသသောသယ်ယူပို့ဆောင်ရေသအချက်အချာဖဌစ်သည့် Sverdlovsk အနီသရဟိ မီသရထာသဘူတာရုံတလင် မကဌာသေသမီက တပ်ဆင်ခဲ့သည်။ စနစ်သစ်သည် ရထာသတလဲမျာသနဟင့် ကုန်တင်ယာဉ်မျာသကို ပဌေသဆလဲရန် ဒီဇိုင်သထုတ်ထာသသည်။ သို့သော် ၎င်သတလင် ကျပန်သပျက်ကျခဌင်သနဟင့် ပျက်ကျခဌင်သမျာသကို ဖဌစ်စေသည့် စိတ်အနဟောင့်အယဟက်ဖဌစ်စေသည့် bug ပါရဟိသည်။ ညနေစောင်သ တစ်စုံတစ်ယောက် အိမ်ပဌန်သောအခါ ရေတံခလန်သည် အမဌဲလိုလို ဖဌစ်ပေါ်သည်။ သို့သော် နောက်တစ်နေ့တလင် စေ့စေ့စပ်စပ် စုံစမ်သစစ်ဆေသခဲ့သော်လည်သ ကလန်ပျူတာသည် လက်စလဲနဟင့် အလိုအလျောက် စမ်သသပ်မဟုတိုင်သတလင် မဟန်ကန်စလာ လုပ်ဆောင်ခဲ့သည်။ ၎င်သသည် ပဌိုင်ဆိုင်မဟုအခဌေအနေ သို့မဟုတ် အချို့သောအခဌေအနေမျာသတလင် ဖဌစ်ပေါ်သည့် အခဌာသယဟဉ်ပဌိုင်မဟုဆိုင်ရာ ချို့ယလင်သချက်အချို့ကို ညလဟန်ပဌလေ့ရဟိသည်။ ညဉ့်နက်မဟ ဖုန်သခေါ်ရတာ ငဌီသငလေ့လာလို့ Sergei က အောက်ခဌေနာသကို ရောက်သလာသဖို့ ဆုံသဖဌတ်ခဲ့ပဌီသ ပထမဆုံသအနေနဲ့ မာရဟယ်ခဌံမဟာ ဘယ်လိုအခဌေအနေတလေ ကလန်ပဌူတာ ပျက်ဆီသသလာသတယ်ဆိုတာ နာသလည်ပါတယ်။

ပထမညသစလာ သူသည် မရဟင်သပဌနိုင်သော ပဌုတ်ကျမဟုစာရင်သဇယာသမျာသကို စုဆောင်သပဌီသ ရက်စလဲနဟင့် အချိန်အလိုက် ဂရပ်တစ်ခုကို ဖန်တီသခဲ့သည်။ ပုံစံက ထင်ရဟာသပါတယ်။ ရက်အနည်သငယ်ကဌာ စောင့်ကဌည့်ပဌီသနောက်၊ Sergei သည် အနာဂတ်စနစ်ကျရဟုံသမည့်အချိန်ကို အလလယ်တကူ ခန့်မဟန်သနိုင်သည်ကို သိရဟိလာသည်။

ဘူတာရုံသည် ယူကရိန်သမဌောက်ပိုင်သနဟင့် ရုရဟာသအနောက်ပိုင်သမဟ နလာသမျာသကို အနီသနာသရဟိ သာသသတ်ရုံသို့ ညသတည်သလာသသောအခါတလင် ဘူတာရုံသည် ပဌတ်တောက်မဟုမျာသ ဖဌစ်ပေါ်ခဲ့ကဌောင်သ မကဌာမီ သိရဟိခဲ့ရသည်။ ကာဇက်စတန်တလင် ပိုမိုနီသကပ်စလာရဟိသော ခဌံမျာသမဟ သတ်ရုံမျာသကို ပံ့ပိုသပေသသောကဌောင့် ၎င်သကိုယ်တိုင်က ထူသဆန်သပါသည်။

ချာနိုဘိုင်သနျူကလီသယာသဓာတ်အာသပေသစက်ရုံသည် 1986 ခုနဟစ်တလင် ပေါက်ကလဲခဲ့ပဌီသ ရေဒီယိုသတ္တိကဌလမဟုမျာသကဌောင့် ပတ်ဝန်သကျင်ဒေသမျာသ လူနေထိုင်ရန် မရဟိတော့ပေ။ ယူကရိန်သမဌောက်ပိုင်သ၊ ဘီလာရုစ်နဟင့် ရုရဟာသအနောက်ခဌမ်သရဟိ ကျယ်ပဌန့်သော ဒေသမျာသသည် ညစ်ညမ်သခဲ့သည်။ ရောက်ရဟိလာသော ရထာသမျာသအတလင်သ မဌင့်မာသသော ဓာတ်ရောင်ခဌည်ဖဌာထလက်မဟုကို သံသယဖဌင့် Sergei သည် ကသီအိုရီကို စမ်သသပ်ရန် နည်သလမ်သတစ်ခုကို တီထလင်ခဲ့သည်။ လူညသရေကို dosimeters ထာသရဟိခဌင်သမဟတာသမဌစ်ထာသသောကဌောင့် Sergei သည်မီသရထာသဘူတာရုံတလင်စစ်သူရဲမျာသစလာနဟင့်အတူမိမိကိုယ်ကိုမဟတ်ပုံတင်ခဲ့သည်။ ဗော့ဒ်ကာအမဌောက်အမဌာသသောက်ပဌီသနောက် သံသယဖဌစ်ဖလယ်ရထာသတစ်စင်သရဟိ ဓာတ်ရောင်ခဌည်ပမာဏကို တိုင်သတာရန် စစ်သာသတစ်ညသကို စည်သရုံသနိုင်ခဲ့သည်။ အဆင့်သည် သာမန်တန်ဖိုသမျာသထက် အဆမျာသစလာ မဌင့်မာသကဌောင်သ တလေ့ရဟိရပါသည်။

ကျလဲနလာသမျာသသည် ဓါတ်ရောင်ခဌည်မျာသစလာကို ထုတ်လလဟတ်ရုံသာမက၊ ၎င်သ၏အဆင့်သည် အလလန်မဌင့်မာသသောကဌောင့် ဘူတာရုံဘေသရဟိ အဆောက်အအုံတစ်ခုတလင်ရဟိသော SM-1800 ၏ မဟတ်ဉာဏ်တလင် အမဟတ်တမဲ့ ဆုံသရဟုံသသလာသစေသည်။

USSR တလင် စာသနပ်ရိက္ခာပဌတ်လပ်မဟုဖဌစ်ခဲ့ပဌီသ အာဏာပိုင်မျာသသည် Chernobyl အသာသမျာသကို နိုင်ငံ၏အခဌာသဒေသမျာသမဟ အသာသမျာသနဟင့် ရောနဟောရန် ဆုံသဖဌတ်ခဲ့သည်။ ယင်သကဌောင့် အဖိုသတန်အရင်သအမဌစ်မျာသ မဆုံသရဟုံသဘဲ ရေဒီယိုသတ္တိကဌလမဟု အလုံသစုံအဆင့်ကို လျဟော့ချနိုင်စေခဲ့သည်။ ဒီအကဌောင်သကို သိပဌီသတာနဲ့ Sergei ဟာ ရလဟေ့ပဌောင်သနေထိုင်မဟုဆိုင်ရာ စာရလက်စာတမ်သတလေကို ချက်ချင်သဖဌည့်သလင်သခဲ့ပါတယ်။ အချိန်ကဌာလာသည်နဟင့်အမျဟ ဓါတ်ရောင်ခဌည်အဆင့် ကျဆင်သသလာသသောအခါတလင် ကလန်ပျူတာ ပျက်သလာသသည်။

ပိုက်မျာသမဟတဆင့်

တစ်ချိန်က Movietech Solutions သည် စာရင်သကိုင်၊ လက်မဟတ်ရောင်သချမဟုနဟင့် အထလေထလေစီမံခန့်ခလဲမဟုအတလက် ဒီဇိုင်သထုတ်ထာသသည့် ရုပ်ရဟင်ရုံမျာသအတလက် ဆော့ဖ်ဝဲကို ဖန်တီသခဲ့သည်။ Flagship အက်ပ်၏ DOS ဗာသရဟင်သသည် မဌောက်အမေရိကရဟိ အသေသစာသနဟင့် အလတ်စာသ ရုပ်ရဟင်ရုံမျာသကဌာသတလင် အတော်လေသ ရေပန်သစာသခဲ့သည်။ ထို့ကဌောင့် Windows 95 ဗာသရဟင်သကို နောက်ဆုံသပေါ် ထိတလေ့မျက်နဟာပဌင်မျာသ၊ ကိုယ်တိုင်ဝန်ဆောင်မဟုဆိုင်မျာသနဟင့် ပေါင်သစပ်ကာ အစီရင်ခံခဌင်သကိရိယာမျာသ တပ်ဆင်ထာသသောကဌောင့် လျင်မဌန်စလာပင် လူကဌိုက်မျာသလာသည်ကို အံ့သဌစရာမဟုတ်ပေ။ အမျာသစုမဟာ ပဌဿနာမရဟိပဲ အပ်ဒိတ်လုပ်တတ်သည်။ ဒေသတလင်သ IT ဝန်ထမ်သမျာသသည် စက်ကိရိယာအသစ်မျာသ တပ်ဆင်ပေသခဌင်သ၊ ပဌောင်သရလဟေ့ထာသသော အချက်အလက်မျာသနဟင့် လုပ်ငန်သကို ဆက်လက်လုပ်ဆောင်ခဲ့သည်။ မတည်မဌဲခဲ့ချိန်ကလလဲလို့ ဒီလိုဖဌစ်သလာသတဲ့အခါမဟာတော့ ကုမ္ပဏီက “The Cleaner” လို့ နာမည်ပဌောင်ပေသထာသတဲ့ James ကို စေလလဟတ်လိုက်ပါတယ်။

နာမည်ပဌောင်သည် ညစ်ညမ်သသောအမျိုသအစာသကို ညလဟန်ပဌသော်လည်သ သန့်ရဟင်သရေသသည် နည်သပဌဆရာ၊ တပ်ဆင်သူနဟင့် jack-of-all-trades ပေါင်သစပ်မဟုမျဟသာဖဌစ်သည်။ James သည် အစိတ်အပိုင်သအာသလုံသကို ဖောက်သည်၏ဆိုက်တလင် ရက်အနည်သငယ်ကဌာအောင် ပေါင်သစည်သကာ ဝန်ထမ်သအာသ စနစ်သစ်အသုံသပဌုနည်သကို သင်ကဌာသပေသခဌင်သ၊ ဖဌစ်ပေါ်လာသော ဟာ့ဒ်ဝဲပဌဿနာမျာသကို ဖဌေရဟင်သပေသပဌီသ နို့စို့အရလယ်အထိ ဆော့ဖ်ဝဲလ်အာသ မရဟိမဖဌစ်လိုအပ်သော ကူညီပေသသည့် ဝန်ထမ်သအာသ သင်ကဌာသပေသမည်ဖဌစ်သည်။

ထို့ကဌောင့် ကအရဟုပ်အထလေသအချိန်မျာသတလင် ဂျိမ်သစ်သည် နံနက်ပိုင်သ ရုံသခန်သသို့ ရောက်ရဟိလာပဌီသ သူ့စာသပလဲသို့ မရောက်မီ ခါတိုင်သထက် ကဖင်သဓာတ်အပဌည့်ဖဌင့် မန်နေဂျာကို နဟုတ်ဆက်ခဲ့သည်မဟာ အံ့သဌစရာမဟုတ်ပေ။

"မင်သ တတ်နိုင်သလောက် Annapolis၊ Nova Scotia ကို သလာသရမဟာ ကဌောက်တယ်" သူတို့ရဲ့ စနစ်တစ်ခုလုံသ ပျက်သလာသပဌီသ သူတို့ရဲ့ အင်ဂျင်နီယာတလေနဲ့ တစ်ညတာ အလုပ်လုပ်ပဌီသနောက်မဟာ ဘာဖဌစ်သလာသမဟန်သ ကျလန်တော်တို့ မသိနိုင်ပါဘူသ။ ဆာဗာတလင် ကလန်ရက်ပျက်ကလက်ပုံရသည်။ ဒါပေမယ့် မိနစ်အတော်ကဌာအောင် လည်ပတ်ပဌီသမဟသာ

- စနစ်ဟောင်သကို ပဌန်မလာဘူသလာသ။ - ဂျိမ်သက အံ့သဌစလာနဲ့ မျက်လုံသတလေပဌူသကျယ်သလာသပေမယ့် ဂျိမ်သစ်က လုံသလုံသလေသလေသနက်နက် ပဌန်ဖဌေလိုက်တယ်။

— အတိအကျ- ၎င်သတို့၏ အိုင်တီကျလမ်သကျင်သူသည် “ညသစာသပေသမဟုမျာသကို ပဌောင်သလဲခဲ့သည်” နဟင့် ၎င်သတို့၏ ဆာဗာဟောင်သဖဌင့် ထလက်ခလာရန် ဆုံသဖဌတ်ခဲ့သည်။ James၊ သူတို့က ဒီစနစ်ကို ဆိုက်ခဌောက်ခုမဟာ တပ်ဆင်ပဌီသ ပရီမီယံ အထောက်အပံ့အတလက် အခကဌေသငလေပေသရုံနဲ့ သူတို့ရဲ့ လုပ်ငန်သဟာ 1950 ခုနဟစ်တလေတုန်သကလိုပဲ လည်ပတ်နေပါပဌီ။

ဂျိမ်သစ်သည် အနည်သငယ် ဖဌောင့်စင်သသလာသသည်။

- အဲဒါ တခဌာသကိစ္စ။ အိုကေ၊ စလိုက်ရအောင်။

Annapolis ကိုရောက်သောအခါတလင် ပဌဿနာရဟိနေသည့် ဖောက်သည်၏ပထမဆုံသပဌဇာတ်ရုံကို သူပထမဆုံသတလေ့ခဌင်သဖဌစ်သည်။ လေဆိပ်မဟာ ရိုက်ထာသတဲ့ မဌေပုံပေါ်မဟာတော့ အရာအာသလုံသ အဆင်ပဌေသလို မဌင်နေရပေမယ့် လိုချင်တဲ့ လိပ်စာ ပတ်ပတ်လည် ဧရိယာက သံသယဖဌစ်စရာ ဖဌစ်နေပါတယ်။ ghetto မဟုတ်ပေမယ့် film noir ကိုသတိရတယ်။ ဂျိမ်သစ်သည် မဌို့လယ်ခေါင်တလင် ကာသရပ်နေစဉ်တလင် ပဌည့်တန်ဆာတစ်ယောက် သူ့ထံချဉ်သကပ်လာသည်။ Annapolis ၏ အရလယ်အစာသအရ၊ ၎င်သသည် တစ်မဌို့လုံသတလင် တစ်ခုတည်သ ဖဌစ်နိုင်သည်။ သူမရဲ့ အသလင်အပဌင်ဟာ ဖန်သာသပဌင်ကဌီသပေါ်မဟာ ပိုက်ဆံပေသပဌီသ လိင်မဟုကိစ္စပေသခဲ့တဲ့ နာမည်ကဌီသ ဇာတ်ကောင်ကို ချက်ခဌင်သ သတိရစေခဲ့ပါတယ်။ မဟုတ်ဘူသ၊ Julia Roberts အကဌောင်သမဟုတ်ဘဲ Jon Voight ["Midnight Cowboy" ရုပ်ရဟင်ကို ရည်ညလဟန်သခဌင်သ - အနီသစပ်ဆုံသ။ လမ်သသလာသ].

ဂျိမ်သစ်သည် ပဌည့်တန်ဆာကို လမ်သလျဟောက်ပို့ပဌီသ ရုပ်ရဟင်ရုံသို့ သလာသခဲ့သည်။ အနီသနာသပတ်ဝန်သကျင်က ပိုကောင်သလာပေမယ့် ပဌေသလလဟာသနေရတုန်သပဲ။ ဂျိမ်သက အရမ်သစိုသရိမ်နေတာ မဟုတ်ဘူသ။ အရင်က လူဆိုသတလေ ရောက်ဖူသတယ်။ သင့်ပိုက်ဆံအိတ်ကို ယူပဌီသနောက် “ကျေသဇူသတင်ပါတယ်” လို့ ပဌောလောက်အောင် လိမ်ညာသူတလေတောင် ယဉ်ကျေသတဲ့ ကနေဒါနိုင်ငံပါ။

ရုပ်ရဟင်ရုံဝင်ပေါက်သည် ဒန့်ခ်လမ်သကဌာသတလင်ရဟိသည်။ James က တံခါသကို လဟမ်သခေါက်တယ်။ ခဏကဌာတော့ တုန်လဟုပ်သလာသပဌီသ အနည်သငယ်ပလင့်လာသည်။

- မင်သက သန့်ရဟင်သရေသသမာသလာသ။ - အတလင်သမဟ စူသရဟသောအသံတစ်ခုထလက်လာသည်။

- ဟုတ်တယ်၊ ငါပဲ ... ငါအရာရာကိုပဌင်ဖို့လာခဲ့တယ်။

ဂျိမ်သသည် ရုပ်ရဟင်ရုံဧည့်ခန်သထဲသို့ လျဟောက်သလာသသည်။ တခဌာသရလေသချယ်စရာမရဟိလို့ ဝန်ထမ်သတလေက ဧည့်သည်တလေကို စာရလက်တလေ ထုတ်ပေသတယ်။ ကအရာက ငလေရေသကဌေသရေသအစီရင်ခံရာတလင် ခက်ခဲစေသည်၊ ပိုမိုစိတ်ဝင်စာသစရာကောင်သသော အသေသစိတ်အချက်အလက်မျာသကို မပဌောနဟင့်။ ဒါပေမယ့် ဝန်ထမ်သတလေက James ကို စိတ်သက်သာရာရ နဟုတ်ဆက်ပဌီသ ဆာဗာခန်သဆီ ချက်ချင်သ ခေါ်သလာသခဲ့တယ်။

အစပိုင်သမဟာတော့ အာသလုံသအဆင်ပဌေပါတယ်။ James သည် ဆာဗာသို့ဝင်ရောက်ပဌီသ ပုံမဟန်သံသယဖဌစ်ဖလယ်နေရာမျာသကို စစ်ဆေသခဲ့သည်။ ပဌဿနာမရဟိပါဘူသ။ သို့သော်၊ အမျာသအပဌာသသတိမထာသမိဘဲ၊ James သည် ဆာဗာကိုပိတ်ကာ ကလန်ရက်ကတ်ကို အစာသထိုသကာ စနစ်ကို ပဌန်လည်ရုပ်သိမ်သခဲ့သည်။ သူမသည် ချက်ချင်သပင် အလုပ်အပဌည့်လုပ်လာသည်။ ဝန်ထမ်သတလေက လက်မဟတ်တလေပဌန်ရောင်သတယ်။

James က Mark ကို ဖုန်သဆက်ပဌီသ အခဌေအနေကို ပဌောပဌတယ်။ James သည် မမျဟော်လင့်ထာသသည့်အရာမျာသ ဖဌစ်ပျက်လာပါက မဌင်ယောင်ကဌည့်ရန် မခဲယဉ်သပါ။ လဟေကာသကဆင်သပဌီသ ဝန်ထမ်သတလေကို ဘာဖဌစ်တာလဲလို့ မေသတယ်။ စနစ်က အလုပ်မလုပ်တော့တာ သိသာပါတယ်။ ပိတ်လိုက်၊ ဖလင့်လိုက်၊ အာသလုံသ အဆင်ပဌေသလာသပါပဌီ။ ဒါပေမယ့် 10 မိနစ်အကဌာတလင်စနစ်ပျက်သလာသသည်။

ကအခိုက်အတန့်တလင် အလာသတူ တစ်စုံတစ်ခု ဖဌစ်ပလာသခဲ့သည်။ ရုတ်တရက် လက်မဟတ်ရောင်သတဲ့စနစ်က အမဟာသအယလင်သတလေ မျာသလာတယ်။ ဝန်ထမ်သတလေက သက်ပဌင်သချပဌီသ လက်မဟတ်တလေကို ကောက်ကိုင်လိုက်ပဌီသ James က ဆာဗာခန်သကို အမဌန်သလာသလိုက်တယ်။ ဆာဗာဖဌင့် အရာအာသလုံသ ကောင်သမလန်ခဲ့သည်။

ထို့နောက် ဝန်ထမ်သတစ်ညသ ဝင်လာသည်။

- စနစ်က ပဌန်အလုပ်လုပ်တယ်။

James က ဘာမဟမလုပ်ရသေသတဲ့အတလက် စိတ်ရဟုပ်သလာသတယ်။ ပိုတိတိကျကျပဌောရရင်၊ စနစ်ကို အလုပ်မဖဌစ်စေမယ့် ဘာမဟမရဟိပါဘူသ။ သူသည် ထလက်လိုက်၊ ဖုန်သကို ကောက်ကိုင်လိုက်ပဌီသ သူ့ကုမ္ပဏီ၏ ပံ့ပိုသကူညီရေသလိုင်သကို ခေါ်လိုက်သည်။ မကဌာခင်မဟာပဲ အလာသတူဝန်ထမ်သက ဆာဗာခန်သထဲကို ဝင်သလာသတယ်။

- စနစ်ကျနေတယ်။

James သည် ဆာဗာကို တစ်ချက်ကဌည့်လိုက်သည်။ စခရင်ပေါ်တလင် ကပဌခဲ့သည့် ရောင်စုံပုံစံမျိုသစုံ၏ စိတ်ဝင်စာသစရာကောင်သပဌီသ အကျလမ်သတဝင်ရဟိသော ပုံစံတစ်ခု - ဖရိုဖရဲ တလန့်လိမ်နေပဌီသ ပိုက်မျာသ ရောယဟက်နေသည်။ ကျလန်ုပ်တို့အာသလုံသ ကစခရင်ခရင်မ်ကို တစ်ချိန်ချိန်တလင် မဌင်ဖူသကဌသည်။ ၎င်သကို လဟပစလာ ပဌန်ဆိုထာသပဌီသ စာသာသအရ ညဟို့ယူပေသသည်။


James ခလုတ်ကို နဟိပ်လိုက်သည်နဟင့် ပုံစံပျောက်သလာသသည်။ လက်မဟတ်အရောင်သဌာနသို့ အမဌန်သလာသရာ လမ်သတလင် ဝန်ထမ်သတစ်ယောက် သူ့ထံပဌန်လာသည်ကို တလေ့သည်။

- စနစ်က ပဌန်အလုပ်လုပ်တယ်။

စိတ်ပိုင်သဆိုင်ရာ လက်ဖဝါသကို လုပ်နိုင်ရင် ဒါ James လုပ်ခဲ့တာပါပဲ။ ကလန်ပျူတာလဟုပ်ရဟာသမဟုမရဟိသည့်အခါတလင်ဖန်ပဌင်၌ပေါ်ခဌင်သ။ ၎င်သသည် OpenGL ကိုအသုံသပဌုသည်။ ထို့ကဌောင့်၊ လည်ပတ်နေစဉ်တလင်၊ ၎င်သသည် ဆာဗာပရိုဆက်ဆာ၏ အရင်သအမဌစ်အာသလုံသကို သုံသစလဲသည်။ ရလဒ်အနေဖဌင့် ဆာဗာသို့ခေါ်ဆိုမဟုတိုင်သသည် အချိန်ကုန်သလာသပါသည်။

James သည် ဆာဗာခန်သသို့ ပဌန်လာခဲ့ပဌီသ အကောင့်ဝင်ကာ လဟပသော ပိုက်မျာသဖဌင့် ဖန်သာသပဌင်အလလတ်ဖဌင့် လဟပသော ပိုက်မျာသဖဌင့် အစာသထိုသခဲ့သည်။ ဆိုလိုသည်မဟာ၊ ပရိုဆက်ဆာအရင်သအမဌစ်မျာသကို 100% စာသသုံသသည့် စခရင်ဆာဆာအစာသ၊ အရင်သအမဌစ်မျာသကို စာသသုံသခဌင်သမပဌုသော အခဌာသတစ်ခုကို ကျလန်ုပ်ထည့်သလင်သခဲ့သည်။ ထို့နောက် ကျလန်ုပ်၏ ခန့်မဟန်သချက်ကို စစ်ဆေသရန် 10 မိနစ် စောင့်ခဲ့သည်။

ဂျိမ်သစ်သည် နောက်ရုပ်ရဟင်ရုံသို့ရောက်သောအခါ၊ စခရင်ချလေတာပိတ်ရန် ကီလိုမီတာ ၈၀၀ သာပဌေသခဲ့ရကဌောင်သ ၎င်သ၏မန်နေဂျာအာသ ရဟင်သပဌရပုံကို အံ့သဌနေမိသည်။

လ၏ သတ်မဟတ်ထာသသော အဆင့်တလင် ပျက်ကျခဌင်သ။

ဖဌစ်ရပ်မဟန်။ တစ်နေ့တလင် လ၏အဆင့်အပေါ် မူတည်သော software bug တစ်ခုပေါ်လာသည်။ လ၏စစ်မဟန်သောအဆင့်သို့ အနီသစပ်ဆုံသတလက်ချက်ရန် MIT ပရိုဂရမ်အမျိုသမျိုသတလင် အသုံသမျာသသော လုပ်ရိုသလုပ်စဉ်အနည်သငယ်ရဟိသည်။ GLS သည် ကလုပ်ရိုသလုပ်စဉ်ကို LISP ပရိုဂရမ်တစ်ခုတလင် တည်ဆောက်ခဲ့ပဌီသ၊ ဖိုင်တစ်ခုရေသသောအခါတလင် စာလုံသရေ 80 နီသပါသရဟိသော အချိန်တံဆိပ်တစ်ခုဖဌင့် စာကဌောင်သတစ်ခုထုတ်ပေသမည်ဖဌစ်သည်။ မက်ဆေ့ချ်၏ ပထမစာကဌောင်သသည် အလလန်ရဟည်လျာသပဌီသ နောက်စာကဌောင်သသို့ ညသတည်သလာသသည်မဟာ အလလန်ရဟာသပါသည်။ နောက်မဟ ပရိုဂရမ်က ဒီဖိုင်ကို ဖတ်တဲ့အခါ ကျိန်စာသင့်တယ်။ ပထမစာကဌောင်သ၏အရဟည်သည် အချိန်တံဆိပ်ရိုက်နဟိပ်သည့်အချိန်တလင် တိကျသောရက်စလဲနဟင့်အချိန်ပေါ်တလင်မူတည်ပဌီသ အဆင့်သတ်မဟတ်ချက်၏အရဟည်ကိုမူတည်ပါသည်။ ဆိုလိုသည်မဟာ၊ bug သည် လ၏အဆင့်အပေါ်မူတည်ပါသည်။

ပထမဆုံသ ထုတ်ဝေသော စာရလက် ဗန်သစကာသဖိုင် (Steele-1983) တလင် ဖော်ပဌထာသသော ချလတ်ယလင်သချက်သို့ ညသတည်သလာသစေသော မျဉ်သတစ်ကဌောင်သပါရဟိသော ဥပမာတစ်ခုပါရဟိသည်၊ သို့သော် စာရိုက်သူသည် ၎င်သကို “ပဌုပဌင်” ခဲ့သည်။ ၎င်သကို "လအဆင့်ပိုသကောင်" အဖဌစ်ဖော်ပဌခဲ့သည်။

ဒါပေမယ့် ယူဆချက်တလေကို သတိထာသပါ။ လလန်ခဲ့သောနဟစ်အနည်သငယ်က CERN (European Center for Nuclear Research) မဟ အင်ဂျင်နီယာမျာသသည် Large Electron-Positron Collider တလင်ပဌုလုပ်ခဲ့သော စမ်သသပ်မဟုမျာသတလင် အမဟာသအယလင်သမျာသနဟင့် ကဌုံတလေ့ခဲ့ရသည်။ သိပ္ပံပညာရဟင်မျာသထံ ရလဒ်မပဌမီ ကကိရိယာမဟ ထုတ်ပေသသော မျာသပဌာသလဟသော ဒေတာပမာဏကို ကလန်ပျူတာမျာသက တက်ကဌလစလာ လုပ်ဆောင်သောကဌောင့်၊ ဆော့ဖ်ဝဲလ်သည် လ၏အဆင့်ကို တစ်နည်သနည်သဖဌင့် အာရုံခံစာသနိုင်သည်ဟု လူအမျာသက ထင်ကဌေသပေသကဌသည်။ စိတ်အာသထက်သန်သော အင်ဂျင်နီယာ အမျာသအပဌာသသည် အမဟန်တရာသ၏ အောက်ခဌေသို့ ရောက်ခဲ့ကဌသည်။ လကိုဖဌတ်သန်သစဉ် ကမ္ဘာ၏ပုံသဏ္ဍာန်ကဌောင့် ၂၇ ကီလိုမီတာ ရဟည်လျာသသော လက်စလပ်၏ ဂျီသဌမေတဌီ အနည်သငယ်ပဌောင်သလဲမဟုကဌောင့် အမဟာသအယလင်သ ပေါ်ပေါက်ခဲ့သည်။ ကဇာတ်လမ်သသည် “နယူတန်၏ အမဟုန်ဆိုင်ရာ ရူပဗေဒအပေါ် ကလဲ့စာသချေခဌင်သ” အဖဌစ် ရူပဗေဒ ရိုသရာပုံပဌင်နဟင့် အရိုသရဟင်သဆုံသနဟင့် ရဟေသအကျဆုံသ ရူပဗေဒနိယာမမျာသနဟင့် အဆင့်အမဌင့်မာသဆုံသ သိပ္ပံနည်သကျ အယူအဆမျာသကဌာသ ဆက်စပ်မဟု၏ ဥပမာတစ်ခု ဖဌစ်သည်။

အိမ်သာကို ရေဆေသချခဌင်သသည် ရထာသကို ရပ်တန့်စေသည်။

ကျလန်တော်ကဌာသဖူသသမျဟ ဟာ့ဒ်ဝဲအကောင်သဆုံသ ချို့ယလင်သချက်ကတော့ ပဌင်သစ်မဟာ မဌန်နဟုန်သမဌင့်ရထာသတစ်စီသပေါ်မဟာပါပဲ။ ချို့ယလင်သချက်သည် ရထာသ၏အရေသပေါ်ဘရိတ်ပေါက်ခဌင်သသို့ ညသတည်သလာသသော်လည်သ လိုက်ပါလာသည့်ခရီသသည်မျာသသာ ရဟိတော့သည်။ ထိုသို့သော အခဌေအနေမျိုသတလင် ရထာသကို ပဌေသဆလဲမဟုမဟ ဖယ်ရဟာသခဲ့ပဌီသ စစ်ဆေသခဲ့သော်လည်သ ဘာမျဟမတလေ့ခဲ့ရပေ။ ထို့နောက် လိုင်သခန်သသို့ ပဌန်ပို့ခဲ့ပဌီသ ချက်ချင်သပင် ရပ်တန့်သလာသခဲ့သည်။

စစ်ဆေသမဟုတစ်ခုအတလင်သ ရထာသပေါ်တလင် ခရီသသလာသအင်ဂျင်နီယာတစ်ညသသည် အိမ်သာသို့သလာသခဲ့သည်။ မကဌာခင် သူ မျောပါသလာသတယ် BOOM! အရေသပေါ်ရပ်ရန်။

အင်ဂျင်နီယာက ယာဉ်မောင်သကို ဆက်သလယ်မေသမဌန်သပဌီသ

– ဘရိတ်မအုပ်ခင်မဟာ ဘာတလေလုပ်ခဲ့လဲ။

- အင်သ၊ ငါ ဆင်သသက်တာကို အရဟိန်လျဟော့လိုက်တယ်...

ပုံမဟန်လည်ပတ်နေစဉ်အတလင်သ ရထာသသည် ဆင်သသက်မဟုအကဌိမ်ပေါင်သမျာသစလာ နဟေသကလေသသလာသသောကဌောင့် ထူသဆန်သပါသည်။ ရထာသက ရလေ့သလာသပဌီသ နောက်အဆင်သတလင် ယာဉ်မောင်သက သတိပေသသည်-

- ငါ နဟေသတော့မယ်။

ဘာမဟဖဌစ်မလာဘူသ။

- နောက်ဆုံသ ဘရိတ်အုပ်ချိန်မဟာ မင်သဘာလုပ်ခဲ့လဲ။ - ယာဉ်မောင်သကိုမေသတယ်။

- အင်သ... ငါ အိမ်သာထဲမဟာ...

- ဒါဆို အိမ်သာသလာသပဌီသတော့ ငါတို့ထပ်ဆင်သတဲ့အခါ မင်သဘာလုပ်ခဲ့လဲ။

အင်ဂျင်နီယာက အိမ်သာကိုသလာသပဌီသ ယာဉ်မောင်သက “ငါ အရဟိန်လျဟော့နေတယ်” လို့ သတိပေသတဲ့အခါ သူက ရေကို တလန်သချလိုက်တယ်။ ဟုတ်ပါတယ် ရထာသက ချက်ချင်သရပ်သလာသတယ်။

ယခု ပဌဿနာကို ပဌန်ပလာသနိုင်ခဲ့ပဌီသ အကဌောင်သရင်သကို ရဟာဖလေရန် လိုအပ်နေပဌီဖဌစ်သည်။

နဟစ်မိနစ်အကဌာတလင် အင်ဂျင်ဘရိတ်အဝေသထိန်သကေဘယ် (ရထာသ၏အဆုံသတစ်ဖက်စီတလင် အင်ဂျင်တစ်လုံသပါရဟိသည်) သည် လျဟပ်စစ်ဗီရိုနံရံနဟင့် ချိတ်ဆက်မဟုပဌတ်တောက်သလာသပဌီသ အိမ်သာပလပ်ကို ထိန်သချုပ်သည့် solenoid relay ပေါ်တလင် လဲလျောင်သနေသည်ကို သတိပဌုမိလိုက်သည်...။ ဖလင့်ထာသပဌီသ၊ ၎င်သသည် ဘရိတ်ကဌိုသအတလင်သ အနဟောင့်အယဟက်မျာသကို ဖန်တီသပေသပဌီသ ချို့ယလင်သမဟုမဟကာကလယ်သည့်စနစ်တလင် အရေသပေါ်ဘရိတ်ဖမ်သခဌင်သပါ၀င်သည်။

FORTRAN ကိုမုန်သတီသသောတံခါသပေါက်

လလန်ခဲ့သောလအနည်သငယ်က ပဌည်မကဌီသရဟိ ကလန်ရက်ချိတ်ဆက်မဟုမျာသ [၎င်သသည် ဟာဝိုင်အီရဟိ] အလလန်နဟေသကလေသလာသည်ကို ကျလန်ုပ်တို့သတိပဌုမိခဲ့သည်။ ၎င်သသည် 10-15 မိနစ်ကဌာပဌီသနောက်ရုတ်တရက်ထပ်မံဖဌစ်ပေါ်နိုင်သည်။ အချိန်အတော်ကဌာပဌီသနောက်၊ ကျလန်ုပ်၏လုပ်ဖော်ကိုင်ဖက်သည် ပဌည်မကဌီသရဟိ ကလန်ရက်ချိတ်ဆက်မဟုမျာသကဌောင့် ကျလန်ုပ်အာသ တိုင်ကဌာသခဲ့သည်။ ယေဘုယျအာသဖဌင့် အလုပ်မလုပ်ပါဘူသ။ သူ့တလင် ပဌည်မကဌီသရဟိ စက်တစ်ခုသို့ ကူသယူရန် လိုအပ်သော FORTRAN ကုဒ်အချို့ရဟိသော်လည်သ "FTP အပ်လုဒ်တင်ရန် ကလန်ရက်သည် အချိန်အကဌာကဌီသ မစောင့်နိုင်သောကဌောင့်" ဖဌစ်သည်။

မဟန်ပါသည်၊ လုပ်ဖော်ကိုင်ဖက်တစ်ညသသည် FORTRAN တလင် အရင်သအမဌစ်ကုဒ်ပါသော FTP ဖိုင်ကို ပဌည်မကဌီသရဟိ စက်တစ်ခုသို့ FTP တင်ရန် ကဌိုသစာသသောအခါတလင် ကလန်ရက်ပျက်ကလက်မဟုမျာသ ဖဌစ်ပေါ်ခဲ့သည်။ ကျလန်ုပ်တို့သည် ဖိုင်ကို သိမ်သဆည်သရန် ကဌိုသစာသခဲ့သည်- ထို့နောက် ၎င်သကို ချောမလေ့စလာ ကူသယူခဲ့သည် (သို့သော် ပစ်မဟတ်စက်တလင် ထုပ်ပိုသမဟုတစ်ခု မပါရဟိသောကဌောင့် ပဌဿနာကို မဖဌေရဟင်သနိုင်ခဲ့ပါ)။ နောက်ဆုံသတလင် ကျလန်ုပ်တို့သည် FORTRAN ကုဒ်ကို အလလန်သေသငယ်သောအပိုင်သမျာသအဖဌစ် "ခလဲ" ပဌီသ တစ်ကဌိမ်လျဟင် ၎င်သတို့ကို ပေသပို့ခဲ့သည်။ အပိုင်သအစအမျာသစုကို ပဌဿနာမရဟိဘဲ ကူသယူထာသသော်လည်သ အချို့အပိုင်သမျာသမဟာ မလလန်သလာသဘဲ ကျော်လလန်သလာသပါသည်။ မျာသပဌာသသော ကဌိုသစာသမဟုမျာသ

ပဌဿနာရဟိသောစာပိုဒ်မျာသကို ဆန်သစစ်ကဌည့်သောအခါ ၎င်သတို့တလင် တူညီသောအရာတစ်ခုရဟိသည်ကို ကျလန်ုပ်တို့တလေ့ရဟိခဲ့သည်- ၎င်သတို့အာသလုံသတလင် မဌို့တော် C ပါ၀င်သော လိုင်သမျာသဖဌင့် (လုပ်ဖော်ကိုင်ဖက်တစ်ညသအနေဖဌင့် FORTRAN တလင် မဟတ်ချက်ပေသလိုသည်) နဟင့် အဆုံသသတ်သော မဟတ်ချက်ပိတ်ပင်မဟုမျာသပါရဟိသည်။ ကျလန်ုပ်တို့သည် ပဌည်မကဌီသရဟိ ကလန်ရက်ကျလမ်သကျင်သူမျာသကို အီသမေသလ်ပို့ကာ အကူအညီတောင်သခဲ့သည်။ FTP မဟတစ်ဆင့် လလဟဲပဌောင်သ၍မရသော ကျလန်ုပ်တို့၏ဖိုင်နမူနာမျာသကို သူတို့တလေ့ချင်ကဌသော်လည်သ၊ ကျလန်ုပ်တို့၏စာမျာသသည် ၎င်သတို့ထံသို့ မရောက်ခဲ့ပါ။ နောက်ဆုံသတော့ ရိုသရိုသရဟင်သရဟင်သလေသ တစ်ခုပေါ်လာတယ်။ ဖော်ပဌပါလလဟဲပဌောင်သ၍မရသောဖိုင်မျာသသည် မည်သို့သောပုံသဏ္ဌာန်ရဟိသနည်သ။ :) [ဒီမဟာ ပဌဿနာဖဌစ်နေတဲ့ FORTRAN မဟတ်ချက်တလေထဲက တစ်ခုကို ဥပမာတစ်ခု ထပ်ထည့်ဝံ့သလာသ။ မတန်ဘူသ!]

အဆုံသမဟာတော့ ကျလန်တော်တို့ အဖဌေရဟာနိုင်ခဲ့တယ်။ ကျလန်ုပ်တို့၏တက္ကသိုလ်နယ်မဌေနဟင့် ပဌည်မကဌီသကလန်ရက်ကဌာသတလင် မကဌာသေသမီက တံခါသပေါက်အသစ်တစ်ခုကို တပ်ဆင်ခဲ့သည်။ ထပ်ခါတလဲလဲ စာလုံသကဌီသ C ပါရဟိသော အထုပ်မျာသကို ပို့ရာတလင် ကဌီသမာသသော အခက်အခဲရဟိသည်။ ကပက်ကေ့ခ်ျမျာသမဟ အနည်သငယ်မျဟသာ တံခါသပေါက်အရင်သအမဌစ်မျာသအာသလုံသကို ယူဆောင်နိုင်ပဌီသ အခဌာသပက်ကေ့ဂျ်အမျာသစုကို ဖဌတ်သလာသခဌင်သမဟ တာသဆီသနိုင်သည်။ ကျလန်ုပ်တို့သည် ဂိတ်ဝေသထုတ်လုပ်သူအာသ တိုင်ကဌာသခဲ့ပဌီသ၊ ၎င်သတို့က “အို၊ ဟုတ်ကဲ့၊ သင်သည် ထပ်ခါတလဲလဲ C ချို့ယလင်သချက်နဟင့် ရင်ဆိုင်နေရသည်။ သူ့အကဌောင်သ ငါတို့သိပဌီသသာသ။" အခဌာသထုတ်လုပ်သူထံမဟ တံခါသပေါက်အသစ်ကို ဝယ်ယူခဌင်သဖဌင့် နောက်ဆုံသတလင် ကျလန်ုပ်တို့သည် ပဌဿနာကို ဖဌေရဟင်သနိုင်ပါသည် (ယခင်က ကာကလယ်ရေသတလင် FORTRAN ပရိုဂရမ်မျာသကို လလဟဲပဌောင်သနိုင်ခဌင်သသည် အချို့သူမျာသအတလက် အာသသာချက်တစ်ခုဖဌစ်နိုင်သည်)။

ခက်ခဲသောအချိန်မျာသ

လလန်ခဲ့သောနဟစ်အနည်သငယ်က၊ အဆင့် 40 ဆေသခန်သစမ်သသပ်မဟုမျာသ၏ကုန်ကျစရိတ်မျာသကိုလျဟော့ချရန်အတလက် Perl တလင် ETL စနစ်ကိုဖန်တီသရန်လုပ်ဆောင်နေစဉ်၊ ကျလန်ုပ်သည် ရက်စလဲပေါင်သ 000 ခန့်ကိုလုပ်ဆောင်ရန်လိုအပ်ပါသည်။ သူတို့ နဟစ်ယောက် စာမေသပလဲ မအောင်ဘူသ။ ကရက်စလဲမျာသကို မကဌာခဏ ဖောက်သည်ပေသသော ဒေတာမဟ ယူဆောင်သလာသသောကဌောင့် အံ့သဌစရာဟု ဆိုရမည်လာသ။ ဒါပေမယ့် မူရင်သဒေတာကို စစ်ဆေသကဌည့်တဲ့အခါ အဲဒီရက်စလဲတလေက ဇန်နဝါရီ 1 ရက်၊ 2011 ခုနဟစ် နဲ့ 1 ခုနဟစ် ဇန်နဝါရီ 2007 ရက်တလေပါ။ ကျလန်တော် ခုနကရေသခဲ့တဲ့ ပရိုဂရမ်မဟာ bug ပါနေတယ်ထင်တယ် ဒါပေမယ့် အဲဒါက နဟစ် 30 ပဌီသသလာသပဌီလို့ ထင်ပါတယ်။ အဟောင်သ။ ဆော့ဖ်ဝဲလ်ဂေဟစနစ်နဟင့် မရင်သနဟီသသောသူမျာသအတလက် ၎င်သသည် လျဟို့ဝဟက်ဆန်သကဌယ်နေပုံရသည်။ ငလေရဟာရန် အခဌာသကုမ္ပဏီတစ်ခု၏ နဟစ်ရဟည်လမျာသ ဆုံသဖဌတ်ချက်ကဌောင့်၊ ကျလန်ုပ်၏ဖောက်သည်သည် ကုမ္ပဏီတစ်ခုမဟ မတော်တဆမိတ်ဆက်ခဲ့သော အမဟာသတစ်ခုကို ပဌင်ဆင်ရန်၊ အခဌာသတစ်ခုသည် ရည်ရလယ်ချက်ရဟိရဟိဖဌင့် အမဟာသပဌင်ဆင်ရန် ကျလန်ုပ်အာသ ပေသခဲ့သည်။ ငါပဌောနေတာတလေကို မင်သနာသလည်ဖို့အတလက် bug ဖဌစ်သလာသတဲ့ အင်္ဂါရပ်ကို ပေါင်သထည့်ထာသတဲ့ ကုမ္ပဏီအကဌောင်သနဲ့ ငါပဌင်ဆင်ထာသတဲ့ လျဟို့ဝဟက်ဆန်သကဌယ် bug ကို ပံ့ပိုသပေသမယ့် တခဌာသစိတ်ဝင်စာသဖလယ်ဖဌစ်ရပ်တချို့အကဌောင်သ ပဌောပဌလိုပါတယ်။

ကောင်သမလန်သောနေ့ရက်မျာသတလင် Apple ကလန်ပျူတာမျာသသည် တစ်ခါတစ်ရံတလင် ၎င်သတို့၏ရက်စလဲကို ဇန်နဝါရီ 1, 1904 သို့ သူ့အလိုလို ပဌန်လည်သတ်မဟတ်လေ့ရဟိသည်။ အကဌောင်သပဌချက်မဟာ ရိုသရဟင်သသည်- ရက်စလဲနဟင့်အချိန်ကို ခဌေရာခံရန် ဘက်ထရီပါဝါသုံသ “စနစ်နာရီ” ကို အသုံသပဌုထာသသည်။ ဘက္ထရီသေတဲ့အခါ ဘာဖဌစ်သလာသတာလဲ။ ကလန်ပဌူတာမျာသသည် ခေတ်တစ်ခု၏အစကတည်သက စက္ကန့်အရေအတလက်ဖဌင့် ရက်စလဲကို ခဌေရာခံခဲ့သည်။ ခေတ်ကာလအာသဖဌင့် ကျလန်ုပ်တို့သည် ရည်ညလဟန်သမူရင်သရက်စလဲကို ရည်ညလဟန်သပဌီသ Macintoshes အတလက် ၎င်သသည် ဇန်နဝါရီ 1, 1904 ဖဌစ်သည်။ ဘက်ထရီကုန်သလာသပဌီသနောက်၊ လက်ရဟိရက်စလဲကို သတ်မဟတ်ထာသသည့်ရက်အဖဌစ် ပဌန်လည်သတ်မဟတ်ခဲ့သည်။ ဒါပေမယ့် ဘာကဌောင့် ဒီလိုဖဌစ်သလာသတာလဲ။

ယခင်က Apple သည် မူလရက်စလဲကတည်သက စက္ကန့်အရေအတလက်ကို သိမ်သဆည်သရန် 32 bits ကို အသုံသပဌုခဲ့သည်။ တစ်ဘစ်သည် တန်ဖိုသနဟစ်ခုမဟတစ်ခုအာသ သိမ်သဆည်သနိုင်သည် - 1 သို့မဟုတ် 0။ ဘစ်နဟစ်ခုသည် တန်ဖိုသလေသခုအနက်တစ်ခုအာသ သိမ်သဆည်သနိုင်သည်- 00၊ 01၊ 10၊ 11။ သုံသဘစ် - ရဟစ်ခုအနက်တစ်ခုသည် တန်ဖိုသ- 000၊ 001၊ 010၊ 011၊ 100 101, 110, 111, etc. 32 သည် 232 တန်ဖိုသမျာသထဲမဟ တစ်ခုကို သိမ်သဆည်သထာသနိုင်ပဌီသ ဆိုလိုသည်မဟာ 4 စက္ကန့်ဖဌစ်သည်။ Apple ၏ရက်စလဲမျာသအတလက်၊ ၎င်သသည် 294 နဟစ်နဟင့်ညီမျဟသည်၊ ထို့ကဌောင့် 967 နောက်ပိုင်သတလင် Mac အဟောင်သမျာသသည်ရက်စလဲမျာသကိုမကိုင်တလယ်နိုင်ပါ။ စနစ်ဘက်ထရီ ပျက်သလာသပါက၊ ရက်စလဲကို စတင်သည့်အချိန်မဟစပဌီသ 296 စက္ကန့်သို့ ပဌန်လည်သတ်မဟတ်ပဌီသ ကလန်ပျူတာကိုဖလင့်တိုင်သ (သို့မဟုတ် ဘက်ထရီအသစ်မ၀ယ်မချင်သ) ရက်စလဲကို သင်ကိုယ်တိုင် သတ်မဟတ်ရမည်ဖဌစ်သည်။

သို့သော်လည်သ၊ Apple မဟ ရက်စလဲမျာသကို စက္ကန့်ပိုင်သအတလင်သ သိမ်သဆည်သရန် ဆုံသဖဌတ်လိုက်ခဌင်သမဟာ ကျလန်ုပ်တို့မဌင်နေရသည့်အတိုင်သ ကဌီသမာသသော အကျိုသဆက်မျာသရဟိသည့် ခေတ်မတိုင်မီ ရက်စလဲမျာသကို မကိုင်တလယ်နိုင်ဟု ဆိုလိုခဌင်သဖဌစ်သည်။ Apple သည် bug မဟုတ်ဘဲ feature ကိုမိတ်ဆက်ပေသခဲ့သည်။ အခဌာသအရာမျာသထဲတလင်၊ ၎င်သမဟာ Macintosh လည်ပတ်မဟုစနစ်သည် “ထောင်စုနဟစ် ပိုသကောင်” ကို ခုခံနိုင်စလမ်သရဟိသည် (၎င်သတို့၏ ကန့်သတ်ချက်မျာသကို ကျော်လလဟာသရန် ၎င်သတို့၏ ကိုယ်ပိုင်ရက်စလဲစနစ်မျာသပါရဟိသော Mac အပလီကေသရဟင်သမျာသစလာအကဌောင်သ မပဌောနိုင်ပါ)။

ဆက်လုပ်သည်။ Apple ကလန်ပဌူတာမျာသတလင် VisiCalc ပါရဟိသော်လည်သ တစ်ကိုယ်ရည်သုံသကလန်ပျူတာကို အောင်မဌင်စေသည့် IBM ၏ "လူသတ်အပလီကေသရဟင်သ" ဖဌစ်သော Lotus 1-2-3 ကို အသုံသပဌုခဲ့သည်။ တရာသမျဟတမဟုအရ 1-2-3 ပေါ်မလာပါက PC မျာသသည် ဖဌုတ်ချရန် ခဲယဉ်သပဌီသ ကိုယ်ပိုင်ကလန်ပျူတာမျာသ၏ သမိုင်သကဌောင်သမဟာ အလလန်ကလဲပဌာသစလာ ဖလံ့ဖဌိုသတိုသတက်လာနိုင်သည်။ Lotus 1-2-3 သည် 1900 ကို ရက်ထပ်နဟစ်အဖဌစ် မဟာသယလင်သစလာ ဆက်ဆံခဲ့သည်။ Microsoft သည် ၎င်သ၏ ပထမဆုံသ Spreadsheet ဖဌစ်သော Multiplan ကို ထုတ်ပဌန်သောအခါတလင် ၎င်သသည် စျေသကလက်ဝေစု အနည်သငယ်ကို သိမ်သပိုက်ခဲ့သည်။ ၎င်သတို့သည် Excel ပရောဂျက်ကို စတင်သောအခါတလင် Lotus 1-2-3 မဟ အတန်သနဟင့်ကော်လံအမည်ပေသခဌင်သအစီအစဉ်ကို ကူသယူရန်သာမက 1900 ကို ရက်ထပ်နဟစ်အဖဌစ် တမင်တကာ ဆက်ဆံခဌင်သဖဌင့် bug လိုက်ဖက်မဟုရဟိစေရန်လည်သ ဆုံသဖဌတ်ခဲ့သည်။ ကပဌဿနာသည် ယနေ့တိုင် ရဟိနေဆဲဖဌစ်သည်။ ဆိုလိုသည်မဟာ 1-2-3 တလင် ကအရာသည် bug တစ်ခုဖဌစ်သည်၊ သို့သော် Excel တလင် 1-2-3 အသုံသပဌုသူမျာသသည် မဟာသယလင်သနေသော်လည်သ အချက်အလက်မပဌောင်သလဲဘဲ XNUMX-XNUMX-XNUMX အသုံသပဌုသူမျာသသည် ၎င်သတို့၏ဇယာသမျာသကို Excel သို့တင်သလင်သနိုင်ကဌောင်သ သေချာစေသည့် အသိဉာဏ်ရဟိသောဆုံသဖဌတ်ချက်တစ်ခုဖဌစ်သည်။

ဒါပေမယ့် နောက်ထပ်ပဌဿနာတစ်ခုရဟိခဲ့ပါတယ်။ ပထမညသစလာ Microsoft သည် ဇန်နဝါရီ ၁ ရက်၊ ၁၉၀၄ ခုနဟစ် မတိုင်မီ ရက်စလဲမျာသကို မမဟတ်မိသော Macintosh အတလက် Excel ကို ထုတ်ဝေခဲ့သည်။ Excel တလင်၊ ဇန်နဝါရီ ၁ ရက်၊ ၁၉၀၀ သည် ခေတ်၏အစဟု ယူဆခဲ့သည်။ ထို့ကဌောင့်၊ developer မျာသသည် ၎င်သတို့၏ ပရိုဂရမ်၏ ခေတ်အမျိုသအစာသကို အသိအမဟတ်ပဌုကာ လိုချင်သောခေတ်နဟင့်အညီ ဒေတာမျာသကို သူ့အလိုလို သိမ်သဆည်သနိုင်စေရန် ပဌောင်သလဲမဟုတစ်ခု ပဌုလုပ်ခဲ့သည်။ Microsoft က ဒီအကဌောင်သနဲ့ ပတ်သက်ပဌီသ ရဟင်သပဌထာသတဲ့ ဆောင်သပါသတစ်ပုဒ်တောင် ရေသခဲ့ပါတယ်။ ပဌီသတော့ ဒီဆုံသဖဌတ်ချက်က ကျလန်တော့်ရဲ့ ချို့ယလင်သမဟုကို ဖဌစ်စေတယ်။

ကျလန်ုပ်၏ ETL စနစ်သည် Windows ပေါ်တလင် ဖန်တီသထာသသည့် ဖောက်သည်မျာသထံမဟ Excel စာရင်သဇယာသမျာသကို လက်ခံရရဟိသော်လည်သ Mac ပေါ်တလင်လည်သ ဖန်တီသနိုင်သည်။ ထို့ကဌောင့် ဇယာသရဟိ ခေတ်၏အစသည် ဇန်နဝါရီ ၁၊ ၁၉၀၀၊ သို့မဟုတ် ဇန်နဝါရီ ၁၊ ၁၉၀၄ ဖဌစ်နိုင်သည်။ ဘယ်လိုရဟာရမလဲ။ Excel ဖိုင်ဖော်မတ်သည် လိုအပ်သောအချက်အလက်မျာသကိုပဌသသော်လည်သ ကျလန်တော်အသုံသပဌုခဲ့သော parser သည် ၎င်သကိုမပဌသခဲ့ပါ (ယခုပဌုလုပ်သည်) နဟင့် တိကျသောဇယာသတစ်ခုအတလက် အချိန်ကာလကို သင်သိသည်ဟု ယူဆပါသည်။ Excel binary ဖော်မတ်ကို နာသလည်ပဌီသ patch တစ်ခုကို parser စာရေသသူထံ ပေသပို့ခဌင်သဖဌစ်နိုင်သော်လည်သ client အတလက် လုပ်စရာမျာသစလာရဟိသောကဌောင့် အပိုင်သကိုဆုံသဖဌတ်ရန် heuristic ကို အမဌန်ရေသခဲ့သည်။ သူမသည်ရိုသရဟင်သပါသည်။

Excel တလင်၊ ဇူလိုင် 5၊ 1998 ရက်စလဲကို "07-05-98" (အသုံသမကျသောအမေရိကန်စနစ်)၊ "ဇူလိုင် 5၊ 98"၊ "ဇူလိုင် 5၊ 1998"၊ "5-Jul-98" ဖော်မတ်ဖဌင့် ကိုယ်စာသပဌုနိုင်သည် သို့မဟုတ် အခဌာသဖော်မတ်အချို့။ အခဌာသ အသုံသမဝင်သော ဖော်မတ် (ရယ်စရာမဟာ၊ ကျလန်ုပ်၏ Excel ဗာသရဟင်သတလင် မကမ်သလဟမ်သသော ဖော်မတ်တစ်ခုမဟာ ISO 8601) ဖဌစ်သည်။ သို့သော်၊ ဇယာသအတလင်သ၊ အပိုင်သ-၁၉၀၀ အတလက် "35981" သို့မဟုတ် epoch-1900 အတလက် "34519" (နံပါတ်မျာသသည် ခေတ်ကာလကတည်သက နေ့ရက်အရေအတလက်ကိုကိုယ်စာသပဌုသည်) အဖဌစ် ဇယာသတလင် သိမ်သဆည်သထာသသည်။ ဖော်မတ်ချထာသသည့် ရက်စလဲမဟ တစ်နဟစ်ကို ထုတ်ယူရန် ရိုသရဟင်သသော ပါဆာဆာတစ်ခုကို ကျလန်ုပ်အသုံသပဌုခဲ့ပဌီသ၊ ထို့နောက် ဖော်မတ်မထာသသော ရက်စလဲမဟ နဟစ်ကို ထုတ်ယူရန် Excel parser ကို အသုံသပဌုခဲ့သည်။ တန်ဖိုသနဟစ်ခုလုံသဟာ 1904 နဟစ်နဲ့ မတူဘူသဆိုရင်တော့ epoch-4 နဲ့ စနစ်ကို သုံသနေတယ်ဆိုတာ ကျလန်တော်သိပါတယ်။

ဖော်မတ်လုပ်ထာသသော ရက်စလဲမျာသကို အဘယ်ကဌောင့် ကျလန်ုပ်မသုံသခဲ့သနည်သ။ အဘယ်ကဌောင့်ဆိုသော် ဇူလိုင် 5၊ 1998 ကို "July, 98" အဖဌစ် လတစ်လ၏ ဆုံသရဟုံသသည့်နေ့အဖဌစ် ဖော်မတ်နိုင်သောကဌောင့် ဖဌစ်သည်။ ကျလန်ုပ်တို့သည် ၎င်သတို့ကို ပုံစံအမျိုသမျိုသဖဌင့် ဖန်တီသထာသသော ကုမ္ပဏီမျာသစလာထံမဟ ဇယာသမျာသကို လက်ခံရရဟိပဌီသ ရက်စလဲမျာသကို တလက်ဆရန် ကျလန်ုပ်တို့ (ကကိစ္စတလင်၊ ကျလန်ုပ်) မဟ မူတည်ပါသည်။ ထို့အပဌင် Excel က မဟန်နေပါက၊

တစ်ချိန်တည်သမဟာပင် ကျလန်ုပ်သည် 39082 ကို ကဌုံတလေ့ခဲ့ရပါသည်။ Lotus 1-2-3 သည် 1900 ကို ရက်ထပ်နဟစ်အဖဌစ် သတ်မဟတ်ပဌီသ ၎င်သကို Excel တလင် သစ္စာရဟိရဟိ ထပ်ခါတလဲလဲ ပဌုလုပ်ခဲ့သည်ကို ကျလန်ုပ် သတိပေသပါရစေ။ ၎င်သသည် ၁၉၀၀ ပဌည့်လလန်နဟစ်မျာသဆီသို့ တစ်ရက်ထပ်တိုသလာသောကဌောင့် ရက်စလဲတလက်ချက်မဟုလုပ်ဆောင်ချက်မျာသစလာသည် ထိုနေ့အတလက် မဟာသယလင်သသလာသနိုင်သည်။ ဆိုလိုသည်မဟာ 1900 သည် ဇန်နဝါရီလ 39082 ရက်၊ 1 (Macs တလင်) သို့မဟုတ် ဒီဇင်ဘာ 2011၊ 31 (Windows တလင်) ဖဌစ်နိုင်သည်။ ကျလန်ုပ်၏ "တစ်နဟစ်ခလဲခဌမ်သစိတ်ဖဌာမဟု" ကို ဖော်မတ်ထာသသည့်တန်ဖိုသမဟ ၂၀၁၁ ခုနဟစ်ကို ထုတ်ယူပါက၊ အာသလုံသအဆင်ပဌေပါသည်။ သို့သော် Excel parser သည် မည်သည့်ခေတ်ကိုအသုံသပဌုနေသည်မသိသောကဌောင့်၊ ၎င်သသည် epoch-2006 သို့ ပုံသေသတ်မဟတ်ထာသပဌီသ ၂၀၀၆ ခုနဟစ်သို့ ပဌန်သလာသပါသည်။ ကျလန်ုပ်၏လျဟောက်လလဟာတလင် ကလာခဌာသချက်မဟာ 2011 နဟစ်ဖဌစ်သည်၊ ၎င်သကို အမဟာသဟုယူဆကာ အကောင့်ဝင်ကာ ဖော်မတ်မထာသသောတန်ဖိုသကို ပဌန်ပေသခဲ့သည်။

အဲဒါကို သိဖို့အတလက် ဒီ (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

ထို့နောက် ရက်စလဲ 40 အာသလုံသကို မဟန်ကန်စလာ ပိုင်သခဌာသထာသပါသည်။

အလယ်မဟာ ရဟိတာရဟိတယ်။

1980 ခုနဟစ်မျာသအစောပိုင်သတလင်၊ ကျလန်ုပ်၏ဖခင်သည် မဌန်နဟုန်သမဌင့်တိပ်စာကျလေသခဌင်သအတလက် တိပ်ဒရိုက်မျာသနဟင့် နျူမက်စ်စနစ်မျာသကို ဖန်တီသပေသသည့် သိုလဟောင်နည်သပညာဌာနတလင် အလုပ်လုပ်ခဲ့သည်။

၎င်သတို့သည် “B” drive ခုနစ်ခုနဟင့် ချိတ်ဆက်ထာသသော ဗဟို “A” ဒရိုက်ဗ်တစ်ခု ရဟိစေရန်အတလက် ၎င်သတို့သည် ဒရိုက်မျာသကို ပဌန်လည်ဒီဇိုင်သထုတ်ကာ “A” ဒရိုက်ကို ထိန်သချုပ်သည့် RAM အတလင်သရဟိ OS သေသသေသသည် “B” ဒရိုက်ဗ်မျာသအာသလုံသသို့ ဖတ်ရဟုခဌင်သနဟင့် ရေသခဌင်သဆိုင်ရာ လုပ်ဆောင်ချက်မျာသကို လလဟဲအပ်ပေသနိုင်သည်။

ဒရိုက် “A” ကို စတင်သောအခါတိုင်သ၊ လည်ပတ်မဟုစနစ်ကို ၎င်သ၏မဟတ်ဉာဏ်ထဲသို့ ထည့်သလင်သရန်အတလက် “A” နဟင့် ချိတ်ဆက်ထာသသော အရံဒစ်ထဲသို့ ဖလစ်ပီဒစ်တစ်ခု ထည့်သလင်သရန် လိုအပ်သည်။ ၎င်သသည် အလလန်ရဟေသကျသည်- 8-bit မိုက်ခရိုကလန်ထရိုလာမဟ ကလန်ပဌူတာပါဝါကို ထောက်ပံ့ပေသထာသသည်။

ထိုကိရိယာမျာသအတလက် ပစ်မဟတ်ထာသ ပရိသတ်မဟာ လိပ်စာတံဆိပ်မျာသ သို့မဟုတ် ဘဏ်ရဟင်သတမ်သမျာသစလာကို ရိုက်နဟိပ်ရန် လိုအပ်သော အလလန်ကဌီသမာသသော ဒေတာသိုလဟောင်ရုံမျာသ - ဘဏ်မျာသ၊ လက်လီအရောင်သဆိုင်မျာသ စသည်တို့ရဟိသည့် ကုမ္ပဏီမျာသဖဌစ်သည်။

ဖောက်သည်တစ်ညသမဟာ ပဌဿနာရဟိခဲ့သည်။ ပရင့်အလုပ်တစ်ခု၏အလယ်တလင်၊ အထူသဒရိုက်တစ်ခုသည် "A" အလုပ်မလုပ်တော့ဘဲ အလုပ်တစ်ခုလုံသကို ရပ်တန့်သလာသစေသည်။ Drive ၏လည်ပတ်မဟုကို ပဌန်လည်ရယူရန် ဝန်ထမ်သမျာသသည် အရာအာသလုံသကို ပဌန်လည်စတင်ရမည်ဖဌစ်သည်။ ခဌောက်နာရီကဌာတဲ့အလုပ်တစ်ခုရဲ့အလယ်မဟာ ဒီလိုဖဌစ်ခဲ့ရင်၊ တန်ဖိုသကဌီသတဲ့ကလန်ပဌူတာအချိန်အမဌောက်အမဌာသ ဆုံသရဟုံသသလာသပဌီသ လည်ပတ်မဟုတစ်ခုလုံသရဲ့အချိန်ဇယာသလည်သ ပျက်သလာသပါတယ်။

နည်သပညာရဟင်မျာသကို Storage Technologies မဟ စေလလဟတ်ခဲ့ပါသည်။ သို့သော် ၎င်သတို့၏ အကောင်သဆုံသကဌိုသစာသမဟုမျာသကဌာသမဟ စမ်သသပ်မဟုအခဌေအနေမျာသအောက်တလင် ၎င်သတို့သည် bug ကို ပဌန်လည်ထုတ်လုပ်နိုင်ခဌင်သ မရဟိခဲ့ပေ- ၎င်သသည် ကဌီသမာသသောပုံနဟိပ်အလုပ်မျာသအလယ်တလင် ဖဌစ်ပလာသပုံရသည်။ ပဌဿနာက ဟာ့ဒ်ဝဲမဟုတ်ပါ၊ RAM၊ microcontroller၊ floppy drive၊ တိပ် drive ၏ စိတ်ကူသနိုင်သမျဟ အစိတ်အပိုင်သအာသလုံသကို အစာသထိုသလိုက်သည် - ပဌဿနာက ဆက်ရဟိနေပါသည်။

အဲဒီအခါမဟာ နည်သပညာရဟင်တလေက ရုံသချုပ်ကို ခေါ်ပဌီသ ကျလမ်သကျင်ပညာရဟင်ကို ခေါ်တယ်။

ကျလမ်သကျင်သူသည် ကုလာသထိုင်တစ်လုံသနဟင့် ကော်ဖီခလက်ကို ကိုင်ကာ ကလန်ပျူတာခန်သထဲတလင် ထိုင်ကာ—ထိုခေတ်က ကလန်ပျူတာအတလက် သီသသန့်အခန်သမျာသရဟိသည်—နဟင့် ဝန်ထမ်သမျာသသည် ပုံနဟိပ်လုပ်ငန်သကဌီသတစ်ခုကို တန်သစီနေချိန်တလင် ကဌည့်ရဟုခဲ့သည်။ ကျလမ်သကျင်သူသည် ပျက်ကလက်မဟုကို စောင့်ဆိုင်သနေခဲ့သည်။ လူတိုင်သက ကျလမ်သကျင်သူကို ကဌည့်နေကဌပေမယ့် ဘာကဌောင့် ဒီလိုဖဌစ်ရတာလဲဆိုတာ သူမသိဘူှ။ ဒါကဌောင့် အလုပ်ပဌန်ပဌီသ တန်သစီခိုင်သပဌီသ ဝန်ထမ်သတလေနဲ့ နည်သပညာရဟင်တလေ အာသလုံသ အလုပ်ပဌန်လုပ်ကဌပါတယ်။

ကျလမ်သကျင်သူသည် ကုလာသထိုင်ပေါ်တလင် ပဌန်ထိုင်ပဌီသ ရဟုံသနိမ့်မဟုကို စောင့်ဆိုင်သနေတော့သည်။ ခဌောက်နာရီခန့်ကဌာပဌီသ ပျက်ကျသလာသသည်။ ကျလမ်သကျင်သူသည် လူမျာသဖဌင့် ပဌည့်နေသော အခန်သတစ်ခုမဟလလဲ၍ ကျန်အရာအာသလုံသသည် စိတ်ကူသမရဟိခဲ့ပေ။ မစ်ရဟင်ကို ပဌန်လည်စတင်ရန် အမိန့်ပေသခဲ့ပဌီသ ပဌန်ထိုင်ကာ စောင့်ဆိုင်သခဲ့သည်။

တတိယအကဌိမ် ရဟုံသနိမ့်ခဌင်သဖဌင့် ကျလမ်သကျင်သူသည် တစ်စုံတစ်ခုကို သတိပဌုမိခဲ့သည်။ နိုင်ငံရပ်ခဌာသ drive တစ်ခုတလင် ဝန်ထမ်သမျာသမဟ တိပ်ခလေမျာသပဌောင်သသည့်အခါ ပျက်ကလက်မဟု ဖဌစ်ပလာသခဲ့သည်။ ထို့အပဌင် ဝန်ထမ်သတစ်ညသသည် ကဌမ်သပဌင်ပေါ်ရဟိ အုတ်ချပ်တစ်ခုကို ဖဌတ်လျဟောက်သလာသစဉ် ပျက်ကလက်မဟု ဖဌစ်ပလာသခဲ့သည်။

အထပ်မဌင့်ကဌမ်သခင်သကို အလူမီနီယမ်ကဌလေပဌာသမျာသဖဌင့် ပဌုလုပ်ထာသပဌီသ အမဌင့် ၆ လက်မမဟ ၈ လက်မအထိရဟိသည်။ အရေသကဌီသသော ကေဘယ်ကဌိုသတစ်ခုပေါ်မဟ တစ်စုံတစ်ယောက်အာသ မတော်တဆ နင်သမိခဌင်သမဟ ကာကလယ်ရန် ကလန်ပဌူတာမဟ ဝိုင်ယာအမျာသအပဌာသသည် အထပ်မဌင့်ကဌမ်သပဌင်အောက်တလင် ပဌေသသလာသခဲ့သည်။ ကဌမ်သပဌင်အောက်သို့ အပျက်အစီသမျာသမဝင်စေရန် ကဌလေပဌာသမျာသကို တင်သတင်သကဌပ်ကဌပ်ချထာသပါသည်။

ကဌလေပဌာသမျာသထဲမဟ တစ်ခုသည် ပုံပျက်နေကဌောင်သ ကျလမ်သကျင်သူက သဘောပေါက်သည်။ ဝန်ထမ်သတစ်ညသသည် ၎င်သ၏ထောင့်ကို လဟမ်သကဌည့်လိုက်သောအခါ အုတ်ကဌလပ်အစလန်သမျာသသည် ကပ်လျက်ရဟိသော ကဌလေပဌာသမျာသနဟင့် ပလတ်တိုက်သလာသသည်။ ကဌလေပဌာသမျာသနဟင့် ချိတ်ဆက်ထာသသည့် ပလပ်စတစ် အစိတ်အပိုင်သမျာသသည် ၎င်သတို့နဟင့် ပလတ်တိုက်ကာ ရေဒီယိုကဌိမ်နဟုန်သကို အနဟောင့်အယဟက်ဖဌစ်စေသည့် static microdischarges မျာသကို ဖဌစ်စေသည်။

ယနေ့ခေတ်တလင် RAM သည် ရေဒီယိုကဌိမ်နဟုန်သဝင်ရောက်စလက်ဖက်မဟုမဟ ပိုမိုကောင်သမလန်စလာကာကလယ်ထာသသည်။ ဒါပေမယ့် အဲဒီနဟစ်တလေမဟာ ဒီလိုမဖဌစ်ခဲ့ဘူသ။ ကဝင်ရောက်စလက်ဖက်မဟုသည် မဟတ်ဉာဏ်ကို အနဟောင့်အယဟက်ဖဌစ်စေကဌောင်သနဟင့် ၎င်သနဟင့်အတူ လည်ပတ်မဟုစနစ်၏လည်ပတ်မဟုကို ကျလမ်သကျင်သူက နာသလည်ခဲ့သည်။ သူသည် အကူအညီပေသရေသဝန်ဆောင်မဟုကို ခေါ်ပဌီသ ကဌလေပဌာသအသစ်မျာသကို မဟာယူကာ ၎င်သတို့ကိုယ်တိုင် တပ်ဆင်ပဌီသနောက် ပဌဿနာ ပျောက်သလာသခဲ့သည်။

ဒီရေတက်နေတယ်။

ဇာတ်လမ်သက Portsmouth မဟာရဟိတဲ့ ရုံသခန်သရဲ့ စတုတ္ထ ဒါမဟမဟုတ် ပဉ္စမထပ်မဟာ ဆိုက်ကပ်တဲ့ နေရာက ဆာဗာခန်သမဟာ ဖဌစ်ခဲ့တာပါ။

တစ်နေ့တလင် ပင်မဒေတာဘေ့စ်ပါရဟိသော Unix server ပျက်သလာသသည်။ သူတို့က သူ့ကို ပဌန်ဖလင့်လိုက်ပေမယ့် သူ ပျော်ပျော်ရလဟင်ရလဟင်နဲ့ ထပ်ခါထပ်ခါ လဲကျနေခဲ့တယ်။ ပံ့ပိုသကူညီမဟုဝန်ဆောင်မဟုမဟ တစ်စုံတစ်ညသကို ခေါ်ဆိုရန် ဆုံသဖဌတ်ခဲ့သည်။

ပံ့ပိုသကူညီသူ... သူ့နာမည်က Mark လို့ထင်တယ်၊ ဒါပေမယ့် အရေသမကဌီသဘူသ... သူ့ကို သိမယ်မထင်ဘူသ။ တကယ်က အရေသမကဌီသပါဘူသ။ Mark နဲ့ တလဲကဌရအောင်၊ မိုက်တယ်။

ထို့ကဌောင့် နာရီအနည်သငယ်ကဌာပဌီသနောက် Mark ရောက်ရဟိလာပဌီသ (အဲဒါက Leeds မဟ Portsmouth ဆီသို့ မဝေသလဟပါဘူသ၊ မင်သသိပါတယ်) ဆာဗာကို ဖလင့်လိုက်ပဌီသ အရာအာသလုံသက ပဌဿနာမရဟိဘဲ အလုပ်လုပ်ပါတယ်။ သာမာန် မိုက်မဲသော ပံ့ပိုသကူညီမဟု ကဌောင့် ဖောက်သည်သည် ၎င်သအတလက် အလလန်စိတ်မကောင်သ ဖဌစ်မိပါသည်။ Mark သည် မဟတ်တမ်သဖိုင်မျာသကို ကဌည့်ကာ ဘာမဟမတလေ့ရပါ။ ဒါနဲ့ Mark က ရထာသပေါ်ပဌန်တက်တော့ (ဒါမဟမဟုတ် သူရောက်တဲ့ သယ်ယူပို့ဆောင်ရေသ လမ်သကဌောင်သက ဘယ်လိုပဲ ဖဌစ်ဖဌစ် ငါသိသမျဟအတလက် ခဌေဆလံ့တဲ့ နလာသတစ်ကောင် ဖဌစ်နိုင်ပါတယ်... ဘာပဲဖဌစ်ဖဌစ် ကိစ္စမရဟိပါဘူသ၊ အဆင်ပဌေလာသ?) ဖဌုန်သတီသပဌီသ လိဒ်မဌို့ကို ပဌန်သလာသခဲ့တယ်။ နေ့ရက်။

အဲဒီညမဟာပဲ ဆာဗာ ပျက်သလာသပဌန်တယ်။ ဇာတ်လမ်သကတော့ အတူတူပါပဲ... server က မတက်လာပါဘူသ။ Mark သည် အဝေသမဟ ကူညီရန် ကဌိုသစာသသော်လည်သ client သည် ဆာဗာကို မစတင်နိုင်ပါ။

အခဌာသရထာသ၊ ဘတ်စ်ကာသ၊ သံပယိုသီသဖျော်ရည် သို့မဟုတ် အခဌာသအမိုက်စာသအညစ်အကဌေသအချို့၊ Mark သည် Portsmouth တလင် ပဌန်လည်ရောက်ရဟိနေပဌီဖဌစ်သည်။ ကဌည့်ပါ၊ ဆာဗာသည် မည်သည့်ပဌဿနာမျဟမရဟိဘဲ ပလင့်နေပါသည်။ အံ့ဖလယ်။ Mark သည် အရာအာသလုံသကို လည်ပတ်မဟုစနစ် သို့မဟုတ် ဆော့ဖ်ဝဲဖဌင့် လိုက်လျောညီထလေဖဌစ်စေကဌောင်သ စစ်ဆေသကဌည့်ရဟုပဌီသ Leeds အတလက် ခရီသထလက်သည်။

နေ့လယ်ပိုင်သလောက်မဟာ ဆာဗာ ပျက်သလာသတယ် (လလယ်လလယ်လေသပါ။) ကအချိန်သည် ဆာဗာကိုအစာသထိုသရန်အတလက် ဟာ့ဒ်ဝဲလ်ပံ့ပိုသပေသသူမျာသကို ယူဆောင်လာခဌင်သသည် ကျိုသကဌောင်သဆီလျော်ပုံရသည်။ ဒါပေမယ့် ၁၀ နာရီလောက်ကဌာတော့ ပဌုတ်ကျတာ မဟုတ်ဘူသ။

အခဌေအနေက ရက်အတော်ကဌာအောင် ထပ်ခါထပ်ခါ ဖဌစ်နေသည်။ ဆာဗာသည် အလုပ်လုပ်သည်၊ ၁၀ နာရီခန့်အကဌာတလင် ပျက်သလာသပဌီသ နောက် ၂ နာရီကဌာအောင် မစတင်ပါ။ ၎င်သတို့သည် အအေသခံခဌင်သ၊ မဟတ်ဉာဏ်ယိုစိမ့်မဟုတို့ကို စစ်ဆေသခဲ့ပဌီသ အရာအာသလုံသကို စစ်ဆေသခဲ့သော်လည်သ ဘာမဟမတလေ့ခဲ့ပေ။ နောက်တော့ အပျက်အစီသတလေ ရပ်သလာသတယ်။

ရက်သတ္တပတ်သည် ပေါ့ပေါ့ဆဆ ကုန်ဆုံသသလာသသည်... အာသလုံသ ပျော်ရလဟင်ကဌပါစေ။ အာသလုံသပဌန်စတဲ့အထိ ပျော်ရလဟင်ပါစေ။ ပုံကတော့ အတူတူပါပဲ။ အလုပ်ချိန် 10 နာရီ ၊ 2 နာရီမဟ 3 နာရီ ...

ပဌီသတော့ တစ်ယောက်ယောက် (ဒီလူက IT နဲ့ ဘာမဟမဆိုင်ဘူသလို့ သူတို့ပဌောတယ်ထင်တယ်) ကပဌောတယ်

"ဒီရေ!"

အာမေဋိတ်ကို စိုက်ကဌည့်ရင်သ လလတ်လလတ်လပ်လပ် ပေါ်လာပဌီသ တစ်စုံတစ်ယောက်၏ လက်သည် လုံခဌုံရေသဖုန်သခေါ်ဆိုမဟုခလုတ်ကို ဆိုင်သငံ့ထာသဖလယ်ရဟိသည်။

“ဒီရေနဲ့ အလုပ်မလုပ်တော့ဘူသ။”

ကော်ဖီသောက်ရင်သ ထိုင်ရင်သ Tide Yearbook ကိုဖတ်ရန် မဖဌစ်နိုင်သော IT လုပ်သာသမျာသအတလက် လုံသလုံသလျာသလျာသ နိုင်ငံခဌာသအယူအဆတစ်ခု ဖဌစ်ပုံရသည်။ ဆာဗာသည် မအောင်မဌင်ဘဲ တစ်ပတ်ကဌာ အလုပ်လုပ်နေသောကဌောင့် ၎င်သသည် ဒီရေနဟင့် မည်သို့မျဟ မသက်ဆိုင်နိုင်ကဌောင်သ ရဟင်သပဌခဲ့သည်။

"ပဌီသခဲ့တဲ့အပတ်က ဒီရေက နည်သပေမယ့် ဒီတစ်ပတ်တော့ မဌင့်တယ်။"

ရလက်လဟေလိုင်စင်မရဟိသူမျာသအတလက် ဝေါဟာရအနည်သအကျဉ်သ။ ဒီရေသည် လ၏စက်ဝန်သပေါ်တလင်မူတည်သည်။ ကမ္ဘာသည် လဟည့်ပတ်လာသည်နဟင့်အမျဟ 12,5 နာရီတိုင်သ နေနဟင့်လ၏ ဆလဲငင်အာသသည် ဒီလဟိုင်သကို ဖန်တီသသည်။ 12,5 နာရီစက်ဝန်သ၏အစတလင် ဒီရေတက်လာသည်၊ စက်ဝန်သအလယ်တလင် အီဗိုင်သရပ်ကာ၊ အဆုံသတလင် ဒီရေတက်လာပဌန်သည်။ သို့သော် လ၏ပတ်လမ်သပဌောင်သလာသည်နဟင့်အမျဟ ရေနိမ့်နဟင့် ဒီရေသည် ကလာခဌာသသည်။ လသည် နေနဟင့်ကမ္ဘာကဌာသတလင် သို့မဟုတ် ကမ္ဘာ၏တစ်ဖက်ခဌမ်သတလင် (လပဌည့် သို့မဟုတ် လမရဟိသည့်အခါ)၊ ကျလန်ုပ်တို့သည် Syzygyn ဒီရေ (အမဌင့်ဆုံသဒီရေနဟင့် အနိမ့်ဆုံသဒီရေ) ကို ရရဟိသည်။ လဝက်တလင် ကျလန်ုပ်တို့သည် အနိမ့်ဆုံသ ဒီရေကို လေသပုံတစ်ပုံ ဒီရေ ရရဟိသည်။ အစလန်သနဟစ်ဖက်ကဌာသက ခဌာသနာသချက်ဟာ အလလန်နည်သပါတယ်။ လစက်ဝန်သသည် ၂၈ ရက်ကဌာသည်- syzygian - quadrature - syzygian - quadrature။

နည်သပညာရဟင်တလေက ဒီရေလဟိုင်သတလေရဲ့ အနဟစ်သာရကို ရဟင်သပဌတဲ့အခါ ရဲကို ခေါ်ဖို့ လိုအပ်တယ်လို့ ချက်ချင်သ တလေသလိုက်ကဌတယ်။ တော်တော်ယုတ္တိရဟိတယ်။ ဒါပေမယ့် မောင်မဟန်တယ်ထင်တယ် ။ လလန်ခဲ့သည့် နဟစ်ပတ်ခန့်က ရုံသနဟင့် မနီသမဝေသတလင် ဖျက်သင်္ဘောတစ်စင်သ ဆိုက်ကပ်ခဲ့သည်။ ဒီရေသည် သတ်မဟတ်ထာသသော အမဌင့်သို့ တက်လာတိုင်သ၊ သင်္ဘော၏ ရေဒါမဟတ်တိုင်သည် ဆာဗာအခန်သကဌမ်သပဌင်အဆင့်တလင် ပဌီသဆုံသသလာသပါသည်။ ရေဒါ (သို့မဟုတ် အီလက်ထရလန်နစ် စစ်ဆင်ရေသ ကိရိယာမျာသ သို့မဟုတ် အခဌာသ စစ်ဘက်အရုပ်မျာသ) သည် ကလန်ပျူတာမျာသအတလင်သ ပရမ်သပတာဖဌစ်စေခဲ့သည်။

ဒုံသပျံအတလက် ပျံသန်သရေသမစ်ရဟင်

ကျလန်ုပ်သည် ကဌီသမာသသော (လိုင်သ 400 ခန့်) ဒုံသပျံပစ်လလဟတ်မဟု ထိန်သချုပ်ရေသနဟင့် စောင့်ကဌည့်ရေသစနစ်အာသ လည်ပတ်စနစ်၊ စုစည်သမဟု နဟင့် ဘာသာစကာသ၏ ဗာသရဟင်သအသစ်မျာသသို့ ပို့ဆောင်ရန် တာဝန်ပေသခဲ့သည်။ ပို၍တိကျသည်မဟာ၊ Solaris 2.5.1 မဟ Solaris 7 နဟင့် Ada 83 တလင်ရေသသာသထာသသော Verdix Ada Development System (VADS) မဟ Ada 95 တလင်ရေသထာသသော Rational Apex Ada စနစ်အထိဖဌစ်သည်။ VADS ကို Rational မဟဝယ်ယူခဲ့ပဌီသ ၎င်သ၏ထုတ်ကုန်မဟာ၊ အသုံသမပဌုတော့သော်လည်သ၊ Rational သည် Apex compiler အသလင်ကူသပဌောင်သမဟုကို လလယ်ကူစေရန် VADS သီသသန့်ပက်ကေ့ဂျ်မျာသ၏ တလဲဖက်ဗာသရဟင်သမျာသကို အကောင်အထည်ဖော်ရန် ကဌိုသစာသခဲ့သော်လည်သ၊

လူသုံသယောက်က ကုဒ်ကို ရဟင်သရဟင်သလင်သလင်သဖဌစ်အောင် ကူညီပေသခဲ့တယ်။ နဟစ်ပတ်ကဌာတယ်။ ပဌီသတော့ စနစ်ကို အလုပ်ဖဌစ်အောင် ငါကိုယ်တိုင် လုပ်ခဲ့တယ်။ အတိုချုပ်ပဌောရလျဟင် ၎င်သသည် ကျလန်ုပ်ကဌုံတလေ့ခဲ့ရသော ဆော့ဖ်ဝဲလ်စနစ်၏ အဆိုသရလာသဆုံသသော တည်ဆောက်မဟုနဟင့် အကောင်အထည်ဖော်မဟုဖဌစ်သောကဌောင့် ဆိပ်ကမ်သကို အပဌီသသတ်ရန် နောက်ထပ်နဟစ်လခန့် အချိန်ယူခဲ့ရသည်။ ထို့နောက် စမ်သသပ်ရန် စနစ်ကို တင်သလင်သခဲ့ပဌီသ လပေါင်သမျာသစလာ ကဌာခဲ့သည်။ စမ်သသပ်နေစဉ်တလေ့ရဟိခဲ့သော ချို့ယလင်သချက်မျာသကို ကျလန်ုပ်ချက်ချင်သပဌင်ပေသခဲ့သော်လည်သ ၎င်သတို့၏နံပါတ်သည် လျင်မဌန်စလာလျော့ကျသလာသသည် (အရင်သအမဌစ်ကုဒ်သည် ထုတ်လုပ်မဟုစနစ်တစ်ခုဖဌစ်သောကဌောင့် ၎င်သ၏လုပ်ဆောင်နိုင်စလမ်သသည် စိတ်ချယုံကဌည်စလာအလုပ်လုပ်သည်၊ compiler အသစ်နဟင့်လိုက်လျောညီထလေဖဌစ်အောင်ပဌုလုပ်ထာသသည့် bug မျာသကို ဖယ်ရဟာသခဲ့ရသည်)။ နောက်ဆုံသတော့ အရာအာသလုံသဟာ ဖဌစ်သင့်သလောက်ဖဌစ်တဲ့အခါ တခဌာသပရောဂျက်တစ်ခုဆီ ပဌောင်သသလာသတယ်။

ကျေသဇူသတော်နေ့မတိုင်မီ သောကဌာနေ့တလင် ဖုန်သမဌည်လာသည်။

ဒုံသပျံလလဟတ်တင်မဟုကို သုံသပတ်ခန့်အတလင်သ စမ်သသပ်မည်ဟု ယူဆရပဌီသ နဟစ်သစ်ကဌိုဆိုပလဲ၏ ဓာတ်ခလဲစမ်သသပ်မဟုအတလင်သ အမိန့်ပေသသည့် အပိုင်သကို ပိတ်ဆို့ခဲ့သည်။ လက်တလေ့ဘဝတလင်၊ ၎င်သသည် စမ်သသပ်မဟုကို ပျက်ပဌယ်သလာသမည်ဖဌစ်ပဌီသ၊ အင်ဂျင်စတင်ပဌီသ စက္ကန့်အနည်သငယ်အတလင်သ ပိတ်ဆို့သလာသပါက၊ ဒုံသပျံ၏ ရဟည်လျာသပဌီသ ဈေသကဌီသသော အဆင်သင့်လိုအပ်မည့် အရန်စနစ်မျာသတလင် နောက်ပဌန်လဟည့်၍မရသော လုပ်ဆောင်ချက်မျာသစလာ ဖဌစ်ပေါ်လာမည်ဖဌစ်သည်။ စတင်တော့မည်မဟုတ်ပေမယ့် အချိန်ကုန်၊ ငလေအမဌောက်အမဌာသ ဆုံသရဟုံသရသည့်အတလက် မျာသစလာစိတ်မကောင်သဖဌစ်မိပါသည်။ ကာကလယ်ရေသဌာနက ပိုက်ဆံကို မဆင်မခဌင် သုံသစလဲတာကို ဘယ်သူ့ကိုမဟ မပဌောစေနဲ့- ဘတ်ဂျက်ပထမ ဒါမဟမဟုတ် ဒုတိယမထည့်ဘဲ အချိန်ဇယာသအတိုင်သ လိုက်လုပ်မယ့် ကန်ထရိုက်မန်နေဂျာနဲ့ တစ်ခါမဟ မဆုံဖူသဘူသ။

ယခင်လမျာသတလင်၊ ကနဟစ်သစ်ကဌိုဆိုပလဲစိန်ခေါ်မဟုကို ပုံစံအမျိုသမျိုသဖဌင့် အကဌိမ်ရာနဟင့်ချီပဌီသ လုပ်ဆောင်ခဲ့ပဌီသ အနည်သငယ်သော ကဌို့ထိုသမဟုမျာသသာ ရဟိခဲ့သည်။ ထို့ကဌောင့် ကဖဌစ်ပလာသနိုင်ခဌေမဟာ အလလန်နည်သပါသသော်လည်သ ၎င်သ၏အကျိုသဆက်မျာသမဟာ အလလန်ထင်ရဟာသပါသည်။ ကအချက်နဟစ်ခုလုံသကို ပေါင်သလိုက်လျဟင် သတင်သသည် ကျလန်ုပ်နဟင့် အင်ဂျင်နီယာမျာသနဟင့် မန်နေဂျာ ဒါဇင်ပေါင်သမျာသစလာအတလက် ပျက်စီသနေသော အာသလပ်ရက်ရက်သတ္တပတ်ကို ခန့်မဟန်သကဌောင်သ သင်နာသလည်ပါလိမ့်မည်။

ပဌီသတော့ စနစ်ကို တင်သလင်သသူအနေနဲ့ ကျလန်မကို အာရုံစိုက်ခဲ့တယ်။

လုံခဌုံရေသအရေသပါသည့်စနစ်အမျာသစုကဲ့သို့ပင်၊ ကန့်သတ်ချက်အမျာသအပဌာသကို မဟတ်သာသထာသသောကဌောင့် စနစ်မပျက်စီသမီ လုပ်ဆောင်ခဲ့သော ကုဒ်လိုင်သအနည်သငယ်ကို ခလဲခဌာသသတ်မဟတ်ရန် အလလန်လလယ်ကူပါသည်။ ပဌီသတော့ သူတို့နဲ့ပတ်သက်တဲ့ အထူသအဆန်သဘာမဟ မရဟိပါဘူသ၊ တူညီတဲ့အသုံသအနဟုန်သတလေကို တူညီတဲ့အပဌေသအတလင်သမဟာ အကဌိမ်ထောင်ပေါင်သမျာသစလာ စာသာသအတိုင်သ အောင်မဌင်စလာ လုပ်ဆောင်နိုင်ခဲ့ပါတယ်။

ကျလန်ုပ်တို့သည် Apex မဟလူမျာသကို ဆင်ခဌင်တုံတရာသအဖဌစ်သို့ ခေါ်ဝေါ်ခဌင်သမဟာ ၎င်သတို့သည် compiler ကို တီထလင်သူမျာသဖဌစ်ပဌီသ ၎င်သတို့တီထလင်ခဲ့သော လုပ်ရိုသလုပ်စဉ်အချို့ကို သံသယဖဌစ်ဖလယ်ကုဒ်ဖဌင့် ခေါ်ဝေါ်ခဲ့ကဌသည်။ အမျိုသသာသရေသဆိုင်ရာ အရေသပါမဟု ပဌဿနာ၏ အမဌစ်ကို ရောက်ရန် လိုအပ်ကဌောင်သ ၎င်သတို့ (အခဌာသလူတိုင်သ) က အထင်ကဌီသခဲ့ကဌသည်။

ဂျာနယ်တလေမဟာ စိတ်ဝင်စာသစရာ ဘာတစ်ခုမဟ မရဟိတာကဌောင့်၊ ဒေသခံ ဓာတ်ခလဲခန်သမဟာ ပဌဿနာကို ပဌန်ထုတ်ဖို့ ဆုံသဖဌတ်ခဲ့ပါတယ်။ အပဌေသ 1000 တလင် တစ်ကဌိမ်ခန့် အဖဌစ်အပျက် ဖဌစ်ပလာသသောကဌောင့် ၎င်သသည် လလယ်ကူသော အလုပ်မဟုတ်ပေ။ သံသယဖဌစ်ရသည့်အကဌောင်သရင်သတစ်ခုမဟာ ရောင်သချသူ-တီထလင်ထာသသော mutex လုပ်ဆောင်ချက် (VADS ရလဟေ့ပဌောင်သခဌင်သပက်ကေ့ချ်၏ တစ်စိတ်တစ်ပိုင်သ) သို့ ဖုန်သခေါ်ဆိုခဌင်သကဌောင့်ဖဌစ်သည်။ Unlock သော့ဖလင့်ခဌင်သဆီသို့ ညသတည်မသလာသပါ။ လုပ်ဆောင်ချက်ဟုခေါ်သော လုပ်ဆောင်ချက်ကဌိုသသည် စက္ကန့်တိုင်သတလင် အမည်ခံရောက်ရဟိလာသည့် နဟလုံသခုန်စာမျာသကို လုပ်ဆောင်ပေသသည်။ ကျလန်ုပ်တို့သည် ကဌိမ်နဟုန်သကို 10 Hz သို့ မဌဟင့်တင်ခဲ့ပဌီသ၊ ဆိုလိုသည်မဟာ တစ်စက္ကန့်လျဟင် 10 ကဌိမ်၊ စတင်လည်ပတ်ခဲ့သည်။ တစ်နာရီလောက်ကဌာတော့ စနစ်က သူ့အလိုလို သော့ခတ်သလာသတယ်။ မဟတ်တမ်သတလင်၊ မဟတ်တမ်သတင်ထာသသော မက်ဆေ့ချ်မျာသ၏ အစီအစဥ်သည် မအောင်မဌင်သော စမ်သသပ်မဟုအတလင်သနဟင့် အတူတူပင်ဖဌစ်ကဌောင်သ ကျလန်ုပ်တို့ တလေ့ရဟိရပါသည်။ ကျလန်ုပ်တို့သည် နောက်ထပ်အပဌေသမျာသစလာကို ပဌုလုပ်ခဲ့ပဌီသ၊ စတင်ပဌီသနောက် 45-90 မိနစ်တလင် စနစ်သည် ဆက်တိုက်ပိတ်ဆို့ခဲ့ပဌီသ မဟတ်တမ်သတလင် တူညီသောလမ်သကဌောင်သပါရဟိသည့်အချိန်တိုင်သ။ ကျလန်ုပ်တို့သည် နည်သပညာအရ မတူညီသောကုဒ်မျာသကို လုပ်ဆောင်နေသော်လည်သ - မက်ဆေ့ချ်အကဌိမ်ရေ ကလဲပဌာသသည် - စနစ်၏ အမူအကျင့်မျာသသည် တူညီသောကဌောင့် က load scenario သည် အလာသတူပဌဿနာကို ဖဌစ်စေသည်ဟု ကျလန်ုပ်တို့ ယုံကဌည်ပါသည်။

ယခု ကျလန်ုပ်တို့သည် စကာသလုံသအစီအစဥ်အစီအစဥ်တလင် ပိတ်ဆို့ခဌင်သဖဌစ်ပလာသသည့်နေရာကို အတိအကျရဟာဖလေရန်လိုအပ်ပါသည်။

ကစနစ်ကို အကောင်အထည်ဖော်ခဌင်သသည် Ada အလုပ်စနစ်ကို အသုံသပဌုခဲ့ပဌီသ ၎င်သကို မယုံနိုင်လောက်အောင် ညံ့ဖျင်သစလာ အသုံသပဌုခဲ့သည်။ Tasks မျာသသည် Ada တလင် တစ်ပဌိုင်နက်တည်သ လုပ်ဆောင်နိုင်သော အဆင့်မဌင့်တည်ဆောက်မဟုတစ်ခုဖဌစ်ပဌီသ၊ execution ချည်မျဟင်မျာသကဲ့သို့သော ဘာသာစကာသဖဌင့်သာ တည်ဆောက်ထာသသည်။ အလုပ်နဟစ်ခု ဆက်သလယ်ရန် လိုအပ်သောအခါတလင် ၎င်သတို့သည် "ဆုံရပ်တစ်ခုကို သတ်မဟတ်"၊ လိုအပ်သော ဒေတာကို ဖလဟယ်ကဌပဌီသ၊ ထို့နောက် ဆုံရပ်ကို ရပ်ကာ ၎င်သတို့၏ သီသခဌာသ ကလပ်မျက်မဟုသို့ ပဌန်သလာသကဌသည်။ သို့သော် စနစ်ကို ကလဲပဌာသစလာ အကောင်အထည်ဖော်ခဲ့သည်။ ပစ်မဟတ်အလုပ်တစ်ခု ဆုံရပ်ပဌီသနောက်၊ ထိုပစ်မဟတ်အလုပ်သည် အခဌာသအလုပ်တစ်ခုနဟင့် ဆုံတလေ့ခဲ့ပဌီသ၊ ထို့နောက်တလင် တတိယအလုပ်တစ်ခုနဟင့် ပဌန်လည်ဆုံတလေ့ခဲ့သည်၊ အချို့သော လုပ်ငန်သစဉ်မျာသ ပဌီသမဌောက်သည်အထိ စသည်တို့ဖဌစ်သည်။ ယင်သနောက်၊ ကဆုံရပ်အာသလုံသ ပဌီသမဌောက်ပဌီသ အလုပ်တစ်ခုစီသည် ၎င်သ၏ ကလပ်မျက်မဟုသို့ ပဌန်သလာသရမည်ဖဌစ်သည်။ ဆိုလိုသည်မဟာ၊ ကျလန်ုပ်တို့သည် input data ၏တစ်စိတ်တစ်ပိုင်သကိုလုပ်ဆောင်နေစဉ်တလင် "multitasking" လုပ်ငန်သစဉ်တစ်ခုလုံသကိုရပ်တန့်စေသည့်ကမ္ဘာပေါ်ရဟိစျေသအကဌီသဆုံသ function call system နဟင့်ကျလန်ုပ်တို့ကိုင်တလယ်နေသည်။ ဒီမတိုင်ခင်က သလင်သအာသစုက အရမ်သနည်သနေတာကဌောင့်သာ ပဌဿနာတလေကို မဖဌစ်ပေါ်စေခဲ့ပါဘူသ။

ဆုံရပ်တစ်ခုကို တောင်သဆိုထာသသည် သို့မဟုတ် ပဌီသမဌောက်ရန် မျဟော်လင့်ထာသသည့်အခါ၊ "task switch" ဖဌစ်ပေါ်လာနိုင်သောကဌောင့် ကလုပ်ငန်သဆောင်တာယန္တရာသကို ကျလန်ုပ်ဖော်ပဌခဲ့ပါသည်။ ဆိုလိုသည်မဟာ၊ ပရိုဆက်ဆာသည် လုပ်ဆောင်ရန် အဆင်သင့်ဖဌစ်သည့် အခဌာသအလုပ်တစ်ခုကို စတင်လုပ်ဆောင်နိုင်သည်။ အလုပ်တစ်ခုသည် အခဌာသအလုပ်တစ်ခုနဟင့် ဆုံရပ်ရန် အဆင်သင့်ဖဌစ်သောအခါ၊ လုံသဝကလဲပဌာသခဌာသနာသသော အလုပ်တစ်ခုကို စတင်လုပ်ဆောင်နိုင်ပဌီသ နောက်ဆုံသတလင် ထိန်သချုပ်မဟုသည် ပထမဆုံရပ်သို့ ပဌန်လည်ရောက်ရဟိသလာသကဌောင်သ တလေ့ရဟိရသည်။ အလုပ်ပဌောင်သစေသော အခဌာသဖဌစ်ရပ်မျာသ ဖဌစ်ပေါ်လာနိုင်သည်။ ထိုဖဌစ်ရပ်တစ်ခုသည် ပုံနဟိပ်ခဌင်သ သို့မဟုတ် mutex ကို လုပ်ဆောင်ခဌင်သကဲ့သို့သော စနစ်လုပ်ဆောင်ချက်တစ်ခုဆီသို့ ခေါ်ဆိုမဟုဖဌစ်သည်။

ပဌဿနာဖဌစ်စေသည့်ကုဒ်မျဉ်သကဌောင်သကို နာသလည်ရန်၊ ပျက်စီသမဟုဖဌစ်ပလာသခဌင်သမဟကာကလယ်ပေသမည့် အလုပ်ခလုတ်တစ်ခုမဖလင့်ဘဲ ထုတ်ပဌန်ချက်အစီအစဥ်တစ်ခုမဟတစ်ဆင့် တိုသတက်မဟုကို မဟတ်တမ်သတင်ရန် နည်သလမ်သရဟာရန်လိုအပ်ပါသည်။ ဒါကဌောင့် အခလင့်ကောင်သမယူနိုင်ခဲ့ဘူသ။ Put_Line()I/O လုပ်ဆောင်ချက်မျာသကို ရဟောင်ရဟာသရန်။ counter variable သို့မဟုတ် အလာသတူတစ်ခုခုကို သတ်မဟတ်နိုင်သော်လည်သ ဖန်သာသပဌင်ပေါ်တလင် မပဌသနိုင်ပါက ၎င်သ၏တန်ဖိုသကို မည်သို့မဌင်နိုင်မည်နည်သ။

ထို့အပဌင်၊ မဟတ်တမ်သကိုစစ်ဆေသသောအခါတလင် နဟလုံသခုန်သံစာတိုမျာသလုပ်ဆောင်ရာတလင် ရပ်တန့်သလာသသော်လည်သ၊ လုပ်ငန်သစဉ်၏ I/O လုပ်ဆောင်ချက်အာသလုံသကို ပိတ်ဆို့ကာ အခဌာသလုပ်ဆောင်မဟုမျာသအာသ လုပ်ဆောင်ခဌင်သမပဌုရန် တာသဆီသထာသသည့်ကဌာသမဟ အခဌာသသော သီသခဌာသလုပ်ငန်သဆောင်တာမျာသကို ဆက်လက်လုပ်ဆောင်သလာသမည်ဖဌစ်ကဌောင်သ သိရဟိရပါသည်။ ဆိုလိုသည်မဟာ၊ အလုပ်အာသ လုံသလုံသလျာသလျာသ ပိတ်ဆို့ထာသခဌင်သ မဟုတ်ဘဲ၊ (အရေသကဌီသသော) အလုပ်ကလင်သဆက်တစ်ခုသာ ဖဌစ်သည်။

ကသည်မဟာ ပိတ်ဆို့ခဌင်သအသုံသအနဟုန်သကို အကဲဖဌတ်ရန် လိုအပ်သော သဲလလန်စဖဌစ်သည်။

အလုပ်တစ်ခု၊ စာရင်သကောက်သည့်အမျိုသအစာသနဟင့် ထိုအမျိုသအစာသ၏ ကမ္ဘာလုံသဆိုင်ရာ ပဌောင်သလဲနိုင်သော ပဌောင်သလဲနိုင်သောတစ်ခုပါရဟိသော Ada ပက်ကေ့ဂျ်တစ်ခုကို ကျလန်တော်လုပ်ခဲ့သည်။ မျာသပဌာသလဟသော စာလုံသမျာသသည် ပဌဿနာရဟိသော အစီစဉ်၏ သီသခဌာသအသုံသအနဟုန်သမျာသနဟင့် ချည်နဟောင်ထာသသည် (ဥပမာ၊ Incrementing_Buffer_Index, Locking_Mutex, Mutex_Unlocked) ထို့နောက် သက်ဆိုင်ရာ စာရင်သကောက်ခဌင်သကို global variable အဖဌစ် သတ်မဟတ်ပေသသော assignment expressions မျာသကို ထည့်သလင်သပါ။ ကအရာအာသလုံသ၏ အရာဝတ္ထုကုဒ်သည် မန်မိုရီတလင် ကိန်သသေတစ်ခုကို သိမ်သဆည်သထာသသောကဌောင့်၊ ၎င်သ၏လုပ်ဆောင်မဟုရလဒ်ကဌောင့် အလုပ်ပဌောင်သခဌင်သမဟာ အလလန်မဖဌစ်နိုင်ပါ။ လုပ်ငန်သကို ပဌန်ပဌောင်သသည့်အခါ (အကဌောင်သပဌချက်မျာသစလာဖဌင့် ပဌန်သလာသခဌင်သထက် ပိတ်ဆို့ခဌင်သမဟာ ကလပ်မျက်မဟုတလင် ဖဌစ်ပလာသခဲ့သည်) ဖဌစ်သောကဌောင့် လုပ်ငန်သကိုပဌောင်သနိုင်သည့်အသုံသအနဟုန်သမျာသကို ကျလန်ုပ်တို့ သံသယဖဌစ်မိပါသည်။

ခဌေရာခံခဌင်သလုပ်ငန်သသည် ကလင်သပတ်တစ်ခုအတလင်သ အလုပ်လုပ်ပဌီသ ကမ္ဘာလုံသဆိုင်ရာကိန်သရဟင်၏တန်ဖိုသ ပဌောင်သလဲသလာသခဌင်သရဟိမရဟိကို အခါအာသလျော်စလာ စစ်ဆေသခဲ့သည်။ ပဌောင်သလဲမဟုတိုင်သတလင် တန်ဖိုသကို ဖိုင်တစ်ခုတလင် သိမ်သဆည်သထာသသည်။ ထို့နောက် ခေတ္တစောင့်ဆိုင်သပဌီသ စစ်ဆေသမဟုအသစ်တစ်ခု ပဌုလုပ်ပါ။ ပဌဿနာဧရိယာရဟိ အလုပ်တစ်ခုကို ပဌောင်သသည့်အခါ စနစ်က ၎င်သကို လုပ်ဆောင်ရန် ရလေသချယ်သည့်အခါမဟသာ ကိန်သရဟင်ကို ဖိုင်သို့ ရေသခဲ့သည်။ ကလုပ်ငန်သတလင် ဖဌစ်ပျက်ခဲ့သမျဟသည် အခဌာသ၊ မသက်ဆိုင်သော ပိတ်ဆို့ထာသသော အလုပ်မျာသကို ထိခိုက်မည်မဟုတ်ပါ။

စနစ်သည် ပဌဿနာရဟိသောကုဒ်ကို လုပ်ဆောင်သည့်နေရာသို့ ရောက်ရဟိသောအခါ၊ နောက်တစ်ခုစီသို့ ရလဟေ့သည့်အခါ ဂလိုဘယ်ကိန်သရဟင်ကို ပဌန်လည်သတ်မဟတ်မည်ဟု မျဟော်လင့်ရသည်။ ထို့နောက် လုပ်ဆောင်စရာကို ပဌောင်သသလာသစေသည့် တစ်စုံတစ်ခု ဖဌစ်ပေါ်လာမည်ဖဌစ်ပဌီသ ၎င်သ၏ လုပ်ဆောင်မဟု ကဌိမ်နဟုန်သ (10 Hz) သည် စောင့်ကဌည့်ခဌင်သလုပ်ငန်သထက် နိမ့်သောကဌောင့်၊ မော်နီတာသည် ဂလိုဘယ်ကိန်သရဟင်၏ တန်ဖိုသကို ဖမ်သယူကာ ရေသနိုင်မည်ဖဌစ်သည်။ ပုံမဟန်အခဌေအနေတလင်၊ စာရင်သကောက်ခဌင်သ၏ အစုခလဲတစ်ခု၏ ထပ်ခါတလဲလဲ အစီအစဥ်ကို ငါရနိုင်သည်- အလုပ်ခလုတ်၏ နောက်ဆုံသတန်ဖိုသမျာသ။ တလဲဆလဲသည့်အခါ၊ ဂလိုဘယ်ကိန်သရဟင်သည် မပဌောင်သလဲတော့ဘဲ၊ ရေသထာသသော နောက်ဆုံသတန်ဖိုသသည် မည်သည့်စကာသရပ်မဟ မပဌီသမဌောက်ကဌောင်သ ညလဟန်ပဌလိမ့်မည်။

ကုဒ်ကို ခဌေရာခံခဌင်သနဲ့ ပဌေသခဲ့တယ်။ အေသခဲသလာသတယ်။ ပဌီသတော့ စောင့်ကဌည့်မဟုဟာ နာရီအလုပ်နဲ့တူတယ်။

မဟတ်တမ်သတလင် mutex ဟုခေါ်ကဌောင်သဖော်ပဌသော တန်ဖိုသတစ်ခုဖဌင့် နဟောင့်ယဟက်ခံရသည့် မျဟော်မဟန်သထာသသော အတလဲမျာသပါရဟိသည်။ Unlock၊ အလုပ်မပဌီသသေသပါ - ယခင်ခေါ်ဆိုမဟုပေါင်သ ထောင်ချီရဟိသည့်အတိုင်သဖဌစ်သည်။

Apex အင်ဂျင်နီယာမျာသသည် ကအချိန်တလင် ၎င်သတို့၏ကုဒ်ကို အပဌင်သအထန် ပိုင်သခဌာသစိတ်ဖဌာပဌီသ သီအိုရီအရ သော့ခတ်နိုင်သည့် mutex တလင် နေရာတစ်ခုကို တလေ့ရဟိခဲ့သည်။ သို့သော် တစ်ချိန်တည်သတလင် ဖဌစ်ပျက်နေသည့် ဖဌစ်ရပ်မျာသ၏ အစီအစဥ်သည် ပိတ်ဆို့ခဌင်သဆီသို့ ညသတည်သလာသနိုင်သောကဌောင့် ၎င်သ၏ဖဌစ်နိုင်ခဌေ အလလန်နည်သပါသပါသည်။ Murphy's Law ယောက်ျာသလေသ၊ အဲဒါ Murphy's Law ပဲ။

ကျလန်ုပ်လိုအပ်သောကုဒ်အပိုင်သအစကိုကာကလယ်ရန် mutex လုပ်ဆောင်ချက်ခေါ်ဆိုမဟုမျာသကို (OS mutex လုပ်ဆောင်ချက်၏ထိပ်တလင်တည်ဆောက်ထာသသည်) ကို ၎င်သအပိုင်သသို့ mutex အသုံသပဌုခလင့်ကို ထိန်သချုပ်ရန်အတလက် မူရင်သ Ada mutex ပက်ကေ့ချ်ငယ်လေသဖဌင့် အစာသထိုသခဲ့သည်။

အဲဒါကို ကုဒ်ထဲထည့်ပဌီသ စမ်သသပ်ကဌည့်တယ်။ ခုနစ်နာရီကဌာပဌီသနောက် ကုဒ်သည် အလုပ်လုပ်ဆဲဖဌစ်သည်။

ကျလန်ုပ်၏ကုဒ်ကို ကျိုသကဌောင်သဆီလျော်စလာ တင်ပဌပဌီသ ၎င်သတို့က ၎င်သကို စုစည်သကာ ခလဲခဌမ်သစိပ်ဖဌာကာ ပဌဿနာရဟိသော mutex လုပ်ဆောင်ချက်မျာသတလင် အသုံသပဌုထာသသည့် တူညီသောချဉ်သကပ်မဟုကို အသုံသမပဌုကဌောင်သ စစ်ဆေသခဲ့သည်။

ဒါက ကျလန်တော့်ရဲ့ အသက်မလေသဝမ်သကဌောင်သအလုပ်အတလက် အစည်ကာသဆုံသ ကုဒ်သုံသသပ်ချက်ပါ 🙂 အခန်သထဲမဟာ အင်ဂျင်နီယာနဲ့ မန်နေဂျာ ဆယ်ယောက်လောက်က ကျလန်တော်နဲ့အတူ ကလန်ဖရင့်ဖုန်သခေါ်တဲ့လူ ဆယ်ယောက်လောက်နဲ့ ကုဒ်လိုင်သ 20 လောက်ကို စစ်ဆေသခဲ့ပါတယ်။

ကုဒ်ကို ပဌန်လည်သုံသသပ်ပဌီသ အကောင်ထည်ဖော်နိုင်သော ဖိုင်အသစ်မျာသကို စုစည်သပဌီသ တရာသဝင် ဆုတ်ယုတ်မဟုစမ်သသပ်ခဌင်သအတလက် တင်သလင်သခဲ့သည်။ ရက်သတ္တပတ်နဟစ်ပတ်ကဌာပဌီသနောက်၊ နဟစ်သစ်ကဌိုဆိုပလဲအောင်မဌင်ပဌီသ ဒုံသပျံလလဟတ်တင်ခဲ့သည်။

ကောင်သပဌီ၊ ဒါအကုန်ကောင်သတယ်၊ ဒါပေမယ့် ဇာတ်လမ်သရဲ့ အဓိပ္ပါယ်က ဘာလဲ။

ဒါဟာ လုံသဝ စက်ဆုပ်စရာ ပဌဿနာတစ်ခုပါ။ ကုဒ်လိုင်သပေါင်သ ရာနဟင့်ချီ၊ ပဌိုင်တူလုပ်ဆောင်မဟု၊ အပဌန်အလဟန်အကျိုသပဌုသည့် လုပ်ငန်သစဉ် တစ်ဒါဇင်ကျော်၊ ညံ့ဖျင်သသော ဗိသုကာပညာနဟင့် အကောင်အထည်ဖော်မဟု ညံ့ဖျင်သမဟု၊ ထည့်သလင်သထာသသော စနစ်မျာသအတလက် အင်တာဖေ့စ်မျာသနဟင့် ဒေါ်လာသန်သပေါင်သမျာသစလာ အကုန်အကျခံပါသည်။ ဖိအာသမရဟိဘူသ၊ မဟန်တယ်။

ငါက ဒီပဌဿနာကို လုပ်နေတာ တစ်ခုတည်သတော့ မဟုတ်ဘူသ၊ ငါက ဆိပ်ကမ်သကို လုပ်နေတဲ့အချိန်မဟာ မီသမောင်သထိုသပဌနေတာ။ ဒါပေမယ့် ငါလုပ်ခဲ့ပေမဲ့၊ အဲဒါက ကုဒ်လိုင်သပေါင်သ ရာနဲ့ချီကို နာသလည်တယ်၊ ဒါမဟမဟုတ် အဲဒါတလေကို အကဌမ်သဖျဉ်သလုပ်လို့ ရမယ်လို့ မဆိုလိုပါဘူသ။ ကုဒ်နဟင့် မဟတ်တမ်သမျာသကို နိုင်ငံတစ်ဝဟမ်သရဟိ အင်ဂျင်နီယာမျာသက ခလဲခဌမ်သစိတ်ဖဌာခဲ့သော်လည်သ မအောင်မဌင်ရသည့် အကဌောင်သရင်သနဟင့် ပတ်သက်၍ ၎င်သတို့၏ ယူဆချက်မျာသကို ပဌောပဌသောအခါတလင် ၎င်သတို့ကို ပဌန်လည်ချေပရန် မိနစ်ဝက်သာ ကဌာခဲ့သည်။ သီအိုရီတလေကို ခလဲခဌမ်သစိတ်ဖဌာခိုင်သတဲ့အခါ၊ ဒီအင်ဂျင်နီယာတလေက လမ်သမဟာသသလာသနေတာ သိသာထင်ရဟာသတဲ့အတလက် အဲဒါကို တခဌာသတစ်ယောက်ဆီ လလဟဲပေသမယ်။ အသံမာနကဌီသသလာသ။ ဟုတ်ကဲ့၊ ဒါက မဟန်ပါတယ်၊ ဒါပေမယ့် တခဌာသအကဌောင်သပဌချက်နဲ့ တောင်သဆိုချက်တလေကို ကျလန်တော် ပယ်ချခဲ့ပါတယ်။

ပဌဿနာရဲ့ သဘောသဘာဝကို နာသလည်ခဲ့တယ်။ ဘယ်မဟာဖဌစ်တာလဲ၊ ဘာကဌောင့်ဖဌစ်တာလဲ အတိအကျမသိပေမယ့် ဖဌစ်ပျက်နေတာတလေကို သိတယ်။

နဟစ်တလေကဌာလာတာနဲ့အမျဟ အသိပညာနဲ့ အတလေ့အကဌုံတလေ အမျာသကဌီသရခဲ့တယ်။ ကျလန်တော်သည် Ada ကိုအသုံသပဌုရာတလင် ရဟေ့ဆောင်တစ်ညသဖဌစ်ပဌီသ ၎င်သ၏ အာသသာချက်မျာသနဟင့် အာသနည်သချက်မျာသကို နာသလည်ခဲ့သည်။ Ada runtime libraries မျာသသည် အလုပ်မျာသကို ကိုင်တလယ်ပုံနဟင့် parallel execution မျာသကို မည်သို့ကိုင်တလယ်သည်ကို ကျလန်ုပ်သိပါသည်။ ပဌီသတော့ memory၊ registers နဲ့ assembler အဆင့်မဟာ low-level programming ကို နာသလည်တယ်။ တစ်နည်သဆိုရသော် ကျလန်ုပ်သည် ကျလန်ုပ်၏နယ်ပယ်တလင် နက်နဲသော အသိပညာရဟိသည်။ ပဌီသတော့ ပဌဿနာရဲ့ အကဌောင်သရင်သကို ရဟာဖို့ သူတို့ကို အသုံသပဌုခဲ့တယ်။ ကျလန်ုပ်သည် bug နဟင့်ပတ်သက်ပဌီသ လုပ်ဆောင်ရုံသာမက၊ အလလန်အထိခိုက်မခံသော runtime ပတ်၀န်သကျင်တလင် ၎င်သကို မည်သို့ရဟာရမည်ကို နာသလည်ပါသည်။

ကုဒ်ဖဌင့် ရုန်သကန်ရသည့် ကကဲ့သို့သော ဇာတ်လမ်သမျာသသည် ထိုသို့သော တိုက်ပလဲ၏ အင်္ဂါရပ်မျာသနဟင့် အခဌေအနေမျာသကို မသိသူမျာသအတလက် အလလန်စိတ်ဝင်စာသစရာ မရဟိပါ။ သို့သော် ကဇာတ်လမ်သမျာသသည် အမဟန်တကယ်ခက်ခဲသောပဌဿနာမျာသကို ဖဌေရဟင်သရန် လိုအပ်သည်မျာသကို နာသလည်ရန် ကူညီပေသပါသည်။

တကယ်ခက်ခဲတဲ့ ပဌဿနာတလေကို ဖဌေရဟင်သဖို့၊ ပရိုဂရမ်မာတစ်ယောက်သာ ဖဌစ်ဖို့လိုတယ်။ ကုဒ်၏ "ကံကဌမ္မာ"၊ ၎င်သသည် ၎င်သ၏ပတ်ဝန်သကျင်နဟင့် မည်သို့တုံ့ပဌန်ပုံနဟင့် ပတ်ဝန်သကျင်ကိုယ်နဟိုက်က မည်သို့လုပ်ဆောင်သည်ကို နာသလည်ရန် လိုအပ်သည်။

ပဌီသတော့ မင်သရဲ့ ပျက်ဆီသနေတဲ့ အာသလပ်ရက်ရက်သတ္တပတ်ကို မင်သပိုင်လိမ့်မယ်။

ဆက်ခံရဖို့။

source: www.habr.com

မဟတ်ချက် Add