免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: Godbach
打印 上一主题 下一主题

[实践] 它山之石,可以攻玉--从内核中学到了什么(获奖名单已公布-2014-4-21) [复制链接]

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
31 [报告]
发表于 2014-03-14 14:41 |只看该作者
回复 30# mgjrr16888

总结一句,就是学习内核好处大大地

   

论坛徽章:
22
丑牛
日期:2014-08-15 14:32:0015-16赛季CBA联赛之同曦
日期:2017-12-14 15:28:14黑曼巴
日期:2017-08-10 08:14:342017金鸡报晓
日期:2017-02-08 10:39:42黑曼巴
日期:2016-11-15 15:48:38CU十四周年纪念徽章
日期:2016-11-09 13:19:1015-16赛季CBA联赛之同曦
日期:2016-04-08 18:00:03平安夜徽章
日期:2015-12-26 00:06:30程序设计版块每日发帖之星
日期:2015-12-03 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-09 06:20:002015亚冠之吉达阿赫利
日期:2015-07-03 08:39:42
32 [报告]
发表于 2014-03-14 15:16 |只看该作者
给我也加6分,我就知道从内核中得到了什么

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
33 [报告]
发表于 2014-03-14 17:58 |只看该作者
回复 32# amarant

你知道的太多了。

   

论坛徽章:
0
34 [报告]
发表于 2014-03-14 23:21 |只看该作者
好书,帮顶,bump u up for 2 points

论坛徽章:
1
白羊座
日期:2013-08-22 17:30:33
35 [报告]
发表于 2014-03-15 09:03 |只看该作者
2.6.10->2.4->0.11->2.6.35
上面是我所了解的市面上一些流行的关于linux内核的书的版本,现在又重新来了unix源码解析,实在有点晕啊!
个人觉得,内核学习是个痛苦的过程。虽然我们能享受那种"源码之前了无秘密"的快感,但却也不得不去面对另一个很哲学的问题--我告诉了你一切即等于我什么都没告诉你。于是,在学习中,更容易让人淹没在无限的细节中去。而这些细节,看了忘,忘了看,看了还是忘,时间投入一大把,内核的门都没摸着,对人的自信心无疑是一种巨大的打击。另一个问题是,"实用性"不强,如果报着投资的心态学习内核,那就得有心理准备了,这肯定是个长线投资。

内核学习的好处?
呵呵说起来也很多,俗话不是说,会写代码从会看代码开始吗。内核源码,几乎可以说是世界上就顶级的一群程序员捣鼓出来的东西,里面少不了惊为天人的设计。我对内核了解不深,就举个简单的例子,linux内核的链表!在JAVA这类面向对象语言里,当我们想表达某类对象{A、B、C}的集合关系时,我们必须先建立一个该类型的List对象,然后将A、B、C对象加入list中;这种方式的一个弊端是,如果我们单纯从A、B、C的内部表示出发,我们是无法看出它们之间有联系的。从面向对象的角度出发,对象A与对象B存在关系这一事实应该看成对象A的一种属性。linux内核中的链表设计,将连接属性嵌入到了一个对象内部,则很好的诠释了这一点。
呵呵,就乱扯这么些吧,欢迎拍砖指教!

评分

参与人数 1可用积分 +6 收起 理由
Godbach + 6 感谢分享

查看全部评分

论坛徽章:
0
36 [报告]
发表于 2014-03-15 13:13 |只看该作者
这本书是,版主写的?????????????????

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
37 [报告]
发表于 2014-03-15 15:18 |只看该作者
回复 35# cjdao

个人觉得,内核学习是个痛苦的过程。

如果有一个切入点,或者本身就感兴趣的话,应该不是那么痛苦的。

除非一你开始就开始研究 kernel 如何 boot,看那些汇编的代码。

   

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
38 [报告]
发表于 2014-03-15 15:19 |只看该作者
回复 36# conceptcon

抱歉,不是我写的。

是 CU  从出版社争取过来,作为对积极分享的网友的奖励。


   

论坛徽章:
2
亥猪
日期:2014-03-19 16:36:35午马
日期:2014-11-23 23:48:46
39 [报告]
发表于 2014-03-16 05:09 |只看该作者
本帖最后由 gvim 于 2014-03-16 05:15 编辑

Linux2.2->2.6, FB7,NB5, Sol10,Minix2 内核大致了解过一些,有些深入一些,有些蜻蜓点水,一些嵌入式内核也了解过一些,现在老祖宗出来了,怎么也得想一本。

>>内核的哪些数据结构以及 API 被用到或者移植到了和内核没有直接关系的工作中
曾经用户层里的一个库和涉及的kapi移到单片机裸机算不算,曾经在linux里用mmu的地址线来做gpio,曾经把nb的tcp/ip网络相关的裁进64kram的单片机,也做过把库移进内核的

>>分享一下曾经解决了燃眉之急的某个内核新特性
从2.6.20左右就没怎么追了,也没觉得有一个功能出现彻底把我某一方面解放了。kvm应该算是一个比较有用的功能,确实省机器来着,这个只使用还没时间了解怎么回事。
其它系统里面,觉得最有用的是zfs和dtrace,linux里面应该是btrfs和systemtap吧,现在管理磁盘实在是太方便了,这是很解能急的东西,抽时间得深入看看zfs。

>>介绍一下个人曾经研究过的某个内核特性
主要是文件系统,内存和网络这些经典组成部分。调度研究的Linux的O(1),刚刚出来就学了下,呃,严格来说是不是O(1)有些争议,我个人认为是均摊,体现了linux实用至上的设计哲学。内存研究的NetBSD的,没记错的话NB和Linux的这部分,很大程度上借鉴Sol的设计。文件系统看的FB的ufs,有个和日志差不多功能的softupdate,太复杂,现在只记得实现这个功能用了大概20个文件,最长一个大概1.5W行,其他平均也在5k-6k,太难维护了吧现在基本不用了,还是日志实现相对简单、成熟一些。网络学的lwip的,放到单片机上打上断点跟了2天基本也就熟悉了,然后才大概翻了翻fb的网络。驱动体系学的Linux的,有段时间吃饭用。

这么多年的心得是,要学的话还是sol最有学习价值,太多的东西是从这个系统演化进其他社区;要拿代码还得抠*BSD系列的,组织规范,好剪好改;要学最新的技术尝试找linux,所以得忍受一些功能和设计上的不稳定。

书给我一本呗。。。

评分

参与人数 1可用积分 +8 收起 理由
Godbach + 8 很给力!

查看全部评分

论坛徽章:
7
丑牛
日期:2013-10-18 14:43:21技术图书徽章
日期:2013-11-03 09:58:03辰龙
日期:2014-01-15 22:57:50午马
日期:2014-09-15 07:04:39丑牛
日期:2014-10-16 14:25:222015年亚洲杯之伊朗
日期:2015-03-16 10:24:352015亚冠之城南
日期:2015-05-31 09:52:32
40 [报告]
发表于 2014-03-16 09:53 |只看该作者
个人觉得最重要的是学会什么叫脑子清醒.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP