freeb(9f) 맨 페이지 - 윈디하나의 솔라나라

개요

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

freeb(9f)

freeb(9F)                      Kernel Functions                      freeb(9F)

NAME
       freeb - free a message block

SYNOPSIS
       #include <sys/stream.h>

       void freeb(mblk_t *bp);

PARAMETERS
       bp    Pointer  to the message block to be deallocated. mblk_t is an in‐
             stance of the msgb(9S) structure.


INTERFACE LEVEL
       Architecture independent level 1 (DDI/DKI).

DESCRIPTION
       The freeb() function deallocates a  message  block.  If  the  reference
       count  of  the db_ref member of the datab(9S) structure is greater than
       1, freeb() decrements the count. If db_ref equals 1, it deallocates the
       message block and the corresponding data block and buffer.


       If the data buffer to be freed was allocated with the esballoc(9F), the
       buffer may be a non-STREAMS resource. In that case, the driver must  be
       notified  that  the attached data buffer needs to be freed, and run its
       own freeing routine. To make this process  independent  of  the  driver
       used in the stream, freeb() finds the free_rtn(9S) structure associated
       with  the buffer. The free_rtn structure contains a pointer to the dri‐
       ver-dependent routine, which releases the buffer. Once this  is  accom‐
       plished,  freeb()  releases  the  STREAMS resources associated with the
       buffer.

CONTEXT
       The freeb() function can be called from user, interrupt, or kernel con‐
       text.

EXAMPLES
       Example 1 Using freeb()



       See copyb(9F) for an example of using freeb().

SEE ALSO
       dupb(9F), allocb(9F), copyb(9F), esballoc(9F), free_rtn(9S)


       Writing Device Drivers in Oracle Solaris 11.4


       STREAMS Programming Guide

Oracle Solaris 11.4               16 Jan 2006                        freeb(9F)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3