免费注册 查看新帖 |

Chinaunix

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

一个关于线程的逻辑问题 [复制链接]

论坛徽章:
0
41 [报告]
发表于 2008-03-21 17:08 |只看该作者
原帖由 flw 于 2008-3-21 17:06 发表

这回对了……

那你没看懂我的问题,多半是我表达有问题,我这个主题真正的问题在36楼,早知道我在一楼就把问题说明了

论坛徽章:
0
42 [报告]
发表于 2008-03-21 17:11 |只看该作者

回复 #41 SunGod 的帖子

:wink:  都没有看动你的问题.

论坛徽章:
0
43 [报告]
发表于 2008-03-21 17:12 |只看该作者
原帖由 system888net 于 2008-3-21 17:11 发表
:wink:  都没有看动你的问题.

真失败,下次直捣黄龙吧

论坛徽章:
0
44 [报告]
发表于 2008-03-21 17:21 |只看该作者
原帖由 SunGod 于 2008-3-21 15:25 发表
putchar(char * buf, int count){

char raw[count]  = buf;

kernel_thread(sendto,raw,0);

}

sendto函数的第一条命令就会把raw的内容cp到自己的栈内,这样的话有没有安全隐患?譬如sendto函数对raw ...



LZ我说你这搞笑点了,看了半天,最后闹了所问非所答。

我觉得你是不是就要把用户空间的一段数据复制到内核空间啊(由kenel_thread负责),你只传给它一个指针指向这片数据区。你说你这片数据区会被修改,那不废话吗,你要改也没人能栏得了你啊。

还有flw说用堆来实现,我也没弄明白用堆咋就没用竞争问题了?

论坛徽章:
0
45 [报告]
发表于 2008-03-21 17:23 |只看该作者
原帖由 feiyang21687 于 2008-3-21 17:21 发表



LZ我说你这搞笑点了,看了半天,最后闹了所问非所答。

我觉得你是不是就要把用户空间的一段数据复制到内核空间啊(由kenel_thread负责),你只传给它一个指针指向这片数据区。你说你这片数据区会被修改 ...


............看新的主题

论坛徽章:
0
46 [报告]
发表于 2008-03-21 17:52 |只看该作者
putchar这个函数本身不会破坏raw的内容,但这个raw区域会被本线程在这之后调用的其它函数破坏

论坛徽章:
0
47 [报告]
发表于 2008-03-21 17:54 |只看该作者
我上面的意思是说不通的线程同时调用这个函数,并不会破坏各自的raw

论坛徽章:
0
48 [报告]
发表于 2008-03-21 17:55 |只看该作者
原帖由 bobozhang 于 2008-3-21 17:54 发表
我上面的意思是说不通的线程同时调用这个函数,并不会破坏各自的raw

putchar不由线程调用的

论坛徽章:
0
49 [报告]
发表于 2008-03-21 17:59 |只看该作者
大哥写的是什么内核,说说吧,我怕以后万一用到了出错怎么都找不出问题。

论坛徽章:
0
50 [报告]
发表于 2008-03-21 17:59 |只看该作者
原帖由 SunGod 于 2008-3-21 17:55 发表

putchar不由线程调用的

哦,那同一线程多次调用这个函数肯定会破坏原有的内容赛
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP