Article View: pl.comp.os.linux.programowanie
Article #72423Re: Połączenie jądro -> program.
From: macu
Date: Tue, 31 Jan 2012 12:50
Date: Tue, 31 Jan 2012 12:50
33 lines
2481 bytes
2481 bytes
On 01/30/2012 03:07 PM, Andrzej W. wrote:
> W dniu 2012-01-30 12:06, macu pisze:
>> Zrob dokladnie tak jak napisal Krzysztof Magosa, aby modul byl dostepny
>> przez noda w /dev/
>> wtedy funkcjami poll/epoll/select uspisz swoj userspace'owy
>> program w oczekiwaniu na zdarzenie (w twoim przypadku inkrementacja
>> licznika), a potem program odczyta dzieki ioctl stan licznika w module
>> (wtedy nie "zgubisz" zadnego przerwania nawet jak czas miedzy odebraniem
>> eventa a odczytem biezacej wartosci bedzie zbyt duzy)
>
> Moduł który chce przerobić obsługuje GPIO procesora, każdy z IO jest już
> reprezentowany w /dev/, ale raczej na takim pliku się poll nie postawi,
> rozumiem, że mam zrobić urządzenie, które będzie przechowywać tylko
> wartość licznika?
>
> O czym mam sobie poczytać, żeby się uświadomić w temacie tworzenia
> takich urządzeń?
>
poszukaj na sieci ksiazek
Linux-Device-Drivers-3rd-Edition.pdf (+ plik ldd3_examples.tar.gz)
OReilly,.Linux.System.Programming.pdf
Professional Linux Kernel Architecture.pdf
LinuxKernelInANutshell.pdf
generalnie kod drivera wypelnia pola struktury file_operations
wskaznikami do swoich funkcji, jest tam m.in. pole
unsigned int (*poll) (struct file *, struct poll_table_struct *);
jak masz zrodla drivera do gpio to sprawdz czy jest tam tak robione,
jesli tak to moze moglbys sie "podczepic" ze swoim poll'em z aplikacji
Mariusz
Technical Details
Message-ID:
<jg8o2i$hl$1@inews.gazeta.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mailReferences:
<jg1r2c$814$1@mx1.internetia.pl> <jg3es1$49a$1@news.task.gda.pl> <jg45im$9tb$1@mx1.internetia.pl> <jg5tir$hd7$1@inews.gazeta.pl> <4f26a424$0$1211$65785112@news.neostrada.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail From: macu <macu@polbox.pl> Newsgroups: pl.comp.os.linux.programowanie Subject: Re: Połączenie jądro -> program. Date: Tue, 31 Jan 2012 13:50:23 +0100 Organization: "Portal Gazeta.pl -> http://www.gazeta.pl" Lines: 33 Message-ID: <jg8o2i$hl$1@inews.gazeta.pl> References: <jg1r2c$814$1@mx1.internetia.pl> <jg3es1$49a$1@news.task.gda.pl> <jg45im$9tb$1@mx1.internetia.pl> <jg5tir$hd7$1@inews.gazeta.pl> <4f26a424$0$1211$65785112@news.neostrada.pl> NNTP-Posting-Host: 85.94.231.209 Mime-Version: 1.0 X-Trace: inews.gazeta.pl 1328014226 565 85.94.231.209 (31 Jan 2012 12:50:26 GMT) X-Complaints-To: usenet@agora.pl NNTP-Posting-Date: Tue, 31 Jan 2012 12:50:26 +0000 (UTC) X-User: marcukr In-Reply-To: <4f26a424$0$1211$65785112@news.neostrada.pl> User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.9) Gecko/20100430 Fedora/3.0.4-2.fc11 Thunderbird/3.0.4 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit