Redian新闻
>
为什么编程更关注内存而很少关注 CPU?

为什么编程更关注内存而很少关注 CPU?

公众号新闻

周末的时候,我在知乎上看到这么一个问题,觉得很有意思。

我们知道,我们编写的程序,不管是什么编程语言,最后执行的时候,基本上都是CPU在完成。之所以说基本上,是因为还有GPU、FPGA等特殊情况。

但不知道大家发现没有,我们编程的时候,经常在关注内存问题,比如堆和栈的区别、内存分配与释放、指针问题、内存泄露问题等等,但为什么作为执行程序的核心角色——CPU,我们却很少去关注它呢?

对于这个问题,你是怎么看的,思考5秒钟想想?

下面是我的一些看法。

这其实是编程语言越来越“高级”的结果。

事实上,在几十年前,那时候没有现在这么多高级语言,很多编程大佬们都是徒手写汇编,就必须得关注CPU。

以我们熟知的Intel x86架构为例,思考这几个问题:

  1. 长跳和短跳有什么区别?

  2. 中断门、任务门、调用门分别是什么,有什么区别?

  3. x86的CPU有哪些常用寄存器,分别是做什么用的?

  4. 虚拟地址、逻辑地址、线性地址、物理地址分别是什么,有什么区别?

我的公众号读者很多是搞C/C++和底层软件开发的,估计都很少有人能完整回答出这些问题,更别说其他搞Java、Python、JavaScript的一票程序员了。

但是用汇编语言编程,太伤脑子了,开发效率低不说,更重要的是,辛辛苦苦吭哧吭哧写完,结果换个CPU平台还没法通用。

后来,计算机工程师们开始思考:编程为什么还要考虑CPU?得把这些东西屏蔽掉!所以,高级语言应运而生了,从那时起,程序员们编程基本不用考虑CPU了,这些底层的细节,编译器和操作系统都给封装好了,提供一致的调用接口,我们只需要调用操作系统提供的编程接口就好了。

再后来,程序员们觉得面向操作系统编程也很麻烦,和上面CPU同样的问题,不同操作系统的编程API完全不一样,辛辛苦苦吭哧吭哧写完,结果从Windows换到Linux,又不能用了!

计算机工程师们又开始思考:为什么还要考虑操作系统、内存这些东西?于是直接面向虚拟机、解释器的语言又出来了。

如果你是Java、Python、JavaScript的程序员,想想你在编程的时候会关心操作系统,会关心内存管理吗?

估计以后会有人提问:为什么编程很少关注操作系统了?为什么编程很少关注内存了?

时代在发展,功能封装了一层又一层,现在的程序员,越来越少去关注底层的东西了。

但这也造成的一个后果就是,开发的门槛降的越来越低,不需要学《计算机组成原理》、《操作系统》、《数据结构与算法》这些计算机基础课程,只需要《21天从入门到精通》就可以进入这个行业。

我之前看到过一个报道,最近几年,每年毕业的大学生大概在1000万左右。其中计算机相关专业(包含计算机科学与技术、软件工程、网络工程、通信工程、电子信息工程、自动化等)加起来的人数占比在10%左右,这样算下来每年都有100万左右的新人涌入这个赛道,这还不包括很多其他专业转码的人,加起来只会更多。

这样一想,计算机真的是卷的厉害。

随着越来越多新人的加入,计算机软件开发行业竞争也越来越激烈,只靠CRUD技能很大程度上会限制程序员们在技术领域的发展。而学习了解一些计算机底层技术知识,修炼好程序员的内功,可以帮助我们知其然还能知其所以然,在一众开发中脱颖而出。

所以推荐咱们程序员除了日常工作项目开发工作,多了解一些计算机底层的知识。像是Linux操作系统、计算机网络工作原理、数据库底层原理等等。

- EOF -




推荐阅读  点击标题可跳转

0、极客专属:几十款程序员秒懂的T恤/卫衣

1、一个国外小老头,用被淘汰的编程工具,开发了一个了不起的软件

2、字节一年,人间三年!!

3、47 岁技术传奇陈皓(左耳朵耗子)去世,叛逆人生不断创业,网友纷纷悼念


关注「程序员的那些事」加星标,不错过圈内事

点赞和在看就是最大的支持❤️

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
四大秋招经验盘点:进入四大,你需要过多少关?清华系「自然语言编程神器」上新!支持100+种编程语言,效率upup一座未来之城,撬动十万亿的大蛋糕,雄安甘拜下风,传销都不敢这么编将廉价的AMD CPU变成16GB GPU巨头ChatGPT大战陷败局,竟因嫌GPU太贵!Meta用CPU跑AI,点错科技树Arm新一代架构发布:CPU能效提升40%,GPU性能提升15%梅华:回国,去哪里浪?新一代笔记本内存标准将至,威刚展示全新 CAMM 内存模块24GB内存手机!一加 Ace 2 Pro再曝,不是融合的虚拟内存中国互联网巨头豪掷50亿美金疯抢GPU?英伟达回应;碧桂园管理层致歉;蚂蚁不再是印度“支付宝”第一大股东丨邦早报基于AI和NPU的Codec变革——VPU与NPU的协同创新i5-9400f CPU with asus b365m bundle(cpu good mb faulty)信创之CPU、GPU、存储、整机基础硬件一文搞懂GPU的概念、工作原理,以及与CPU的区别2023年CPU&GPU天梯图(最新版)​“中国共产党”为什么翻译成CPC,而不是CCP?最新消息,吃这种东西可能损害身体!然而很多商家和个人以为它很好...手机进入大内存时代,真我GT5官宣提供24GB内存版本DPU与智能网卡技术公开课上新!三位技术大牛主讲开源DPU、内生安全智能网卡与DPU云化裸金属月色妖娆,嘁语飘飘工信部:加强CPU、GPU和服务器等重点产品研发,增强算力产业自主创新能力最高32核CPU、80核GPU,苹果M3 Ultra芯片规格曝光Meta高管:元宇宙能给职业教育带来“变革” 可与AI共存而非被取代因为高尚而沦为受害者英国6月经济增长超预期!英镑小幅上涨!零售商Wilko进入破产管理!租户更关注社区而非房屋!淡马锡放慢投资步伐 更关注长期结构性趋势China's Powerstar CPU Seemingly 'Confirmed' as Intel Silicon为什么是GPU?华为推动车BU独立?最新回应;中国互联网巨头豪掷50亿美金疯抢GPU?英伟达回应;喜茶就小程序无法点单支付道歉丨大公司动态英特尔,并未放弃XPU?周末随笔GPU垄断AI让人担忧,是时候让CPU发扬光大编剧都不敢这么编!“中国共产党”的官方英文名是CPC,外媒为什么要用CCP?历史小说《黄裳元吉》第八十二章 后浪英本申请:UCAS注册系统申请材料这样填!24fall学生更关注这几点!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。