M
- M_BREAK, M_BREAK
- M_COPYIN, M_COPYIN
- M_COPYOUT, M_COPYOUT
- transparent ioctl example, Bidirectional Data Transfer Example
- with M_IOCTL, M_IOCTL
- M_COPYOUT using transparent ioctl, example, M_COPYOUT Example
- M_CTL, M_CTL
- M_STOP, SO_MREADOFF and M_STOP
- SO_MREADOFF, SO_MREADOFF and M_STOP
- with line discipline module, Line-Discipline Module
- M_DATA, M_DATA
- M_DELAY, M_DELAY
- M_ERROR, M_ERROR
- M_FLUSH, M_FLUSH
- flags, M_FLUSH
- flush read and write queues, Flush Handling
- flush read side of stream, Flush Handling
- flush write side of stream, Flush Handling
- FLUSHR, Flush Handling
- FLUSHRW, Flush Handling
- FLUSHW, Flush Handling
- in module example, Filter Module Example
- packet mode, Packet Mode
- M_FLUSH message handling, description, M_FLUSH Message Handling
- M_HANGUP, M_HANGUP
- M_IOCACK, M_IOCACK
- with M_COPYOUT, M_COPYOUT
- with M_IOCTL, M_IOCTL
- M_IOCDATA, M_IOCDATA
- M_IOCDATA processing
- example
- M_COPYIN Example
- Bidirectional Data Transfer Example
- M_IOCNAK, M_IOCNAK
- with M_COPYOUT, M_COPYOUT
- with M_IOCTL, M_IOCTL
- M_IOCTL
- M_IOCTL
- M_IOCTL
- transparent, M_IOCTL
- with M_COPYOUT, M_COPYOUT
- M_PASSFP, M_PASSFP
- M_PCPROTO, M_PCPROTO
- M_PCRSE, M_PCRSE
- M_PCSIG, M_PCSIG
- M_PROTO
- M_PROTO
- M_PROTO
- M_READ, M_READ
- M_RSE, M_RSE
- M_SETOPTS, M_SETOPTS
- SO_FLAG, M_SETOPTS
- SO_ISTTY, M_SIG
- so_readopt options, Read Options
- M_SIG, M_SIG
- in signaling, signal Message
- M_STOP, SO_MREADOFF and M_STOP
- M_STOPI, SO_MREADOFFI and M_STOPI
- M_UNHANGUP, M_UNHANGUP
- managing extended buffers in multithreaded environment, example, esballoc(9F) Example
- manipulating modules, Manipulating Modules
- master driver
- in pseudo-tty subsystem, STREAMS-based Pseudo-Terminal Subsystem
- open, Pseudo-TTY Drivers: ptm and pts
- mdb, adb Command
- memory-mapped I/O, Extended STREAMS Buffers
- message, Message Processing
- accessing queue information, Using Queue Information
- allocation, Message Allocation and Freeing
- container for data and control information, Overview of Streams in Kernel Space
- create priority band message, Message Direction
- data alignment, Data Alignment
- definitions of priority band fields, Using Queue Information
- flow control, Controlling Data Flow and Priorities
- freeing, Message Allocation and Freeing
- getmsg, Message Direction
- getpmsg, Message Direction
- high-priority
- Message Queues and Message Priority
- Flow Control in Service Procedures
- linking, Message Linkage
- M_BREAK
- Message Types
- M_BREAK
- M_COPYIN
- Message Types
- M_COPYIN
- M_COPYOUT
- Message Types
- M_COPYOUT
- M_CTL
- Message Types
- M_CTL
- SO_MREADOFF and M_STOP
- M_DATA
- Message Types
- M_DATA
- M_DELAY
- Message Types
- M_DELAY
- M_ERROR
- Message Types
- M_ERROR
- M_FLUSH
- Message Types
- M_FLUSH
- M_HANGUP
- Message Types
- M_HANGUP
- M_IOCACK
- Message Types
- M_IOCACK
- M_IOCDATA
- Message Types
- M_IOCDATA
- M_IOCNAK
- Message Types
- M_IOCNAK
- M_IOCTL
- Message Types
- M_IOCTL
- M_PASSFP
- Message Types
- M_PASSFP
- M_PCPROTO
- Message Types
- M_PCPROTO
- M_PCRSE, M_PCRSE
- M_PCSIG
- Message Types
- M_PCSIG
- M_PROTO
- Message Types
- M_PROTO
- M_READ
- Message Types
- M_READ
- M_RSE, M_RSE
- M_SETOPTS
- Message Types
- M_SETOPTS
- M_SIG, Message Types
- M_START, Message Types
- M_STARTI, Message Types
- M_STOP, Message Types
- M_STOPI
- Message Types
- SO_MREADOFFI and M_STOPI
- M_UNHANGUP
- Message Types
- M_UNHANGUP
- msgb structure
- Message Structure
- Message Structure
- priority, Message Queues and Message Priority
- putmsg, Message Direction
- putpmsg, Message Direction
- qband structure, qband Structure
- qinit structure, Entry Points
- queue
- Message Queues and Message Priority
- Message Queues
- queue priority, Message Queueing and Priorities
- queue structure, queue() Structure
- queues
- Message Queueing and Priorities
- Queued Messages
- read options, Read Options
- recovering from allocation failure, Recovering From No Buffers
- recovering from no buffers, Recovering From No Buffers
- retrieve priority band message, Message Direction
- service interface, Driver and Module Service Interfaces
- shared data, Shared Data
- SO_MREADOFI, SO_MREADOFFI and M_STOPI
- translation between user application and kernel, Overview of Streams in Kernel Space
- types, Message Types
- using qband information, Using qband Information
- write option, Write Options
- message (STREAMS)
- direction, Sending and Receiving Messages
- flow, Message Processing Procedures
- handled by pckt, Packet Mode
- handled by ptem, Pseudo-TTY Emulation Module: ptem
- high-priority
- Message Types
- High-Priority Messages
- ldterm read side, Read-Side Processing
- ldterm write side, Write-Side Processing
- linking into queues, Message Structure
- M_DATA, Sending and Receiving Messages
- M_PCPROTO, Sending and Receiving Messages
- M_PROTO, Sending and Receiving Messages
- ordinary
- Message Types
- Ordinary Messages
- M_SIG
- processing, Message Processing Procedures
- sending/receiving, Sending and Receiving Messages
- structures, Message Structure
- types, Message Types
- message block, Glossary
- message block structure, example, Message Structure
- message ordering, Shared Data
- message priorities, Message Queues and Message Priority
- message queue, Glossary
- priority, Controlling Data Flow and Priorities
- priority levels, Message Queueing Priority
- message types, rules for changing, Message Type Change Rules
- messages, kernel, Message Types
- messages sent by driver to stream head
- M_ERROR, Loop-Around Driver
- M_HANGUP, Loop-Around Driver
- M_SIG/M_PCSIG, Loop-Around Driver
- modldrv structure, driver operations and linkage information, modldrv
- modlinkage structure
- module link information, modlinkage
- revision level of loadable modules, modlinkage
- modlstrmod structure, module operations and linkage information, modlstrmod
- module, Glossary
- difference with driver, Inserting Modules
- draining, Closing the Stream
- ioctl control, Module and Driver Control
- line discipline, Glossary
- manipulation, Manipulating Modules
- pushable, Glossary
- reusability, Module Reusability
- module entry point structure, example, Entry Points
- module_info structure, example, Entry Points
- module information structure, example, Entry Points
- module put, example, put Procedure
- module service procedure, example, Queue service Procedure
- module unloading, outstanding esballoc callback, Unloading a Module that Uses esballoc
- monitor streams events, Input and Output Polling
- msgb structure, Message Structure
- msgdsize, Kernel Utility Interface Summary
- MT SAFE
- cb_flag for driver, MT SAFE Driver
- driver, MT SAFE Driver
- f_flag for module, MT SAFE Module
- module, MT SAFE Module
- multiple process write, same pipe, Writing to a Pipe or FIFO
- multiplexer, Glossary
- building
- Building a Multiplexer
- Building a Multiplexer
- controlling stream, Building a Multiplexer
- data routing, Routing Data Through a Multiplexer
- declarations, Multiplexing Driver Example
- definition, Configuring Multiplexed Streams
- design guidelines, Design Guidelines
- dismantling, Dismantling a Multiplexer
- driver
- Multiplexing Driver Example
- Lower Read put Procedure
- example
- Multiplexer Construction Example
- Multiplexer Construction Example
- lower, STREAMS Multiplexers
- lower connection
- Connecting Lower Streams
- Connecting Lower Streams
- lower disconnection, Disconnecting Lower Streams
- lower read put procedure
- Lower Read put Procedure
- Lower Read put Procedure
- lower stream
- Configuring Multiplexed Streams
- Glossary
- lower write service procedure, Lower Write service Procedure
- lower write service procedure, Lower Write service Procedure
- minor device connect, Connecting And Disconnecting Lower Streams
- minor device disconnect, Disconnecting Lower Streams
- pseudo-device driver, Configuring Multiplexed Streams
- upper, STREAMS Multiplexers
- upper-queue write put procedure, Upper Write put Procedure Sample
- upper stream
- Configuring Multiplexed Streams
- Glossary
- upper write service procedure, Upper Write service Procedure Sample
- multiplexer ID
- in multiplexer building, Building a Multiplexer
- in multiplexer dismantling, Dismantling a Multiplexer
- multiplexing STREAMS, Configuring Multiplexed Streams
- multithread framework
- MT SAFE, MT SAFE Modules and Drivers
- perimeters, MT SAFE Modules and Drivers
- multithreaded kernel, Multithreading the Kernel
- porting to, Preparing to Port
- multithreaded module
- explicit locks, MT SAFE Modules Using Explicit Locks
- explicit locks, constraints, Constraints When Using Locks
- preserving message ordering, Preserving Message Ordering
- multithreaded perimeter
- choosing a type, Choosing a Perimeter Type
- defining a type, Defining Perimeter Types
- description, MT STREAMS Perimeters
- exclusive/shared access flags, Choosing a Perimeter Type
- flags, Choosing a Perimeter Type
- fully-hot, Hot Perimeters
- inner, Inner Perimeters
- inner perimeter flags, Choosing a Perimeter Type
- outer, Outer Perimeters
- outer perimeter flags, Choosing a Perimeter Type
- PERMOD, PERMOD Perimeter
- routines used inside a perimeter, Routines Used Inside a Perimeter
- multithreaded STREAMS, concepts and terminology, Multithreaded (MT) STREAMS Overview
- multithreaded STREAMS module with outer perimeter, example, Sample Multithreaded Module With Outer Perimeter
- multithreaded STREAMS pseudo-driver using an inner perimeter, example, Sample Multithreaded Device Driver Using a Per Module Inner Perimeter
- muxuwput, upper-queue write put procedure, Upper Write put Procedure Sample