linux-device-driver

    0热度

    1回答

    当我尝试-finstrument-functions-exclude-file-list=arch/arm/boot/dts/并编译内核时,__cyg_profile_func_enter和__cyg_profile_func_exit没有被调用任何函数。正常-finstrument-functions正常工作。我的海湾合作委员会版本是4.8.4

    0热度

    1回答

    什么是 “电流 - > PID” 版画低于2的情况下 1)硬中断上下文 2)软IRQ背景 我知道IRQ背景和过程的情况下,上下文不同,并且在IRQ上下文情况下,PID必须无效。但是当试图在IRQ上下文中打印“current-> pid”时,它正在打印一些有效的PID,因此产生了疑问。 请说明。 谢谢, Gopinath。

    0热度

    1回答

    我试图了解关于Linux内核4.4编解码器驱动程序代码。编解码器使用i2c总线连接到声卡,并将编解码器驱动程序代码编写为I2C客户端。客户的结构i2c_driver包含i2c_device_id信息和of_device_id信息。当兼容串结构的of_device_id比赛与兼容串的设备节点信息 现在按照我的理解客户的探测功能将被调用。那么有什么用struct i2c_device_id? 注:编解

    0热度

    1回答

    我需要弄清楚Linux内核的start_kernel函数中调用的时间函数。 为什么这是一个问题,因为如果我在同一个函数内的timekeeping_init()函数调用之前放入一个ktime_get()函数调用,内核就不会启动。 在我的设置中,我认为最有可能的内核在mm_init()内花了很多时间。但由于上述提及问题,我无法验证。 有关如何解决此问题的任何想法? 感谢。

    1热度

    1回答

    我在Linux内核的start_kernel函数中添加了一些打印语句来打印jiffies值。印刷报表均匀分布。 当系统启动并检出打印值时,它们都是相同的值(4294937296)。 所以,我的问题是jiffies的价值多久更新一次?

    0热度

    2回答

    我想编写虚拟ALSA兼容驱动程序作为可加载内核模块。当通过ALSA-lib通过aplay/arecord访问它时,假设它必须像通常的7.1声道音频设备一样提供所有基本控制 - 采样率,通道数量,格式等... 下面会只需从音频流中获取每个通道,并将其作为UDP数据包流通过网络发送。 它必须能够被加载多次,并且最终它会暴露多达/ dev下的音频设备。这样我们就可以在系统中有多个虚拟声卡。 这种内核模块

    0热度

    3回答

    一般来说,桌面有两种CPU高速缓存以加快内存访问速度。 1)指令缓存 - >加速可执行指令。 2)数据缓存 - >加快数据的获取和存储。 根据我的理解,指令缓存操作程序的代码段,数据缓存操作程序的数据段。这是正确的吗? 从堆分配的内存没有缓存优势吗?数据缓存中是否覆盖了堆内存访问?

    1热度

    1回答

    任何人都可以解释一个linux字符驱动程序和提供它的相应组件所涉及的接口吗?

    1热度

    1回答

    当我尝试打印linux-3.10内核和x86板的minicom中的某个函数名时,我在minicom的每一行中都会得到额外的空格。我用minicom打开了换行,但存在相同的问题。 ARM板不会发生这种情况。它在ARM板中正确打印。 x86_64_start_kernel() reset_early_page_tables() 该代码用于在边框上打印每个名称。是否有任何设置要在min

    2热度

    1回答

    我正在为linux编写一个块设备驱动程序。 支持不安全删除是非常重要的(例如拔掉usb)。换句话说,即使应用程序在我的设备上保存打开的文件或执行IO或者文件系统挂载了应用程序,我也希望能够关闭块设备而不会造成内存泄漏/崩溃。 当然,不安全的移除可能会破坏存储在设备上的数据,但这是客户愿意接受的。 下面是基本步骤我做: 在不安全取出,块设备产生一个僵尸,它会自动失败的所有新的IO请求,读写控制等僵尸