張元
大型機是一項基礎(chǔ)技術(shù),幾十年來一直為行業(yè)提供動力,包括政府、金融、醫(yī)療和交通。有很多社區(qū)都在圍繞該平臺解決技術(shù)難題,正因如此,在很多社區(qū)的幫助下,為大型機新技術(shù)的出現(xiàn)鋪平了道路,如今大型機技術(shù)正在深入擁抱開源。
開放式大型機社區(qū)的起源
大型機有一個開放用戶社區(qū)的傳統(tǒng),可以追溯到1950年代的SHARE。一群大型機技術(shù)人員聚集在洛杉磯,分享技巧、見解以及新發(fā)布的IBM701計算機系統(tǒng)的代碼。SHARE很可能是第一個開源軟件社區(qū)。
多年來,該社區(qū)用戶定期開會,共享和協(xié)作使用IBM701和后續(xù)系統(tǒng)。匯集在一起的代碼在大型機運營商和開發(fā)人員之間自由共享。隨著時間的流逝,人們很快意識到有必要將這些代碼整理出來,放在一個存儲庫中提供給更多其他行業(yè)的技術(shù)人員使用。
Arnie Casinghino是最早意識到合作必要性的人之一。1975年,他開始為CBT Tape項目編寫腳本和工具。當時感興趣的用戶會用幾美元給Arnie寄一封信來索取磁帶,這種分發(fā)方式一直延續(xù)到今天,讓大多數(shù)用戶從他們的網(wǎng)站下載最新版本。
Casinghino的愿景最終形成了一個項目,該項目今天仍在繼續(xù),現(xiàn)在在Sam Golab的領(lǐng)導(dǎo)下托管在開放大型機項目中。
Linux進入大型機
Linux在1990年代開始風(fēng)靡全球,一小群大型機愛好者開始在IBM System 390上試驗Linux。在過去的20年中,日立和富士通等公司也投資在其大型機平臺上啟用開源和Linux。大型機上的Linux于1999年12月18日正式啟動,IBM發(fā)布了Linux2.2.13內(nèi)核的補丁和補充集。
2000年為大型機上的Linux帶來了動力。這些系統(tǒng)的第一個真正的“Linux發(fā)行版”是在2000年初由Marist College和Millenux合作推出。到2000年10月,SUSE成為第一個供應(yīng)商支持的Linux發(fā)行版,這是現(xiàn)在稱為SUSE Enterprise Linux的第一個版本。SUSE的第一個s390x發(fā)行版代表了大型機引領(lǐng)計算技術(shù)發(fā)展的早期例子。
今天,9個已知的Linux發(fā)行版目前提供s390x架構(gòu)。
大型機作為Linux平臺的擴展,繼續(xù)在開放大型機項目中得到培育,下面的關(guān)鍵項目幫助大型機上的Linux繼續(xù)成為全球財富100強公司使用的平臺。
Feilong,提供z/VM與OpenStack等現(xiàn)代云堆棧系統(tǒng)之間的接口,由IBM、SUSE等公司聯(lián)合開發(fā)。
Tessia,是一個工具,可以自動化和簡化在Z平臺上運行的Linux系統(tǒng)的安裝、配置和測試。
COBOL的發(fā)展
COBOL是一種經(jīng)過編譯的類似英語的計算機編程語言,被開發(fā)用作商業(yè)應(yīng)用程序語言。它的根源可以追溯到1950年代,并且COBOL經(jīng)常用于許多行業(yè)的關(guān)鍵應(yīng)用程序。
由于空前數(shù)量的失業(yè)申請和其他類似需求,2020年4月的新型冠狀病毒疫情行給各政府服務(wù)帶來了巨大壓力。這使COBOL成為人們關(guān)注的焦點,因為它當時是用于這些系統(tǒng)的主要技術(shù)。這也凸顯了缺乏支持這些系統(tǒng)的人才,這些系統(tǒng)的代碼可以追溯到1960年代。
龐大的COBOL和大型機社區(qū)迅速滿足了這一需求,并做出了一些努力來為COBOL提供一個可持續(xù)的生態(tài)。
召集所有COBOL程序員論壇:一個開放的大型機項目論壇,希望自愿參與的開發(fā)人員和程序員可以在此發(fā)布他們的個人資料以供雇用。無論他們是正在積極尋找工作、希望繼續(xù)參與的退休技術(shù)人員、已完成COBOL課程的學(xué)生,還是希望成為志愿者的專業(yè)人士,該論壇都為求職者提供了機會,讓他們指定自己的專業(yè)水平和可提供的幫助。然后,雇主可以根據(jù)需要與這些人聯(lián)系。
COBOL技術(shù)論壇:一個專門為解決COBOL技術(shù)問題而創(chuàng)建的新論壇,經(jīng)驗豐富的COBOL程序員可以在其中操作。該論壇允許所有程序員快速學(xué)習(xí)新技術(shù)并從廣泛的社區(qū)專業(yè)知識中汲取經(jīng)驗,以解決在這個非常時期的常見問題和挑戰(zhàn)。
開源COBOL培訓(xùn):開放大型機項目技術(shù)咨詢委員會已批準托管一個新的開源項目,該項目將領(lǐng)導(dǎo)協(xié)作創(chuàng)建COBOL培訓(xùn)材料。該課件由IBM基于其與客戶和高等教育機構(gòu)的合作貢獻,并在開源許可下提供。
通過上述這些舉措,以應(yīng)對構(gòu)建可持續(xù)COBOL生態(tài)系統(tǒng)的長期挑戰(zhàn)。
2021年初,隨著COBOL Check項目的啟動,注意力轉(zhuǎn)向了COBOL開發(fā)人員的工具生態(tài)系統(tǒng)。該計劃通過提供單元測試框架實現(xiàn)COBOL的測試驅(qū)動開發(fā)實踐。
推動大型機未來發(fā)展范式
傳統(tǒng)上,企業(yè)面臨著將大型機應(yīng)用程序和數(shù)據(jù)與自身系統(tǒng)集成的挑戰(zhàn)。這項集成任務(wù)進一步帶來了人才培養(yǎng)挑戰(zhàn),因為大型機和其他企業(yè)計算系統(tǒng)之間的范式差異使技能不易轉(zhuǎn)移。
Broadcom、IBM和Rocket Software看到了這一挑戰(zhàn),并獨立開發(fā)了各種框架來縮小與大型機開發(fā)經(jīng)驗的差距。包括:
API中介層,用于標準化大型機應(yīng)用程序和服務(wù)的API體驗;
可以在開發(fā)人員的電腦或其他非大型機系統(tǒng)上運行并用于DevOps工具集成的CLI工具;
一個Web桌面界面,可以更輕松地開發(fā)基于Web的應(yīng)用程序,這些應(yīng)用程序使用通用開發(fā)工具包來利用大型機服務(wù)和數(shù)據(jù)。
這些組件于2018年8月在Zowe中匯集在一起,這是第一個針對z/OS操作系統(tǒng)啟動的開源項目。將該項目納入供應(yīng)商中立的開放式大型機項目的目的是將Zowe確立為大型機系統(tǒng)的主要開發(fā)和集成工具,從而使Zowe周圍的大型機社區(qū)保持一致。
Zowe1.0于2019年2月發(fā)布后,該項目迅速轉(zhuǎn)向通過在2019年8月建立Zowe Conformance Program來使供應(yīng)商產(chǎn)品的下游生態(tài)系統(tǒng)蓬勃發(fā)展。迄今為止,已有來自6個不同供應(yīng)商的50多個Zowe Conformant產(chǎn)品應(yīng)用在大型機行業(yè)。
此外,Zowe已將新項目納入其范圍,截至2021年8月,孵化器項目如下:
ZEBRA,它提供符合行業(yè)標準的JSON格式的RMF/SMF數(shù)據(jù)記錄,以便許多其他ISV軟件和用戶可以通過多種方式使用開源軟件;
Workflow WiZard,幫助開發(fā)人員和系統(tǒng)程序員簡化z/OSMF工作流的生成和管理。
如今,Zowe擁有300多名貢獻者,截至2021年8月,貢獻超過34 000。
支持未來大型機的指導(dǎo)
開放大型機項目的最初舉措之一是建立一條將學(xué)生納入大型機社區(qū)的途徑,與當前對開源開發(fā)的興趣保持一致。此外,隨著平臺上開源的增長,這些項目的維護人員需要具備大型機技能。
開放大型機項目于2016年啟動了第一個導(dǎo)師計劃,有7名學(xué)生為大型機上的開源生態(tài)系統(tǒng)做出了貢獻。迄今為止,已有50多名學(xué)員參與了該計劃,為以下項目做出了重要貢獻:Alpine Linux,HyperLedger,Kubernetes,CloudFoundry,Open Stack。
2021年夏天,開放大型機項目迎來了創(chuàng)紀錄的14名學(xué)員,他們在多個項目中擁有導(dǎo)師,其中包括一些新項目,例如ATOM、COBOL編程課程、COBOL工作組、大型機開放教育、Polycephaly、軟件發(fā)現(xiàn)工具和Zowe等。
導(dǎo)師計劃讓這些學(xué)生成為未來大型機人才的一部分,導(dǎo)師畢業(yè)生現(xiàn)在在ADP、IBM、SUSE和其他公司擔任開發(fā)人員角色。
大型機的未來是光明的
隨著開放大型機項目的啟動和行業(yè)在COBOL,Linux on System Z,z/OS生態(tài)系統(tǒng)中的關(guān)鍵開源項目中聯(lián)合起來,大型機在過去5年中出現(xiàn)了復(fù)蘇。截至2021年8月,開放大型機項目擁有20多個項目和工作組,得到超過45個組織的支持,而且短期內(nèi)沒有放緩的跡象。