免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1983 | 回复: 2
打印 上一主题 下一主题

smp同步及杂谈找工作的一些... [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-02 20:13 |只看该作者 |倒序浏览
最近在找工作,提起了一些smp同步的问题,这些问题平时在用的时候已经觉得理所当然的了,一下子又要追根溯源,发现已经忘了;主要涉及的是不同cpu上的L1 cache怎么同步的,如果看i386的spinlock的实现,只用了lock指令;lock指令保证lock后的那条指令是在总线锁定的条件下执行的;flush的也是lock之前的cache内容;
实际上smp的cc类型的cache,不同cpu上的L1cache的一致性是有硬件(snooping)实现的;比如
cpu 1
set flag1 = 1 ;
在cpu 2的cache如果缓存了flag1 ,在cpu1写完这条这令后,在cpu2的cache的flag1会失效,如果cpu2再读,重新缓冲到cache中的flag1的值就是1;

实际上很多搞操作系统的人没搞过电子电路,硬件的能力受限在对8086的了解;然后如果你去找内核的工作,发现你搞过电子电路,有觉得这不是内核研发的工作经验;
然后如果你还搞过内核外还做过应用开发,应用开发也不能算内核的工作经验;汗
很多搞内核的是从一开始就搞内核,没有多少写代码的经历,怎么搞内核阿,结果是半吊子居多,把握不了内核设计的方向;
也有人认为应用编程和内核开发是两回事,汗,程序设计的思想原理不都相通的吗,你要挖掘的深应用也可以做到内核去阿,不都是这样一步一步来的嘛;
看过一些公司后,发现基本上是不搞内核开发的,驱动基本不用怎么改的(还有驱动用c++的,后来想想可能人家说的驱动不是涉及内核的),然后就比较麻烦了,实际上不需要写内核代码的嘛。
内核代码这种东西复杂的还是代码的堆积,公司基本上还停留在对内核代码的学习和简单应用中,看到有些公司出题的时候想要人看到代码中page_fault的影响;笑,其实没啥意思,题也不一定合适;其实page_fault后填充页的代码(比如linux address_space_ops->readpage) 文件系统的锁越复杂,涉及的其它问题很多;
前段时间看了看,没发现有搞内核代码量很多的工作,不知道是我没找到还是这些公司不招人阿

论坛徽章:
0
2 [报告]
发表于 2010-01-04 23:10 |只看该作者
没这么简单吧?
现代的CPU还会对CPU下达的读写指令进行重新排序,以提高吞吐量.而这个又会打破lock prefix原本的语义

论坛徽章:
0
3 [报告]
发表于 2010-01-05 09:03 |只看该作者

回复 #1 mapclm 的帖子

呵呵。要搞内核去美国。就算美国怕也不多,并且可能并不是高薪。并且估计除了redhat之类其他的都是副业(比如intel搞内核就算副业)
在中国严格意义搞搞内核的可能百度算一个,或者华为中央研究院甚至海外研究院,也在硅谷的那种(偏向总体技术方向研究)。他们更是副业的副业。
很多招聘写“内核”只是说需要你了解了解罢了,比如知道有哪些书是讲这个的,哪里查得到而已。别当真了。靠内核赚啥子钱哦
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP