久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

程序員該如何轉(zhuǎn)型 5G 開發(fā)?

 掃地僧一一 2019-08-11
圖片
作者 | COCO
責(zé)編 | 胡雪蕊
出品 | CSDN (CSDNnews)
最近聽了幾位社招新進(jìn)同事的述職,,問了他們同樣一個(gè)問題:從原來的軟件開發(fā)崗位轉(zhuǎn)到現(xiàn)在的5G開發(fā),你們覺得最大的難點(diǎn)在哪里,?幾位新同事紛紛表示:感覺自己要補(bǔ)課的內(nèi)容實(shí)在是太多了,,操作系統(tǒng)、網(wǎng)絡(luò)協(xié)議,,到處都是難點(diǎn),。
其實(shí)這幾位同事的經(jīng)歷和遇到的問題都非常有代表性:由于做開發(fā)不懂業(yè)務(wù),故大部分碼農(nóng)都是一顆顆螺絲釘,,鉚在自己的那一點(diǎn)點(diǎn)領(lǐng)域上使勁往下鉆,而對(duì)整體架構(gòu)幾乎一無(wú)所知,,導(dǎo)致自己的專業(yè)面非常窄,技術(shù)水平也比較浮于表面,。
對(duì)這些已經(jīng)擁有3-5年經(jīng)驗(yàn)的程序員而言,,轉(zhuǎn)型到5G開發(fā)并沒有想象中那么遙不可及,當(dāng)然也并不輕松,。
所幸他們已經(jīng)入門了,因此,,我們覺得普通碼農(nóng)轉(zhuǎn)型5G開發(fā)是可行且有跡可循的,。所以這次就來談一談5G開發(fā)所需的主要技能和推薦理由,,此篇可以作為各位有志于轉(zhuǎn)型5G開發(fā)的碼農(nóng)們參考,也歡迎各位大牛多多指正,。
熟悉 Linux 操作系統(tǒng)
必須要熟悉Linux操作系統(tǒng)及具備Linux開發(fā)的經(jīng)驗(yàn),,當(dāng)然常用的調(diào)試手段也要熟練掌握,。
5G 承載的業(yè)務(wù)種類繁多,,業(yè)務(wù)特征各不相同,,對(duì)網(wǎng)絡(luò)要求不同。業(yè)務(wù)需求多樣性給5G 網(wǎng)絡(luò)規(guī)劃和設(shè)計(jì)帶來了新的挑戰(zhàn),,包括網(wǎng)絡(luò)功能、架構(gòu),、資源、路由等多方面的定制化設(shè)計(jì)挑戰(zhàn),。
因此,,5G網(wǎng)絡(luò)采用NFV/SDN,、云原生技術(shù)實(shí)現(xiàn)網(wǎng)絡(luò)虛擬化、云化部署,而NFV技術(shù)則是5G開發(fā)必選No.1,。
NFV追本溯源:以往通信網(wǎng)絡(luò)設(shè)備均采用專用設(shè)備,網(wǎng)元功能與硬件平臺(tái)緊耦合,,即不同廠家,、不同類型網(wǎng)元采用不同的硬件,。在通信網(wǎng)絡(luò)3G、4G,、5G新技術(shù)頻繁變革下,,由于網(wǎng)元與硬件平臺(tái)緊耦合的關(guān)系,造成大量硬件資源浪費(fèi),,也不利于新業(yè)務(wù)部快速署,。
網(wǎng)絡(luò)設(shè)備價(jià)格長(zhǎng)期居高不下,,電信運(yùn)營(yíng)商自然壓力山大;同時(shí)供應(yīng)商一家獨(dú)大,,運(yùn)營(yíng)商也不愿意受制于人,;再加上各類專用設(shè)備不斷增長(zhǎng)的運(yùn)維和管理成本,實(shí)現(xiàn)軟硬件解耦的網(wǎng)絡(luò)功能虛擬化(NFV)技術(shù)這位英雄來拯救通信行業(yè)了,。
NFV技術(shù)的實(shí)現(xiàn)原理是通過使用x86等通用性硬件以及虛擬化技術(shù),來承載各類功能的軟件處理,。而這些通用X86平臺(tái)的操作系統(tǒng)當(dāng)仁不讓就是Linux系統(tǒng)了,。
Linux的特點(diǎn)是什么,?是多用戶,、多任務(wù)、支持多線程和多CPU的操作系統(tǒng),。既然5G開發(fā)的系統(tǒng)環(huán)境少不了Linux,,下面就是學(xué)習(xí)重點(diǎn)了:比如什么是多態(tài),?線程和進(jìn)程的區(qū)別,?為什么要使用多線程?這都是linux基礎(chǔ)知識(shí),、也是Linux內(nèi)核開發(fā)必須掌握的要點(diǎn)。
舉個(gè)例子,,出現(xiàn)段錯(cuò)誤,有哪幾種調(diào)試手段,?如何避免,?凡是多往深處想一想,,要知道程序設(shè)計(jì)做的不好真的會(huì)害人害己,光填坑就能累死一群碼農(nóng),。
另外不能不提的還有epoll,,它是Linux內(nèi)核為處理大批量文件描述符而作了改進(jìn)的poll,,是Linux下多路復(fù)用IO接口select/poll的增強(qiáng)版本,,能顯著提高程序在大量并發(fā)連接中只有少量活躍的情況下的系統(tǒng)CPU利用率,。
雖然select,、poll,,epoll本質(zhì)上都是同步I/O,,但epoll只要從用戶態(tài)往內(nèi)核態(tài)拷貝1次fd集合,,在設(shè)備等待隊(duì)列上也只掛1次current;而select和poll每次調(diào)用都要從用戶態(tài)往內(nèi)核態(tài)拷貝1次fd集合,,在設(shè)備等待隊(duì)列中掛1次current,;所以epoll相比select和poll節(jié)省了大量系統(tǒng)開銷,。
還有,select,,poll實(shí)現(xiàn)需要自己不斷輪詢所有fd集合,,直到設(shè)備就緒,期間可能要睡眠和喚醒多次交替,。
而epoll盡管也需要調(diào)用epoll_wait不斷輪詢就緒鏈表,,期間也可能多次睡眠和喚醒交替,,但是它是在設(shè)備就緒時(shí)調(diào)用回調(diào)函數(shù),,把就緒fd放入就緒鏈表中,并喚醒在epoll_wait中進(jìn)入睡眠的進(jìn)程,。
雖然都要睡眠和交替,,但是select和poll在“醒著”的時(shí)候要遍歷整個(gè)fd集合,而epoll在“醒著”的時(shí)候只要判斷一下就緒鏈表是否為空就好,,從而節(jié)省了大量的CPU時(shí)間,,這就是回調(diào)機(jī)制帶來的性能提升。
總之,,作為開發(fā)人員,,不僅要知其然還要知其所以然。
編程知識(shí)儲(chǔ)備
具備扎實(shí)的計(jì)算機(jī)基礎(chǔ),,較強(qiáng)的算法能力,,熟練掌握C\C 等開發(fā)語(yǔ)言,熟悉敏捷開發(fā)流程,。
計(jì)算機(jī)基礎(chǔ),、算法能力,這些都是碼農(nóng)們的基本技能,,《計(jì)算機(jī)原理》,、《數(shù)據(jù)結(jié)構(gòu)》等等都是大學(xué)理工科的經(jīng)典課程,不記得了可以再回去翻一下,在此不做贅述,。敏捷開發(fā)是當(dāng)下比較流行的高效開發(fā)模式,,以用戶的需求進(jìn)化為核心,采用迭代,、循序漸進(jìn)的方法進(jìn)行軟件開發(fā),,這方面的文章也很多就不展開來講了。我們特別針對(duì)編程語(yǔ)言來講一講,,為什么5G開發(fā)要首選C語(yǔ)言而不是其他編程語(yǔ)言,。
眾所周知,,ITU 為 5G 定義了 eMBB(增強(qiáng)移動(dòng)寬帶)、mMTC(海量大連接),、URLLC(低時(shí)延高可靠)三大應(yīng)用場(chǎng)景,。eMBB典型應(yīng)用包括超高清視頻、虛擬現(xiàn)實(shí),、增強(qiáng)現(xiàn)實(shí)等,。
這類場(chǎng)景首先對(duì)帶寬要求極高,關(guān)鍵的性能指標(biāo)包括100Mbps 用戶體驗(yàn)速率(熱點(diǎn)場(chǎng)景可達(dá)1Gbps),、數(shù)十Gbps 峰值速率、每平方公里數(shù)十Tbps 的流量密度,、每小時(shí)500km以上的移動(dòng)性等,,所以在5G開發(fā)當(dāng)中對(duì)性能要求是放在第一位的。
然而,,目前的硬件工藝及技術(shù)發(fā)展已經(jīng)接近瓶頸,,如何能夠更高效的利用系統(tǒng)資源在5G開發(fā)當(dāng)中顯得尤為重要。
C語(yǔ)言是一門貼近硬件的系統(tǒng)級(jí)編程語(yǔ)言,,C語(yǔ)言的指針可以直接操作內(nèi)存,,效率奇高,雖然出錯(cuò)率和漏洞也為人詬病,,但瑕不掩瑜,,這一點(diǎn)正好符合5G開發(fā)對(duì)性能和效率的極致追求。
在這里還是想強(qiáng)調(diào)一下了解底層原理對(duì)學(xué)習(xí)新技術(shù)的巨大作用,。很多碼農(nóng)都覺得C語(yǔ)言實(shí)在難上手就放棄了,,不想挑戰(zhàn)難度、也不想付出時(shí)間與經(jīng)精力去學(xué)習(xí)更多更底層的內(nèi)容,。
要知道幾乎所有的操作系統(tǒng)內(nèi)核都是用C語(yǔ)言寫的,,萬(wàn)變不離其宗,不懂底層匯編,,根本無(wú)法準(zhǔn)確了解內(nèi)存和系統(tǒng)資源,,這就像蓋樓不了解地基情況一樣。
拿破侖說過:“不想當(dāng)元帥的士兵不是好士兵,?!币虼耍瑢?duì)于各位有志于架構(gòu)師的碼農(nóng)們,,從現(xiàn)在就開始啃C語(yǔ)言吧,。
熟悉移動(dòng)通信協(xié)議
熟悉移動(dòng)通信協(xié)議,具備LTE協(xié)議研發(fā)經(jīng)驗(yàn),,熟悉信令流程,、協(xié)議,。
移動(dòng)通信協(xié)議是個(gè)大家族,從何學(xué)起,,往往沒有頭緒,。尤其剛來的程序員們,很容易就被一堆協(xié)議搞得頭大如斗,。其實(shí)通信的基礎(chǔ)在于網(wǎng)絡(luò),,所以關(guān)于5G相關(guān)的協(xié)議開發(fā)如何上手,我們可以給出以下思路供大家參考:
第一步,,先弄清楚網(wǎng)橋,、VLAN的原理,自己可以做下實(shí)驗(yàn),,找?guī)着_(tái)PC配置一下,,再不濟(jì)用虛機(jī)跑一跑。了解單播,、廣播,、組播的概念,想清楚什么情況下要配置網(wǎng)橋,,劃分VLAN,。
第二步,了解二層,、三層的概念和區(qū)別,,有條件的可以從交換機(jī)配置入手,想更進(jìn)一步的可以去配置下路由器,。明白靜態(tài)路由和動(dòng)態(tài)路由的區(qū)別,,幾個(gè)概念重點(diǎn)了解:IGP、BGP,、OSPF,、IS-IS、MPLS等等,。
第三步,,這一步才是真正入門,要做5G開發(fā),,前兩步理解的差不多了就可以去讀一讀3GPP的協(xié)議文檔了,。記得要讀英文原版哈,至于英語(yǔ)的重要性后面也會(huì)展開講一講,。
軟技能
有較強(qiáng)的英文閱讀理解能力,,具備較強(qiáng)的抗壓能力和良好的溝通技巧,優(yōu)秀的團(tuán)隊(duì)合作精神以及較強(qiáng)的執(zhí)行能力,善于學(xué)習(xí)和挖掘,、使用新技術(shù),。
這一條也是老生常談了。網(wǎng)上常常爆出英語(yǔ)無(wú)用論,,而事實(shí)上,,各類高新技術(shù)尤其是創(chuàng)新技術(shù)還是國(guó)外居多,原版的技術(shù)資料全是英文的,,英文不好就只能用軟件翻譯或者等人喂食,,而通常軟件翻譯的結(jié)果讓人一言難盡,等人翻譯估計(jì)黃花菜都涼了,。
還有底層協(xié)議開發(fā),,也是必須遵從英文規(guī)范,不懂不會(huì)就要走很多彎路,。再比如碼農(nóng)必備的Stack Overflow網(wǎng)站也是英文的,,其技術(shù)答疑常常會(huì)有驚喜大禮包:不僅給出一個(gè)問題多種不同的解決方案,還包括對(duì)這些解決方案的比較,,以及大牛們的思考過程,甚至還有不少?gòu)?qiáng)力工具的特別附贈(zèng),。
建議各位就算沒有遇到問題,,也可以常常去瀏覽一下其中投票較多的問題,充實(shí)自己的知識(shí)體系,。
總而言之,,英文是一扇面向世界的窗戶,有了它能夠看得更遠(yuǎn),,自己不會(huì)或者懶的開窗,,那就自己在小黑屋慢慢摸索吧。偷偷吐槽一句,,碼農(nóng)的英語(yǔ)不好,,連變量名都只能用漢語(yǔ)拼音定義哦。
至于抗壓能力,,碼農(nóng)們都是經(jīng)過千錘百煉的了,,做到前面幾條,加上溝通技巧,、團(tuán)隊(duì)合作以及較強(qiáng)的執(zhí)行力,,這就是今后成長(zhǎng)轉(zhuǎn)型的關(guān)鍵。至于是寫一輩子代碼還是轉(zhuǎn)型管理抑或銷售及其他,,這就仁者見仁智者見智了,。
最后附上一首自創(chuàng)的《江城子》,送給屏幕前還在加班的碼農(nóng)們,祝大家都能早日完美轉(zhuǎn)型,,成功升職加薪~
十年IT終日忙,,不開源,難自強(qiáng),。
千頁(yè)文檔,,需求又無(wú)常。
縱使交付運(yùn)維忙,,痘爆頭,,膚如糠。夜來加班忽感傷,,格子間,,冷暖嘗。
相對(duì)無(wú)言,,惟代碼萬(wàn)行,。
愿為自主研發(fā)闖,泡機(jī)房,,又何妨,。
作者簡(jiǎn)介:
COCO,80后高級(jí)工程師,,目前就職于廣州大型通信國(guó)企,,白天辦公室打雜,晚上實(shí)驗(yàn)室碼字,。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多