<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Открытие файла из модуля ядра</title>
    <link>https://opennet.me/openforum/vsluhforumID9/8746.html</link>
    <description>Здравствуйте. Помогите пожалуйста в решении проблемы. Вот простейший пример:&lt;br&gt;&lt;br&gt;#include &amp;lt;linux/module.h&amp;gt;&lt;br&gt;#include &amp;lt;linux/kernel.h&amp;gt;&lt;br&gt;#include &amp;lt;linux/fcntl.h&amp;gt;   &lt;br&gt;#include &amp;lt;linux/unistd.h&amp;gt;   &lt;br&gt;&lt;br&gt;int init_module(void)&lt;br&gt;&#123;&lt;br&gt;   int fd;&lt;br&gt;&lt;br&gt;   fd = open(&quot;/dev/input/mice&quot;, 0);&lt;br&gt;   close(fd);&lt;br&gt;&lt;br&gt;   printk(&quot;&amp;lt;1&amp;gt;Hello world 1.&#092;n&quot;);&lt;br&gt;   return 0;&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;void cleanup_module(void)&lt;br&gt;&#123;&lt;br&gt;printk(KERN_ALERT &quot;Goodbye world 1.&#092;n&quot;);&lt;br&gt;&#125;&lt;br&gt;&lt;br&gt;Makefile: obj-m += sip.o&lt;br&gt;&lt;br&gt;Параметры сборки: make -C /usr/src/linux-headers-&#096;uname -r&#096; SUBDIRS=$PWD^C&lt;br&gt;&lt;br&gt;Вот что выдает:&lt;br&gt;root&#064;shad:/home/shad/li# make -C /usr/src/linux-headers-&#096;uname -r&#096; SUBDIRS=$PWD&lt;br&gt;make: Вход в каталог &#096;/usr/src/linux-headers-2.6.32-21-generic&apos;&lt;br&gt;CC &#091;M&#093; /home/shad/li/sip.o&lt;br&gt;/home/shad/li/sip.c: In function &amp;#8216;init_module&amp;#8217;:&lt;br&gt;/home/shad/li/sip.c:10: error: implicit declaration of function &amp;#8216;open&amp;#8217;&lt;br&gt;/home/shad/li/sip.c:11: error: implicit declaration of function &amp;#8216;close&amp;#8217;&lt;br&gt;make&#091;1&#093;: *** &#091;/home/shad/li/sip.o&#093; Ошибка 1&lt;br&gt;make: *** &#091;_module_/home/shad/li</description>

<item>
    <title>Открытие файла из модуля ядра (ramol)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/8746.html#2</link>
    <pubDate>Wed, 07 Jul 2010 05:20:11 GMT</pubDate>
    <description>Ну ти глянь реализацыю функции open. Она должна визывать ядерну функцию после переключения контекста с user space в в kernel space. Ну и еще компилер ругается потому что у тебя хедера не заинклюджени&lt;br&gt;</description>
</item>

<item>
    <title>Открытие файла из модуля ядра (svn)</title>
    <link>https://opennet.me/openforum/vsluhforumID9/8746.html#1</link>
    <pubDate>Mon, 24 May 2010 17:26:22 GMT</pubDate>
    <description>&amp;gt;Почему не находит объявление функции open? &lt;br&gt;&lt;br&gt;Потому что нет этой функции в ядре. Фаловый ввод-вывод связан с виртуальной памятью, open не обходится без page fault и его обработчика.&lt;br&gt;&lt;br&gt;По этой же причине в ядре не может быть никакого open. Посмотри как читает файлы nfsd.&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

</channel>
</rss>
