程序员该如何转型 5G 开发?

  • 时间:
  • 浏览:0
  • 来源:1分时时彩官网_1分时时彩正规平台_1分时时彩平台网址

声明:本文来自于微信公众号  CSDN (ID:CSDNnews),作者:COCO,授权站长之家转载发布。

最近听了几位社招新进同事的述职,问了我们我们我们我们我们我们我们 同样另另三个 多问题:从从前 的软件开发岗位转到现在的5G开发,我们我们我们我们我们我们我们 真是最大的难点在哪里?几位新同事纷纷表示:感觉个人要补课的内容真是是太多了,操作系统、网络协议,到处是否是难点。

真是这几位同事的经历和遇到的问题都非常有代表性:是因为做开发不懂业务,故大每种码农是否是一颗颗螺丝钉,铆在个人的那类式 点领域上使劲往下钻,而对整体架构几乎一无所知,是因为个人的专业面非常窄,技术水平也比较浮于皮层。

对哪些是因为拥有3- 5 年经验的任务管理器员而言,转型到5G开发并不让 想象中不让 遥不可及,当然所以用说轻松。

所幸我们我们我们我们我们我们我们 是因为入门了,本来,我们我们我们我们我们我们我们 真是普通码农转型5G开发是可行且有迹可循的。所以这次就来谈一谈5G开发所需的主要技能和推荐理由,此篇可不让让 作为各位有志于转型5G开发的码农们参考,也欢迎各位大牛多多指正。

熟悉 Linux 操作系统

时要要熟悉Linux操作系统及具备Linux开发的经验,当然常用的调试手段也要熟练掌握。

5G 承载的业务种类繁多,业务形态各不相同,对网络要求不同。业务需求多样性给5G 网络规划和设计带来了新的挑战,包括网络功能、架构、资源、路由等多方面的定制化设计挑战。

本来,5G网络采用NFV/SDN、云原生技术实现网络虚拟化、云化部署,而NFV技术则是5G开发必选No.1。

NFV追本溯源:以往通信网络设备均采用专用设备,网元功能与硬件平台紧耦合,即不同厂家、不类式 型网元采用不同的硬件。在通信网络3G、4G、5G新技术频繁变革下,是因为网元与硬件平台紧耦合的关系,造成血块硬件资源浪费,所以我有利于新业务部快速署。

网络设备价格长期居高不下,电信运营商自然压力山大;共同供应商一家独大,运营商所以我让你受制于人;加进去去进去各类专用设备不断增长的运维和管理成本,实现软硬件解耦的网络功能虚拟化(NFV)技术这位英雄来拯救通信行业了。

NFV技术的实现原理是通过使用x86 等通用性硬件以及虚拟化技术,来承载各类功能的软件外理。而哪些通用X86 平台的操作系统当仁不让所以我Linux系统了。

Linux的特点是哪些?是多用户、多任务、支持多任务管理器和多CPU的操作系统。既然5G开发的系统环境少不了Linux,下面所以我学习重点了:比如哪些是多态?任务管理器和任务管理器的区别?为哪些要使用多任务管理器?这是否是linux基础知识、也是Linux内核开发时要掌握的要点。

举个例子,总出 段错误,哪些调试手段?咋样外理?凡是多往深处想一想,要知道任务管理器设计做的不好真的会害人害己,光填坑就能累死一群码农。

另外不让 不提的还有epoll,它是Linux内核为外理大批量文件描述符而作了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,能显著提高任务管理器在血块并发连接中不让 血块活跃的情形下的系统CPU利用率。

真是select、poll,epoll本质上是否是同步I/O,但epoll倘若从用户态往内核态拷贝 1 次fd集合,在设备等待的图片 队列上也只挂 1 次current;而select和poll每次调用是否是从用户态往内核态拷贝 1 次fd集合,在设备等待的图片 队列中挂 1 次current;所以epoll相比select和poll节省了血块系统开销。

还有,select,poll实现时要个人不断轮询所有fd集合,直到设备就绪,期间是因为要睡眠和唤醒多次交替。

而epoll尽管也时要调用epoll_wait不断轮询就绪链表,期间也是因为多次睡眠和唤醒交替,本来它是在设备就绪时调用回调函数,把就绪fd里装去就绪链表中,并唤醒在epoll_wait中进入睡眠的任务管理器。

真是是否是睡眠和交替,本来select和poll在“醒着”的完后 要遍历整个fd集合,而epoll在“醒着”的完后 倘若判断一下就绪链表是否是为空就好,从而节省了血块的CPU时间,这所以我回调机制带来的性能提升。

总之,作为开发人员,不仅要知其然时要知其所以然。

编程知识储备

具备扎实的计算机基础,较强的算法能力,熟练掌握C\C++等开发语言,熟悉敏捷开发流程。

计算机基础、算法能力,哪些是否是码农们的基本技能,《计算机原理》、《数据形态》等等是否是大学理工科的经典课程,不记得了可不让让 再回去翻一下,在此不做赘述。敏捷开发是当下比较流行的高效开发模式,以用户的需求进化为核心,采用迭代、循序渐进的土最好的办法进行软件开发,这方面的文章也所以就不展开来讲了。我们我们我们我们我们我们我们 怪怪的针对编程语言来讲一讲,为哪些5G开发要首选C语言而是否是类式 编程语言。

众所周知,ITU 为 5G 定义了 eMBB(增强移动宽带)、mMTC(海量大连接)、URLLC(低速率高可靠)三大应用场景。eMBB典型应用包括超高清视频、虚拟现实、增强现实等。

类式 场景首先对速率要求极高,关键的性能指标包括60 Mbps 用户体验速率(热点场景可达1Gbps)、数十Gbps 峰值速率、每平方公里数十Tbps 的流量密度、每小时60 0km以上的移动性等,所以在5G开发当中对性能要求是里装去第一位的。

然而,目前的硬件工艺及技术发展是因为接近瓶颈,咋样不让 更高效的利用系统资源在5G开发当中显得尤为重要。

C语言是一门贴近硬件的系统级编程语言,C语言的指针可不让让 直接操作内存,速率奇高,真是出错率和漏洞也为人诟病,但瑕不掩瑜,你类式 点正好符合5G开发对性能和速率的极致追求。

在这里还是想强调一下了解底层原理对学习新技术的巨大作用。所以码农都真是C语言真是难上手就放弃了,让你挑战难度、所以我想付出时间与经精力去学习更多更底层的内容。

要知道几乎所有的操作系统内核是否是用C语言写的,万变不离其宗,不懂底层汇编,根本无法准确了解内存和系统资源,这就像盖楼不了解地基情形一样。

拿破仑说过:“让你当元帅的士兵是否是好士兵。”本来,对于各位有志于架构师的码农们,从现在就日后日后开始 啃C语言吧。

熟悉移动通信协议

熟悉移动通信协议,具备LTE协议研发经验,熟悉信令流程、协议。

移动通信协议是个我们我们我们我们我们我们我们 族,从何学起,往往不让 头绪。尤其刚来的任务管理器员们,很容易就被一堆协议搞得头大如斗。真是通信的基础在于网络,所以关于5G相关的协议开发咋样上手,我们我们我们我们我们我们我们 可不让让 给出以下思路供我们我们我们我们我们我们我们 参考:

第一步,先弄清楚网桥、VLAN的原理,个人可不让让 做下实验,找几台PC配置一下,再不济用虚机跑一跑。了解单播、广播、组播的概念,想清楚哪些情形下要配置网桥,划分VLAN。

第二步,了解二层、三层的概念和区别,有条件的可不让让 从交换机配置入手,想更进一步的可不让让 去配置下路由器。明白静态路由和动态路由的区别,有几个概念重点了解:IGP、BGP、OSPF、IS-IS、MPLS等等。

第三步,你类式 步才是真正入门,要做5G开发,前两步理解的差太多了就可不让让 去读一读3GPP的协议文档了。记得要读英文原版哈,至于英语的重要性后边也会展开讲一讲。

软技能

有较强的英文阅读理解能力,具备较强的抗压能力和良好的沟通技巧,优秀的团队合作协议协议精神以及较强的执行能力,善于学习和挖掘、使用新技术。

你类式 条也是老生常谈了。网上常常爆出英语无用论,而事实上,各类高新技术尤其是创新技术还是国外居多,原版的技术资料是否是英文的,英文不好就不让 用软件翻译是因为等人喂食,而通常软件翻译的结果本来你一言难尽,等人翻译估计黄花菜都凉了。

还有底层协议开发,也是时要遵从英文规范,不懂不让就要走所以弯路。再比如码农必备的Stack Overflow网站也是英文的,其技术答疑常常会有惊喜大礼包:不仅给出另另三个 多问题多种不同的外理方案,还包括对哪些外理方案的比较,以及大牛们的思考过程,甚至还有不少强力工具的怪怪的附赠。

建议各位就算不让 遇到问题,也可不让让 常常去浏览一下其中投票较多的问题,充实个人的知识体系。

总而言之,英文是一扇面向世界的窗户,有了它不让 看得更远,个人不让是因为懒的开窗,那就个人在小黑屋慢慢摸索吧。偷偷吐槽一句,码农的英语不好,连变量名都不让 用汉语拼音定义哦。

至于抗压能力,码农们是否是经过千锤百炼的了,做到前面有几个,加进去去沟通技巧、团队合作协议协议以及较强的执行力,这所以我今后成长转型的关键。至于是写一辈子代码还是转型管理抑或销售及类式 ,这就仁者见仁智者见智了。

最后附上一首自创的《江城子》,送给屏幕前还在加班的码农们,祝我们我们我们我们我们我们我们 都能早日完美转型,成功升职加薪~

十年IT终日忙,不开源,难自强。

千页文档,需求又无常。

纵使交付运维忙,痘爆头,肤如糠。夜来加班忽感伤,格子间,冷暖尝。

相对无言,惟代码万行。

愿为自主研发闯,泡机房,又何妨。 

作者简介:

COCO, 60 后高级工程师,目前就职于广州大型通信国企,白天办公室打杂,晚上实验室码字。