腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
2
回答
Linux内核write()和read()函数
、
、
read函数应该永远不会return 0,所以老师告诉我们要
使用
wait_event_interruptible。我
的
问题是,当我想在控制台中
使用
(例如)命令进行尝试时:echo 5 > ringdev ret = -EFAULT; if (
copy_to_user
(buf, ringdev_buf,ringdev_len)) { /
浏览 2
提问于2016-12-28
得票数 0
1
回答
在定时器处理函数中
使用
copy_to_user
失败,为什么?
、
、
如果我在ioctl函数中
使用
copy_to_user
,我可以将数据复制到用户空间,但是如果我将
copy_to_user
放入超时处理函数,
copy_to_user
就不会成功。为什么?放在这里,我就不能
正确
地将数据复制到用户 static void timer_func(unsigned long data){ retc =
copy_to_user
浏览 74
提问于2016-08-09
得票数 2
回答已采纳
1
回答
我可以说
copy_to_user
()/copy_from_user()是一个带有access_ok()
的
memcpy吗?
、
我们知道对于安全问题,如果我们想在用户空间和内核空间之间进行内存复制,我们应该
使用
copy_to_user
()/copy_from_user()。我
的
问题是,那么memcpy()应该比
copy_to_user
()/copy_from_user()有更好
的
性能吗?因为memcpy()没有做任何事情来保护系统,我说
的
对吗?如果我们不关心安全问题,我们可以
使用
memcpy()代替
copy_to_user
()/copy_from_
浏览 2
提问于2016-11-04
得票数 1
2
回答
如何
正确
使用
copy_to_user
?
、
我正在尝试定义一个系统调用来修改传递给它
的
字符缓冲区。buff, int len ) char tmp[1000]; /* change tmp here */} 在这里,
copy_to_user
返回-1,调用程序
的
缓冲区保持不变。
浏览 0
提问于2009-12-03
得票数 5
回答已采纳
2
回答
强迫
copy_to_user
()失败
、
我试图编写一个
copy_to_user
()失败
的
测试(只复制一些数据,或者根本不复制任何数据,而不
使用
空指针),但没有成功。在用户模式下
的
测试有以下几行:foo(to);type from[2] = {something1, something2};结果是,not_copied是0,即使我尝
浏览 0
提问于2018-05-01
得票数 1
回答已采纳
1
回答
copy_to_user
不工作在链表linux内核模块中
、
、
、
我在编写linux内核模块时遇到了
copy_to_user
宏
的
问题。myElement,link); err=
copy_to_user
(buforUz,el->data,el->i); } 当我
使用
剪切时,我可以
使用
dmesg检查printk是否显示
正确
浏览 1
提问于2016-12-12
得票数 0
回答已采纳
3
回答
使用
copy_to_user
在内核模式下检查有效用户内存
所以,我试着
使用
这个:我想从q复制到p,如果它不工作,那么我想知道p是否指向无效
的
地址。
copy_to_user
返回未成功复制
的
字节数,但在本例中,字节数为0,我不能确定p是否指向无效地址。 有没有其他
方法
可以检查p是否指向有效
的
用户内存?
浏览 0
提问于2015-11-11
得票数 0
1
回答
copy_to_user
:处理更多数据
、
、
、
在我
的
内核模块中,我有以下读取函数:{ int c;
copy_to_user
( buffer, &c, 1 ); //Buffer is the stack where to place
浏览 2
提问于2014-12-30
得票数 0
回答已采纳
1
回答
从内核空间声明一个指向用户空间数组
的
指针并填充它
、
、
、
我正在用C语言编写一个内核模块,我需要在用户空间中声明一个指向字符数组
的
指针,并用数据填充它。我
使用
char* __user声明指针,并用调用
copy_to_user
函数
的
数据填充它。然后我调用copy_from_user函数来检查数据是否被
正确
写入。我没有读取我期望
的
数据,而是只读取了零。u16 address = 0xf0f0; char __user *buf = addr
浏览 11
提问于2019-07-05
得票数 1
2
回答
copy_to_user
在内核模块中不工作
、
、
我试图在内核模块读取函数中
使用
copy_to_user
,但无法将数据从内核复制到用户缓冲区。如果我做错了什么,请谁告诉我。我
的
内核版本是2.6.35。我给出了内核模块
的
一部分,以及用于测试它
的
应用程序。现在我
的
重点是为什么这个
copy_to_user
不能工作。任何帮助都会很好。msg_Ptr == 0) * Actually put the data into the buffer
浏览 1
提问于2013-01-24
得票数 2
回答已采纳
2
回答
将数据从linux内核空间复制到用户空间
、
、
我正在添加一个内核函数来修改进程
的
指定pid
的
nice和prio值。printk("pid:%d,current nice:%d, prio:%d\n",pid,task_nice(p),task_prio(p));
copy_to_user
(nice,(const void*)task_nice(p)
浏览 5
提问于2017-11-07
得票数 2
回答已采纳
2
回答
copy_to_user
对memcpy
、
、
、
我一直被告知(在书籍和教程中),在将数据从内核空间复制到用户空间时,我们应该
使用
copy_to_user
(),
使用
memcpy()会给系统带来问题。为什么我们应该
使用
copy_to_user
而不是memcpy()static ssize_t test_read(struct file *file, char _查看一下
copy_to_user
()
的
源代码就会发现,它也是简单
的
memcpy(),在这
浏览 2
提问于2013-02-20
得票数 14
回答已采纳
1
回答
如何在(内核模块)中向
copy_to_user
发送动态数组
、
、
、
静态数组似乎很容易被发送到用户空间,但我得到
的
填充是,我没有为动态数组做
正确
的
事情。谢谢。
浏览 3
提问于2017-02-10
得票数 1
回答已采纳
4
回答
为什么我在尝试从内核模块访问共享内存时得到“未处理
的
错误:不精确
的
外部中止”?
、
、
、
、
我在内核模块中有这样
的
内容:static int array[10]={1,2,3,4,5,6,7,8,9,10};static int *my_mmap (struct file *filep, struct vm_area_struct *vma ) { printk("r
浏览 1
提问于2012-08-08
得票数 1
回答已采纳
1
回答
编写我自己
的
系统调用来计算字符串指针中出现了多少o
、
、
因此,我
的
任务是在linux中编写自己
的
系统调用。这个系统调用将接受一个指向字符数组
的
指针,并将所有o替换为0。系统调用将返回所执行
的
替换数。如果字符串大小大于128字节,它将返回-1。因此,我已经实现了一个不同
的
系统调用,它完全可以按照这个链接中
的
步骤工作。。我已经检查了所有的东西,一切看起来都很好,所以我相信,无论是我写
的
系统调用,还是测试它,都有问题。假设是这样的话,我
的
系统呼叫有什么问题吗?我认为这可能与字符指针或类似的东西有关。 这是我<em
浏览 0
提问于2019-03-26
得票数 2
回答已采纳
1
回答
内核驱动程序从用户空间读取ok,但写回始终为0
、
、
、
我
使用
简单
的
字符设备作为这两者之间
的
链接,我已经成功地将数据传输到驱动程序,但我无法将有意义
的
数据返回到用户空间。2696.607593] initialize rx buffer..所以一切看起来都是
正确
的
但当我试着读
的
时候:[ 617.096528]
copy_to_user
returned (0) 我想我
浏览 0
提问于2013-06-07
得票数 6
回答已采纳
1
回答
copy_to_user
在char设备读取函数中返回一个错误
、
、
、
我为我
的
内核模块实现了一个char设备,并为它实现了一个读函数。read函数调用
copy_to_user
将数据返回给调用者。我最初以阻塞
的
方式实现了read函数(
使用
wait_event_interruptible),但是即使我以非阻塞
的
方式实现读取,问题也会重现。我
的
代码正在MIPS程序上运行。用户空间程序打开char设备并读入堆栈上分配
的
缓冲区。 我所发现
的
是,偶尔
copy_to_user
将无法复制任何字节。此外,即使我将
浏览 5
提问于2017-12-18
得票数 0
回答已采纳
1
回答
哪一个是真正
的
copy_from_user()?
我正在阅读copy_fom_user
的
Linux内核代码,它依赖于体系结构,我关注
的
是x86体系结构。在阅读内核代码时,我总是有这样
的
困惑。例如,由于条件编译,同一个函数可能有多个实现,我不能确定通常
使用
哪一个。有没有什么工具可以在给定编译后
的
内核和感兴趣
的
函数
的
情况下,告诉你相应
的</em
浏览 0
提问于2012-05-10
得票数 1
回答已采纳
2
回答
铸造与
copy_to_user
宏
、
、
我需要将内核空间中
的
curr_task->pid (内核空间中
的
pid_t )复制到具有很长空间
的
用户空间中
的
结构字段中。由于这是一个不断扩大
的
转换,我不期望有任何问题。但是,我收到了一个恼人
的
编译器警告(copy_long_to_user在所有意图和目的上都与
copy_to_user
相同): cs300/process_ancestors.c:31:3: warning如果我需要显式地将curr_task->pid转换为long,那么如何在<em
浏览 2
提问于2016-04-16
得票数 0
回答已采纳
3
回答
copy_to_user
在linux内核版本4.12.8中未定义
、
、
、
、
在我
的
项目中,我
使用
char驱动程序在用户空间和内核空间之间进行通信。我
使用
函数
copy_to_user
(void user *to, const void *from, unsigned long n)将数据从内核空间复制到用户空间缓冲区。我
使用
Linux Kernel版本4.4.0-59-generic,Ubuntu OS版本16.04LTS编译了这个项目,它工作得很好,没有任何错误和警告。我得到了想要
的
输出。我
使用
Linux kernel版本4.12.8,Ubun
浏览 2
提问于2017-09-19
得票数 12
回答已采纳
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
腾讯会议
云直播
对象存储
活动推荐
运营活动
广告
关闭
领券