日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > > 半導(dǎo)體快評(píng)
[導(dǎo)讀]這幾天適逢人類登月50周年,1969年的今天美國(guó)阿波羅11號(hào)飛船成功在月球著陸,正如首個(gè)登月的宇航員阿姆斯特朗所說(shuō)——這是個(gè)人的一小步,但是人類的一大步。


這幾天適逢人類登月50周年,1969年的今天美國(guó)阿波羅11號(hào)飛船成功在月球著陸,正如首個(gè)登月的宇航員阿姆斯特朗所說(shuō)——這是個(gè)人的一小步,但是人類的一大步。面對(duì)阿波羅11號(hào)登月50周年這個(gè)大熱點(diǎn),不少公司、組織、個(gè)人也從多個(gè)角度來(lái)紀(jì)念這一偉大的日子,NVIDIA發(fā)布了一段使用光線追蹤技術(shù)渲染的登月Demo,不僅效果出色,還從光線渲染的角度證明了登月不是騙局。


1969 年 7 月 20 日,“阿波羅 11 號(hào)”飛船登月,宇航員尼爾·阿姆斯特朗(Neil Armstrong)成功踏上月球表面,標(biāo)志著人類第一次踏上月球,完成重要的一步:“這對(duì)個(gè)人來(lái)說(shuō)是一小步,對(duì)人類來(lái)說(shuō)卻是一大步。


2019 年 7 月 20 日的今天,正是人類登月 50 周年。


這兩天,Apollo-11的源碼項(xiàng)目一直占據(jù) GitHub 熱榜第一,目前已獲得 37,000+ 個(gè)Star。



其實(shí) Apollo-11 并非是沖著在這 50 周年才開源,早在 2014 年便有第一次的代碼 commit,并在 2016 年開源。目前已累計(jì)超過(guò) 300 次commit,有近5000 個(gè) Fork。??

?


這些代碼是阿波羅11號(hào)制導(dǎo)計(jì)算機(jī)(AGC)中指令模塊(Comanche055)和登月模塊(Luminary099)原始代碼,這個(gè)項(xiàng)目的目的是存儲(chǔ)阿波羅 11 號(hào)原始代碼。



此外,虛擬AGC和麻省理工科學(xué)博物館將阿波羅導(dǎo)航計(jì)算機(jī)(AGC)中的指令模塊Comanche055、登月模塊Luminary099的原始代碼公布在了GitHub上,任何人均可自由查閱、編譯。


考慮到阿波羅工程的龐大及復(fù)雜,阿波羅11號(hào)的源代碼開源更多地是象征意義,其他人或者組織也不可能根據(jù)這個(gè)源碼搞自己的登月飛船。


也許正是因?yàn)檫@樣,阿波羅11號(hào)開源之后很快就有了許多issue(可以看做對(duì)源碼的提問(wèn)或者評(píng)論,雖然本質(zhì)上不是這個(gè)作用),而且中文占了絕大多數(shù),中文程序員們把阿波利11號(hào)源碼issue當(dāng)作了一個(gè)評(píng)論區(qū)。


這些評(píng)論大多不是惡意的,主要是調(diào)侃、跟風(fēng)、吐槽、灌水,但總的來(lái)說(shuō)這些評(píng)論更多地是國(guó)內(nèi)微博、貼吧的風(fēng)格,完全看不出與阿波羅11號(hào)源碼有什么關(guān)系。


Github作為全球最主要的代碼托管平臺(tái),一直被程序員自嘲為最大同性交友社區(qū),如今里面不嚴(yán)肅不正經(jīng)的東西越來(lái)越多,這也是很多人對(duì)Github不滿的地方。


前兩天還有國(guó)外的程序員發(fā)文表示Github上有太多中文項(xiàng)目,GitHub Trending幾乎被被思中國(guó)人霸榜了,這些項(xiàng)目有的連注釋都是中文的,國(guó)外程序員大部分看不懂,所以這事導(dǎo)致一些國(guó)外程序員很無(wú)奈。


當(dāng)然,這位小哥的文章態(tài)度OK,不是為了噴中文程序員,而是提出了Github上的一個(gè)管理問(wèn)題,確實(shí)值得官方思考和改進(jìn)。



除了代碼還有笑料和吐槽


上世紀(jì)60年代中期,麻省理工學(xué)院(MIT)儀器實(shí)驗(yàn)室的程序員們?yōu)榘⒉_11號(hào)登月計(jì)劃開發(fā)飛行控制軟件,由于當(dāng)時(shí)還沒有開發(fā)軟件所需要的技術(shù)積累,所以他們必須自己打造一套體系出來(lái)。


他們提出了一種存儲(chǔ)計(jì)算機(jī)程序的新方法,名為“線存儲(chǔ)器”,并創(chuàng)造了一種特殊版本的匯編語(yǔ)言。對(duì)于現(xiàn)今的很多程序員來(lái)說(shuō),匯編語(yǔ)言晦澀難懂,其目的是方便計(jì)算機(jī)理解,而不是便于人類理解。MIT的程序員們?yōu)榘⒉_制導(dǎo)計(jì)算機(jī)(AGC)編寫了成千上萬(wàn)行的那種深?yuàn)W代碼。


從下圖中,可以直觀地感受到他們到底寫了多少代碼。圖為阿波羅登月計(jì)劃軟件工程主管瑪格麗特·漢密爾頓(Margaret Hamilton),她旁邊是一大堆的AGC代碼文件。



AGC代碼其實(shí)早已公之于眾,最初是由技術(shù)研究員羅恩·伯基(Ron Burkey)在2003年上傳到網(wǎng)絡(luò)。他根據(jù)MIT在網(wǎng)上發(fā)布的原始硬拷貝的掃描件進(jìn)行了轉(zhuǎn)錄,也就是一行一行地手動(dòng)打出來(lái)。


“掃描的人是一名叫做加里·內(nèi)夫(Gary Neff)的飛行員,”伯基在電子郵件中寫道,“MIT得到了掃描件,把它們以網(wǎng)頁(yè)圖片的形式放上網(wǎng)。但不幸的是,在此過(guò)程中,那些圖片遭到損壞,有些地方無(wú)法看清?!辈闷涔こ讨R(shí)查漏補(bǔ)缺,恢復(fù)了無(wú)法看清的部分。


“一段時(shí)間過(guò)后,我從加里·內(nèi)夫那里拿到了備用掃描件,對(duì)無(wú)法看清的部分進(jìn)行了核實(shí),幸運(yùn)地發(fā)現(xiàn)我恢復(fù)的部分完全正確!”他說(shuō)。


這使那些想要探究AGC代碼的研究員和愛好者如獲至寶。伯基本人甚至利用AGC代碼創(chuàng)造了一個(gè)模仿品。


盡管伯基付出了巨大的努力,成功地重現(xiàn)了無(wú)法看清的部分,但對(duì)于當(dāng)今的很多軟件開發(fā)者來(lái)說(shuō),AGC代碼本身仍然有點(diǎn)晦澀難懂,直到7月7日那天,曾在NASA實(shí)習(xí)的克里斯·加里(Chris Garry)將AGC代碼完整地上傳到代碼共享網(wǎng)站GitHub。如今,光顧該網(wǎng)站的程序員數(shù)不勝數(shù)。


幾小時(shí)內(nèi),程序員們開始研究AGC代碼,尤其是AGC原始編程者撰寫的代碼注釋。代碼注釋是用簡(jiǎn)單直白的語(yǔ)言描述某個(gè)特定時(shí)刻執(zhí)行的任務(wù)。Reddit網(wǎng)站程序員吐槽欄目的讀者們?cè)谡覙?lè)子方面一向敏銳,他們發(fā)現(xiàn)AGC代碼的很多注釋并不是對(duì)代碼本身的枯燥解釋,其中充滿了有趣的笑料和訊息,以及上世紀(jì)60年代的很多人和事。


例如,一份源代碼文件名為“BURN_BABY_BURN--MASTER_IGNITION_ROUTINE”(燃燒吧,寶貝,燃燒吧——控制點(diǎn)火程序),開頭的注釋(下圖)這樣寫到:“燃燒吧,寶貝,燃燒吧”可追溯到1965年的洛杉磯騷亂,當(dāng)時(shí)著名DJ、電臺(tái)所有者“偉大的蒙塔古”(Magnificent Montague)在打碟時(shí)使用了這句話。偉大的蒙塔古是上世紀(jì)50年代中期至60年代中期,在芝加哥、紐約和洛杉磯極富感召力的靈歌代表人物。



以下這段代碼也出自控制點(diǎn)火程序,第一行寫著“你好啊”,最后一行寫著“拜拜,歡迎再來(lái)哦”。從中可以體會(huì)到AGC原始編程團(tuán)隊(duì)有多愛玩。



在名為“LUNAR_LANDING_GUIDANCE_EQUATIONS.s”(月球著陸制導(dǎo)等式)的文件中,程序員希望其中的兩行代碼是暫時(shí)的,結(jié)果卻成了永久的。



也是在那份文件中,出現(xiàn)了讓宇航員“轉(zhuǎn)動(dòng)那個(gè)蠢東西”的注釋。



“那是指轉(zhuǎn)動(dòng)著陸雷達(dá)的天線,”伯基解釋說(shuō),“我覺得那是在提醒宇航員調(diào)整天線。”


在被描述為“AGC和計(jì)算機(jī)操作員之間的鍵盤和顯示系統(tǒng)交互程序”的“PINBALL_GAME_BUTTONS_AND_LIGHTS.s”(彈珠游戲按鈕和顯示)文件中,甚至出現(xiàn)了莎士比亞名著《亨利六世》中的一段話:“我要徑直向你指出,你任用了許多人,讓他們大談什么名詞呀,什么動(dòng)詞呀,以及這一類的可惡字眼兒,這都是任何基督徒的耳朵所不能忍受的?!?br />



Reddit網(wǎng)站的一位用戶指出,這可能是在吐槽AGC的編程語(yǔ)言。這種編程語(yǔ)言利用預(yù)先確定的“名詞”和“動(dòng)詞”來(lái)執(zhí)行操作。例如,動(dòng)詞37代表“運(yùn)行程序”,名詞33代表“點(diǎn)火時(shí)間”。


既然AGC代碼已經(jīng)在GitHub網(wǎng)站上公布,程序員們現(xiàn)在能夠提出問(wèn)題和修改建議了。他們當(dāng)然不會(huì)錯(cuò)過(guò)機(jī)會(huì)。一位程序員提出了一個(gè)問(wèn)題,說(shuō)“低溫貯罐發(fā)生了非常嚴(yán)重的電路故障”,并列出了再現(xiàn)這個(gè)問(wèn)題的步驟。他補(bǔ)充道,“要小心,這可能對(duì)測(cè)試者造成危險(xiǎn)?!被貜?fù)非常熱烈。


一位用戶說(shuō),問(wèn)題可能不在于代碼,而在于其他方面:


“是不是只發(fā)生在月球轉(zhuǎn)移軌道(sol-3-a)上?還是在所有的月球軌道上都會(huì)發(fā)生?問(wèn)題可能出在月球。試著縮小問(wèn)題的范圍。”


另一位用戶談到了基本操作:


“你有沒有試過(guò)關(guān)閉后重啟?”


一位程序員認(rèn)為可能只是軟件需要更新:


“阿波羅14號(hào)解決了這個(gè)問(wèn)題?!?/span>


不重要的登月代碼才開源?


可能會(huì)有人認(rèn)為,能開源的登月代碼應(yīng)該不算是重要的代碼。實(shí)際上并不是的。那么 AGC 究竟是什么?


阿波羅制導(dǎo)計(jì)算機(jī)(AGC)于上世紀(jì) 60 年代由美國(guó)國(guó)家航空航天局(NASA )開發(fā),主要用來(lái)控制阿波羅宇宙飛船上的導(dǎo)航與制導(dǎo)系統(tǒng)。


阿波羅號(hào)太空船實(shí)際上是兩種不同的航天器,分為指揮艙(CM)和登月艙(LM)。指揮艙是用來(lái)讓三名宇航員登上月球,然后再接回來(lái)。登月艙是用于承載兩名在月球行走的宇航員,而第三名宇航員則留在指揮艙中,繞月球軌道運(yùn)行。


所以說(shuō)在人類第一次登月的三位宇航員里,只有前兩位宇航員阿姆斯特朗和巴茲·奧爾德林(Buzz Aldrin) 真正地在月球行走,第三位邁克爾·科林斯(Michael Collins)則是坐在飛船里執(zhí)行任務(wù)。


無(wú)論是否有宇航員的協(xié)助,每個(gè)航天器都需要能夠在太空中航行,因此需要有一個(gè)“制導(dǎo)系統(tǒng)”。該指導(dǎo)系統(tǒng)由麻省理工學(xué)院的儀器實(shí)驗(yàn)室開發(fā),這個(gè)制導(dǎo)系統(tǒng)的一個(gè)重要部分是阿波羅制導(dǎo)計(jì)算機(jī)——“AGC”。


在阿波羅任務(wù)中,有兩個(gè) AGC,一個(gè)用于指導(dǎo)艙,一個(gè)用于登月艙。這兩個(gè)AGC 是相同且可互換的,但它們運(yùn)行不同的軟件,因?yàn)楹教炱鲌?zhí)行的任務(wù)是不同的。

此外,由 AGC 運(yùn)行的軟件隨著時(shí)間的推移而發(fā)展,所以在后來(lái)的任務(wù)中使用的AGC 軟件(如 Apollo 17)與早期的任務(wù)(如 Apollo 8)略有不同。


所以說(shuō),這份源碼還是很重要的。


在該項(xiàng)目里,還列出當(dāng)時(shí)參與編寫這些代碼的程序員:??



正因?yàn)橛辛诉@些程序員,我們才完成在科學(xué)上重要的“一大步”!


驚心動(dòng)魄的登月時(shí)刻,這位女程序員拯救了所有!


阿波羅 11 號(hào)登月的過(guò)程并不如阿姆斯特朗登月時(shí)那“輕松”的一步,而是驚險(xiǎn)萬(wàn)分!如果沒有這位女程序員,可能就阿波羅就無(wú)法成功登月了。


她就是瑪格麗特·希菲爾德·漢密爾頓(Margaret Heafield Hamilton),在美國(guó)媒體 IT World 評(píng)選“在世的世界上最偉大程序員”中,瑪格麗特排名第一。

一開始為了貼補(bǔ)家用,瑪格麗特成為實(shí)驗(yàn)室臨時(shí)編碼員,后因工作出色,被推薦去了 NASA。


當(dāng)時(shí)她帶領(lǐng)團(tuán)隊(duì)為阿波羅登月計(jì)劃做后備方案,由于大家是奔著成功去的,所以她負(fù)責(zé)是最不受重視的部分:萬(wàn)一任務(wù)失敗之后的后備方案。


但瑪格麗特依然認(rèn)真地用模擬器模擬飛行狀態(tài),檢查系統(tǒng)漏洞。


可沒想到阿波羅 11 號(hào)飛船準(zhǔn)備正式登陸月球前幾分鐘,雷達(dá)發(fā)來(lái)的大量的數(shù)據(jù)涌入計(jì)算機(jī)存儲(chǔ)區(qū),讓系統(tǒng)近乎崩潰,飛船將在月球墜毀,宇航員已做好犧牲的準(zhǔn)備。


幸好有瑪格麗特編寫的后背方案軟件抗住了壓力:在大量錯(cuò)誤數(shù)據(jù)突然涌入,計(jì)算機(jī)不堪重負(fù)是因?yàn)檫M(jìn)行了一系列不必要的計(jì)算,事實(shí)上最重要的資源應(yīng)該用在安全登錄上,其他不重要的任務(wù)將終止。


這就是她后來(lái)提出的“異步處理”概念。


正因?yàn)橛辛诉@樣優(yōu)秀嚴(yán)謹(jǐn)?shù)某绦騿T,人類才能完成第一次登月。后為了表彰她在登月計(jì)劃中的貢獻(xiàn),奧巴馬授予她“自由獎(jiǎng)?wù)隆薄?br />



-END-

半導(dǎo)體快評(píng)

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見,不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉