免费注册 查看新帖 |

Chinaunix

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

《深入Linux设备驱动程序内核机制》第1章 内核模块 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2012-02-08 17:02 |只看该作者
ELF那点讲了等于没讲,关于代码的部分又太锁碎了。首先要定位读者啊,如果不是假定给初学者写,可以站得更高一些分析。

另外,如果整本书都在讲内核模块,完全可以单独拿一章出来讲ELF。不知道后面章节有没有关于讲关于build模块的细节。

论坛徽章:
0
22 [报告]
发表于 2012-02-08 17:33 |只看该作者
ELF那点讲了等于没讲,关于代码的部分又太锁碎了。首先要定位读者啊,如果不是假定给初学者写,可以站得更高一些分析。

另外,如果整本书都在讲内核模块,完全可以单独拿一章出来讲ELF。不知道后面章节有没有关于讲关于build模块的细节。
====================================

ELF主要做铺垫用,因为要讲模块加载,这部分内容肯定是无法绕开的。这本书主要是侧重于驱动和内核交互的部分,并不是单讲一个模块,它不是一本纯粹描述内核的书,因为内核模块是驱动程序的重要载体,所以才有了第一章。只有少量内容涉及模块编译工具链,我并不清楚会有多少人关心这个。所以需要反馈。另外,我会在网站上补充一些也许很重要,但是放到书里未必合适的东西。

论坛徽章:
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
23 [报告]
发表于 2012-02-09 17:16 |只看该作者
回复 15# MagicBoy2010


    2进程同时卸统一模块是什么效果呢?

状态机是和异步并发想联系的。当然如接受字符串输入那种状态机不并发的原因是输入和状态变换是原子的,也就是一个输入处理不会被另一个打断。

但是考虑一个一般的状态机,异步触发的各个时间可能并发,状态机转换一种状态后的输出处理也可以并发。

论坛徽章:
0
24 [报告]
发表于 2012-02-09 17:38 |只看该作者
2进程同时卸统一模块是什么效果呢?

状态机是和异步并发想联系的。当然如接受字符串输入那种状态机不并发的原因是输入和状态变换是原子的,也就是一个输入处理不会被另一个打断。

但是考虑一个一般的状态机,异步触发的各个时间可能并发,状态机转换一种状态后的输出处理也可以并发。
=========================================================================
模块卸载时由module_mutex保护,代码见:
<kernel/module.c>
SYSCALL_DEFINE2(delete_module, const char __user *, name_user,
                unsigned int, flags)
{
    ...
    if (mutex_lock_interruptible(&module_mutex) != 0)
                return -EINTR;
    ...
    out:
        mutex_unlock(&module_mutex);
        return ret;
}



   

论坛徽章:
0
25 [报告]
发表于 2012-02-09 17:39 |只看该作者
所以如果有两个进程同时去卸载同一个模块,只有一个会成功。

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
26 [报告]
发表于 2012-02-09 18:25 |只看该作者
当 当 价:¥73.50

定  价:¥98.00 折扣:75折

哥们捞了多少版税啊。。。。

论坛徽章:
2
CU十二周年纪念徽章
日期:2013-10-24 15:41:34处女座
日期:2013-12-27 22:22:41
27 [报告]
发表于 2012-02-09 18:29 |只看该作者
Google上搜得到名字耶,原来是大叔了。。。。。

论坛徽章:
0
28 [报告]
发表于 2012-02-09 19:41 |只看该作者
Google上搜得到名字耶,原来是大叔了。。。。。

===============================
你可以的,从名字就可以断定是大叔了。是大叔好还是小兄弟好啊?


   

论坛徽章:
0
29 [报告]
发表于 2012-02-09 19:49 |只看该作者
哥们捞了多少版税啊。。。。
======================
等你写了之后就知道了,作者的分成在整个生态链中只占极少数的一部分。绝大部分在销售,流通,印刷和出版社环节哪里,更具体点到作者这里,版税不到10%,还要被克扣天朝伟大的稿费所得税。

不过如果没有与出版社的这种合约,写作过程中我随时都有可能放弃,因为我用来写作的时间实在有限,书的前言部分已经讲了很多了。最后能坚持下来,从这个角度我要感谢出版社。不过如果版权不属于出版社,我可以随时在线更新所有文档,完全免费,就象我在论坛发帖那样。


   

论坛徽章:
12
寅虎
日期:2013-12-04 20:37:4915-16赛季CBA联赛之广东
日期:2017-08-22 19:23:1215-16赛季CBA联赛之上海
日期:2016-06-18 23:05:05操作系统版块每日发帖之星
日期:2016-06-06 06:20:00操作系统版块每日发帖之星
日期:2016-06-05 06:20:00操作系统版块每日发帖之星
日期:2016-06-03 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:152015年亚洲杯之巴勒斯坦
日期:2015-02-10 21:38:08卯兔
日期:2014-10-31 20:42:23申猴
日期:2014-06-11 17:15:10处女座
日期:2014-05-22 09:00:1815-16赛季CBA联赛之广夏
日期:2017-09-25 23:37:46
30 [报告]
发表于 2012-02-12 01:04 |只看该作者
今天已经入手此书,有点儿贵啊。。。 500多页的书,定价98.。。大概翻了一下,作者确实是下了一番功夫的,态度看出来很认真。

想趁此请教一个关于中断栈的问题:

当内核栈大小是8k时,中断处理函数的栈就位于内核栈上,如果在中断处理函数中有引起阻塞的代码,那么在这种情况下,调度器最终究竟能不能重新调度当前被中断的进程?(在LKD里,love只是简单地说在中断上下文中,没法重新调度)

当内核栈大小为4k时候,内核会分配专门的异常栈、硬中断栈,软中断栈,可否告知它们具体在内存中的位置?谢谢。

另外,在推荐序中发现个小错误,《深入理解linux内核》的英文名就是《understanding the linux kernel》,前边没有 deep 这个单词。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP