Windows PowerShell command on Get-command cb_ops
MyWebUniversity

Manual Pages for UNIX Operating System command usage for man cb_ops

Data Structures for Drivers cb_ops(9S)

NAME

cb_ops - character/block entry points structure

SYNOPSIS

#include

#include

#include

INTERFACE LEVEL

Solaris DDI specific (Solaris DDI)

DESCRIPTION

The cb_ops structure contains all entry points for drivers

that support both character and block entry points. All leaf device drivers that support direct user process access to a

device should declare a cb_ops structure.

All drivers that safely allow multiple threads of execution

in the driver at the same time must set the D_MP flag in the

cb_flag field. See open(9E).

If the driver properly handles 64-bit offsets, it should

also set the D_64BIT flag in the cb_flag field. This speci-

fies that the driver will use the uio_loffset field of the

uio(9S) structure. If the driver returns EINTR from open(9E), it should also

set the D_OPEN_RETURNS_EINTR flag in the cb_flag field. This

lets the framework know that it is safe for the driver to

return EINTR when waiting, to provide exclusion for a last-

reference close(9E) call to complete before calling open(9E).

The mt-streams(9F) function describes other flags that can

be set in the cb_flag field.

The cb_rev is the cb_ops structure revision number. This

field must be set to CB_REV.

Non-STREAMS drivers should set cb_str to NULL.

The following DDI/DKI or DKI-only or DDI-only functions are

provided in the character/block driver operations structure.

SunOS 5.11 Last change: 24 Apr 2008 1

Data Structures for Drivers cb_ops(9S)

block/char Function Description

________________________________________________________________

b/c XXopen DDI/DKI

b/c XXclose DDI/DKI

b XXstrategy DDI/DKI

b XXprint DDI/DKI b XXdump DDI(Sun)

c XXread DDI/DKI

c XXwrite DDI/DKI

c XXioctl DDI/DKI c XXdevmap DDI(Sun) c XXmmap DKI c XXsegmap DKI

c XXchpoll DDI/DKI

c XXprop_op DDI(Sun)

c XXaread DDI(Sun) c XXawrite DDI(Sun) STRUCTURE MEMBERS

int (*cb_open)(dev_t *devp, int flag, int otyp, cred_t *credp);

int (*cb_close)(dev_t dev, int flag, int otyp, cred_t *credp);

int (*cb_strategy)(struct buf *bp);

int (*cb_print)(dev_t dev, char *str);

int (*cb_dump)(dev_t dev, caddr_t addr, daddr_t blkno, int nblk);

int (*cb_read)(dev_t dev, struct uio *uiop, cred_t *credp);

int (*cb_write)(dev_t dev, struct uio *uiop, cred_t *credp);

int (*cb_ioctl)(dev_t dev, int cmd, intptr_t arg, int mode,

cred_t *credp, int *rvalp);

int (*cb_devmap)(dev_t dev, devmap_cookie_t dhp, offset_t off,

size_t len, size_t *maplen, uint_t model);

int (*cb_mmap)(dev_t dev, off_t off, int prot);

int (*cb_segmap)(dev_t dev, off_t off, struct as *asp,

caddr_t *addrp, off_t len, unsigned int prot,

unsigned int maxprot, unsigned int flags, cred_t *credp);

int (*cb_chpoll)(dev_t dev, short events, int anyyet,

short *reventsp, struct pollhead **phpp);

int (*cb_prop_op)(dev_t dev, dev_info_t *dip,

ddi_prop_op_t prop_op, int mod_flags,

char *name, caddr_t valuep, int *length);

struct streamtab *cb_str; /* streams information */

int cb_flag;

int cb_rev;

int (*cb_aread)(dev_t dev, struct aio_req *aio, cred_t *credp);

int (*cb_awrite)(dev_t dev, struct aio_req *aio, cred_t *credp);

SEE ALSO

aread(9E), awrite(9E), chpoll(9E), close(9E), dump(9E),

ioctl(9E), mmap(9E), open(9E), print(9E), prop_op(9E),

read(9E), segmap(9E), strategy(9E), write(9E), nochpoll(9F),

nodev(9F), nulldev(9F), dev_ops(9S), qinit(9S)

SunOS 5.11 Last change: 24 Apr 2008 2

Data Structures for Drivers cb_ops(9S)

Writing Device Drivers STREAMS Programming Guide

SunOS 5.11 Last change: 24 Apr 2008 3




Contact us      |      About us      |      Term of use      |       Copyright © 2000-2019 MyWebUniversity.com ™