![]() |
|
|
google unix.com
|
|||||||
| Forums | Register | Forum Rules | Links | Albums | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| High Level Programming Post questions about C, C++, Java, SQL, and other programming languages here. |
More UNIX and Linux Forum Topics You Might Find Helpful
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Network device driver | niketan | High Level Programming | 1 | 04-17-2007 11:56 PM |
| SUNWglmr -- rasctrl environment monitoring driver for i2c or SCSI device driver ? | roygoodwin | SUN Solaris | 1 | 12-26-2006 10:59 PM |
| Kernel and Device Driver Programming | Farhan | UNIX for Advanced & Expert Users | 0 | 07-26-2004 02:59 AM |
| Increase Device Driver Major No in SunOs 5.8 | haiudhaya | High Level Programming | 1 | 08-09-2002 05:50 AM |
|
|
LinkBack | Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
||||
|
freeBSD device driver (use struct uio)
Hi, everybody
I have next problem... 1) My Example program code void main() { int fd; int len; int buf[256]; fd=open("mydev", O_RDONLY); lseek(fd, 0, SEEK_SET); len=read(fd, buf, sizeof(buf)); } 2) My Example Driver code static int mydev_read(dev_t dev, ?, ?, struct uio* uio) { int newbuf[10]; int lennewbuf; lenbuf=uio->uio_resid; //this is size of programm buffer (see up sizeof(buf)) uio->uio_resid=10*sizeof(int); //I try set new size returned buffer moveuio(?,?,?,?);//I copy data to program buffer return 0; } 3) And Question... Why is len variable (in Program code) after call read() == sizeof(buf), but I set in Driver code uio_resid to value 10*sizeof(int)? It's All ![]() |
| Bookmarks |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|