- Intro
- introduction to OpenServer kernel functions
- add_intr_handler
- dynamically add interrupt routine handler
- add_nmi_handler
- register an NMI handler function
- all_io
- determine if all processors can do device I/O
- archtobus
- extract bus type from architecture
- ASSERT
- verify assertion
- atomic
- quick atomic locks
- BatteriesCritical
- indicate that battery life is nearly expired
- bcopy
- copy bytes in kernel space
- bdistributed
- indicate block driver can have multiprocessor access
- brelse
- release a block buffer
- btoc
- convert between bytes and clicks (memory pages)
- bzero
- set memory locations to zero
- calldebug
- invoke current kernel debugger
- can_doio
- determine if current processor can do device I/O
- cdistributed
- indicate character driver can have multiprocessor access
- clockb
- conditionally lock and unlock critical sections
- clrbuf
- zero a block I/O buffer
- cmn_err
- log and display informational driver messages
- copyin
- copy bytes between user and kernel space
- copyio
- copy bytes between a physical and a virtual address
- copyout
- copy bytes from kernel space to user space
- cpass
- pass a character between user space and the kernel
- ctob
- convert memory pages to bytes
- cunlockb
- unlock critical section locked with clockb
- db_alloc
- allocate and free physically contiguous memory
- db_free
- releases memory allocated by db_alloc
- db_read
- transfer data from physical memory to a user address
- db_write
- transfer data from a user address to contiguous memory
- delay
- delay process execution for specified time
- deverr
- print a device error message on the console
- disksort
- add a block I/O request to a device's queue
- DISPLAYED
- checks if screen is displayed
- dma_alloc
- allocate a DMA channel
- dma_breakup
- size DMA request into 512-byte blocks
- dma_enable
- begin DMA transfer
- dma_param
- set up a DMA controller chip for DMA transfer
- dma_relse
- release previously allocated DMA channel
- dma_resid
- return the number of bytes not transferred during a DMA request
- dma_start
- queue DMA request
- emajor
- extract extended major/minor device numbers
- emdupmap
- duplicate channel mapping
- eminor
- extract external minor device number
- emunmap
- disable mapping on a channel
- flushtlb
- flush the translation lookaside buffer
- freecpages
- free memory allocated with getcpages()
- fubyte
- get a character from user data space
- fuword
- get one 32-bit word from user data space
- getablk
- calls geteblk (for backwards compatibility)
- getbsflag
- test for bootstring value
- getbsvalue
- get configuration information from the bootstring
- getbsword
- get bootstring words
- getc
- read clist buffers
- getcb
- remove and return a cblock from a buffer
- getcbp
- remove characters and transfer them to a buffer
- getcf
- return a pointer to a cblock
- getchar
- get one character of input during debug
- getcpages
- allocate and free physically contiguous memory
- geteblk
- get a buffer from the block buffer pool
- get_intr_arg
- get value of argument passed to the interrupt routine
- idistributed
- dynamically register an interrupt handler
- ilockb
- lock and unlock critical code section and disable interrupts directly
- inb
- read a byte from or write a byte to a physical I/O address
- ind
- read or write a 32-bit word to a physical I/O address
- intralloc
- get handle for later call to startio(D3oddi)
- intrallocs
- get handle for later call to startio(D3oddi)
- inw
- read or write a 16-bit word from or to a physical I/O address
- iodone
- signal I/O completion
- iomove
- move data to/from the user/kernel area
- iopolldistributed
- register an xxpoll routine as distributed
- iowait
- wait for I/O completion
- ismpx
- determine whether this is a multiprocessor configuration
- iunlockb
- unlock resource locked by ilockb
- kmem_alloc
- allocate kernel memory
- kmem_free
- free kernel memory
- kmem_zalloc
- allocate and zero kernel memory
- ktop
- convert kernel virtual address to physical address (XENIX)
- kvtophys
- convert kernel virtual address to physical address
- ldistributed
- register a line discipline as multithreaded
- LinePowerFailed
- indicate that AC power is interrupted
- LinePowerOK
- indicate that AC power is okay
- lockb
- lock and unlock critical code section for single processor access
- lockb5
- lock critical code at spl 5
- major
- return base major, new device number, or extended minor device number
- makedev
- get major and extended minor device number
- memget
- allocate contiguous memory at initialization
- minor
- get extended minor device number
- nano_timeout
- schedule a routine for future execution (nanosecond precision)
- outb
- write a byte to a physical I/O address
- outd
- write value to physical I/O
- outw
- write a word from to physical I/O address
- passc
- pass a character to user read request
- pci_buspresent
- determine the presence of a PCI bus
- pci_findclass
- find a PCI device given its class code
- pci_finddevice
- find a PCI device given its vendor and device IDs
- pci_read
- read data from PCI configuration space
- pci_readbyte
- read a byte from PCI configuration space
- pci_readdword
- read a 32-bit (double) word from PCI configuration space
- pci_readword
- read a word from PCI configuration space
- pci_search
- search PCI buses for a device matching specified fields
- pci_specialcycle
- generate a PCI special cycle
- pci_transbase
- remap I/O base address to a bus specific address
- pci_write
- write data to PCI configuration space
- pci_writebyte
- write a byte to PCI configuration space
- pci_writedword
- write a 32-bit (double) word to PCI configuration space
- pci_writeword
- write a word to PCI configuration space
- physck
- raw I/O for block drivers
- physio
- direct (raw) I/O for block drivers
- phystokv
- convert virtual and physical addresses
- pio_breakup
- break up programmed I/O requests
- printcfg
- display driver initialization message
- printf
- print a message on the console
- pr_intr_adderr
- output an error message if add_intr_handler(D3oddi) fails
- pr_intr_rmerr
- output an error message if remove_intr_handler(D3oddi) fails
- psignal
- send signal to a process
- ptok
- convert physical address to kernel virtual address (XENIX)
- putbc
- add block to clist
- putc
- write to clists
- putcb
- add characters to clist
- putcbp
- write to clists
- putcf
- add block to freelist
- putchar
- print a character on the console
- qaddb
- quick lock
- qaddi
- quick lock
- qaddl
- quick lock
- qaddub
- quick lock
- qaddui
- quick lock
- qaddul
- quick lock
- qadduw
- quick lock
- qaddw
- quick lock
- qandb
- quick lock
- qandi
- quick lock
- qandl
- quick lock
- qandub
- quick lock
- qandui
- quick lock
- qandul
- quick lock
- qanduw
- quick lock
- qandw
- quick lock
- qbtsi
- bit test and set
- qbtsl
- bit test and set
- qbtsui
- bit test and set
- qbtsul
- bit test and set
- qdecb
- quick lock
- qdeci
- quick lock
- qdecl
- quick lock
- qdecub
- quick lock
- qdecui
- quick lock
- qdecul
- quick lock
- qdecuw
- quick lock
- qdecw
- quick lock
- qincb
- quick lock
- qinci
- quick lock
- qincl
- quick lock
- qincub
- quick lock
- qincui
- quick lock
- qincul
- quick lock
- qincuw
- quick lock
- qincw
- quick lock
- qorb
- quick lock
- qori
- quick lock
- qorl
- quick lock
- qorub
- quick lock
- qorui
- quick lock
- qorul
- quick lock
- qoruw
- quick lock
- qorw
- quick lock
- qsubb
- quick lock
- qsubi
- quick lock
- qsubl
- quick lock
- qsubub
- quick lock
- qsubui
- quick lock
- qsubul
- quick lock
- qsubuw
- quick lock
- qsubw
- quick lock
- qxchgb
- quick lock
- qxchgi
- quick lock
- qxchgl
- quick lock
- qxchgub
- quick lock
- qxchgui
- quick lock
- qxchgul
- quick lock
- qxchguw
- quick lock
- qxchgw
- quick lock
- qzerob
- quick lock
- qzeroi
- quick lock
- qzerol
- quick lock
- qzeroub
- quick lock
- qzeroui
- quick lock
- qzeroul
- quick lock
- qzerouw
- quick lock
- qzerow
- quick lock
- remap_driver_cpu
- bind an interrupt service routine to a CPU
- remove_intr_handler
- dynamically remove interrupt routine handler
- remove_nmi_handler
- remove an NMI handler function
- repins
- read and write streams of device data
- repinsb
- read a stream of bytes
- repinsd
- read a stream of 32-bit words
- repinsw
- write a stream of words
- repout
- write streams of data
- repoutsb
- write a stream of bytes
- repoutsd
- write a stream of 32-bit words
- repoutsw
- write a stream of 16-bit words
- run_ld
- call line discipline from multithreaded driver
- sdistributed
- indicate that a STREAMS driver can have multiprocessor access
- select
- kernel routines supporting select(S)
- selfailure
- support select(S) - process should block
- selsuccess
- support select(S) - process should not block
- selwakeup
- support select(S) - awaken process
- seterror
- set error code in u.u_error
- signal
- send a signal to a process group
- sleep
- suspend execution pending occurrence of an event
- spl
- block or permit interrupts
- spl0
- permit all interrupts
- spl1
- prevent priority level 1 interrupts
- spl2
- prevent priority level 2 interrupts
- spl3
- prevent priority level 3 interrupts
- spl4
- prevent priority level 4 interrupts
- spl5
- prevent interrupts from character devices
- spl6
- prevent interrupts from the clock
- spl7
- prevent all interrupts
- splbuf
- prevent interrupts from block device
- splcli
- prevent interrupts from character list processing
- splhi
- prevent all interrupts
- splni
- prevent interrupts from network devices
- splpp
- prevent interrupts from character parallel ports
- splstr
- spl5 for use in STREAMS modules
- spltty
- prevent interrupts from character parallel ports
- splx
- restore a former interrupt
- sptalloc
- allocate temporary memory or map a device's memory
- sptfree
- release memory previously allocated with sptalloc(D3oddi)
- startio
- run start(D2oddi) routine from another processor
- subyte
- store a character in user data space
- surf
- SURF event logging monitor functions
- SURF_ACTIVE
- check that a particular SURF module is active
- SURF_ENQUEUE
- add event_record to SURF modules event list
- SURFHOOK
- hook SURF monitoring to kernel code
- suser
- determine if current user is the superuser
- suspend
- delay running processes
- suword
- store a 32-bit word in user data space
- tc_ctlock
- conditionally lock tty structure
- tc_ctunlock
- release conditional lock on tty structure
- tc_tlock
- lock and unlock portions of a tty structure
- tc_tunlock
- unlock tty structure
- TICKS
- macros for lbolt values
- TICKS_BETWEEN
- return time interval in ticks between two lbolt times
- TICKS_SINCE
- return time interval in ticks since an lbolt time
- timeout
- schedule a time to execute a routine
- timevalnow
- convert system representation of time to timeval format
- ttclose
- close TTY device
- ttin
- move characters to t_rawq character queue
- ttinit
- initialize tty structure for line discipline zero
- ttiocom
- interpret TTY driver I/O control commands
- ttioctl
- allocate, deallocate, or move contents of terminal buffers
- ttopen
- open a serial line
- ttout
- move characters to t_rbuf character queue
- ttrdchk
- check if there are characters to be read from the input queue
- ttread
- read data from a TTY device
- ttselect
- ensure that one-byte read can be done without blocking
- ttwrite
- write data to a TTY device
- tty
- TTY driver routines
- ttyflush
- release character blocks to the freelist
- ttywait
- wait for UART to empty of all data
- unlockb
- unlock critical code section
- untimeout
- cancel a timeout(D3oddi) request
- ups
- generic Uninterruptable Power Supply (UPS) driver
- ups_get_pwrdwn
- return address of routine to be called at every system shutdown
- ups_set_pwrdwn
- return address of UPS callback routine
- upsstate
- global variable for the current state of the UPS
- upssw
- UPS generic function switch table
- vas
- virtual address space memory function
- vasbind
- bind a specified virtual address to a physical address
- vasmalloc
- allocate virtual memory
- vasmapped
- determine if mapping is in place for specified memory range
- vasunbind
- undo a mapping
- viddoio
- support I/O management for adapter driver
- video
- support video adapter driver development
- vidinitscreen
- initialise a multiscreen
- vidmap
- get a pointer to virtual memory
- vidresscreen
- restore a multiscreen
- vidsavscreen
- save a multiscreen
- vidumapinit
- return a kernel data pointer
- vidunmap
- unbind virtual memory got by vidumapinit
- VM_SLEEP
- set sleep priority when waiting for virtual memory allocation
- vtop
- convert a virtual address to a physical address
- wakeup
- wake up a sleeping process
- wakeupn
- wake up a specified number of processes