write(9e) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

write(9e)

write(9E)                     Driver Entry Points                    write(9E)



NAME
       write - write data to a device

SYNOPSIS
       #include <sys/types.h>
       #include <sys/errno.h>
       #include <sys/open.h>
       #include <sys/cred.h>
       #include <sys/ddi.h>
       #include <sys/sunddi.h>

       int prefixwrite(dev_t dev, struct uio *uio_p, cred_t *cred_p);

INTERFACE LEVEL
       Architecture  independent  level  1  (DDI/DKI).  This  entry  point  is
       optional.

PARAMETERS
       dev       Device number.


       uio_p     Pointer to the uio(9S) structure  that  describes  where  the
                 data is to be stored in user space.


       cred_p     Pointer  to the user credential structure for the I/O trans‐
                 action.


DESCRIPTION
       Used for character or raw data  I/O,  the  driver  write()  routine  is
       called  indirectly  through cb_ops(9S) by the write(2) system call. The
       write() routine supervises the data  transfer  from  user  space  to  a
       device described by the uio(9S) structure.


       The  write() routine should check the validity of the minor number com‐
       ponent of dev and the user credentials pointed to by cred_p, if  perti‐
       nent.

RETURN VALUES
       The  write()  routine  should  return 0 for success, or the appropriate
       error number.

EXAMPLES
       The following is an example of a write() routine  using  physio(9F)  to
       perform writes to a seekable device:



         static int
         xxwrite(dev_t dev, struct uio *uiop, cred_t *credp)
         {
               int instance;
               xx_t     xx;

               instance = getminor(dev);
               xx = ddi_get_soft_state(xxstate, instance);
               if (xx == NULL)
                      return (ENXIO);
               return (physio(xxstrategy, NULL, dev, B_WRITE,
                      xxmin, uiop));
         }


SEE ALSO
       read(2), write(2), read(9E), physio(9F), cb_ops(9S), uio(9S)


       Writing Device Drivers in Oracle Solaris 11.4



Oracle Solaris 11.4               28 Mar 1997                        write(9E)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3