Skip site navigation (1)Skip section navigation (2)

FreeBSD Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
INTRO(9)	       FreeBSD Kernel Developer's Manual	      INTRO(9)

NAME
     intro -- introduction to kernel internals

DESCRIPTION
     This section contains information related to the internal operation of
     the system	kernel.	 It describes function interfaces and variables	of use
     to	the systems and	device driver programmer.

     In	addition to the	normal man page	format,	the kernel pages include an
     additional	section:

     CODE REFERENCES  Contains the pathname(s) of the source file(s) which
		      contain the definition and/or source code	of the vari-
		      ables or functions being documented.  Any	paths are rel-
		      ative to the top level of	the source tree	(traditionally
		      /usr/src).

MEMORY MANAGEMENT
     Machine-dependent swap interface.	See cpu_swapout(9).

     Introduction to kernel memory allocators.	See memoryallocators(9).

     Machine-dependent portion of the virtual memory system.  See pmap(9).

     Virtual memory system external interface.	See uvm(9).

I/O SUBSYSTEM
     Buffer cache interfaces.  See buffercache(9).

     Device buffer queues.  See	bufq(9).

     Initiate I/O on raw devices.  See physio(9).

     I/O descriptor allocation interface.  See getiobuf(9).

PROCESS	CONTROL
     Machine-dependent process exit.  See cpu_exit(9).

     Idle CPU while waiting for	work.  See cpu_idle(9).

     Finish a fork operation.  See cpu_lwp_fork(9).

     Switch to another light weight process.  See mi_switch(9).

     Current process and processor.  See curproc(9).

     Set process uid and gid.  See do_setresuid(9).

     New processes and kernel threads.	See fork1(9), kthread(9).

     Context switch notification.  See cpu_need_resched(9).

     Common scheduler framework.  See csf(9).

     Software signal facilities.  See signal(9).

     Suspend the scheduler.  See suspendsched(9).

     Return path to user-mode execution.  See userret(9).

FILE SYSTEM
     High-level	file operations.  See dofileread(9).

     Convert an	extended attribute namespace identifier	to a string and	vice
     versa.  See extattr(9).

     Operations	on file	entries.  See file(9).

     In-kernel,	file-system independent, file-meta data	association.  See
     fileassoc(9).

     File descriptor tables and	operations.  See filedesc(9).

     File descriptor owner handling functions.	See fsetown(9).

     File system suspension helper subsystem.  See fstrans(9).

     Pathname lookup, cache and	management.  See namei(9), namecache(9),
     pathname(9).

     Kernel interface to file systems.	See vfs(9).

     Kernel representation of a	file or	directory and vnode attributes.	 See
     vnode(9), vattr(9).

NETWORKING
     Kernel interfaces for manipulating	output queues on network interfaces.
     See altq(9).

     Externally	visible	ARP functions.	See arp(9).

     Ethernet and FDDI driver support functions	and macros.  See ethersubr(9).

     Core 802.11 network stack functions and rate adaptation based on received
     signal strength.  See ieee80211(9), rssadapt(9).

     Compute Internet checksum.	 See in_cksum(9).

     Look up the IPv4 source address best matching an IPv4 destination.	 See
     in_getifa(9).

     Functions and macros for managing memory used by networking code.	See
     mbuf(9).

     Packet filter interface.  See pfil(9).

     Route callout functions.  See rt_timer(9).

     TCP congestion control API.  See tcp_congctl(9).

LOCKING	AND INTERRUPT CONTROL
     Condition variables.  See condvar(9).

     Kernel lock functions.  See lock(9).

     Memory barriers.  See mb(9).

     Mutual exclusion primitives.  See mutex(9).

     Restartable atomic	sequences.  See	ras(9).

     Reader / writer lock primitives.  See rwlock(9).

     Machine-independent software interrupt framework.	See softintr(9).

     Functions to modify system	interrupt priority level.  See spl(9).

     Functions ro raise	the system priority level.  See	splraiseipl(9).

SECURITY
     Kernel authorization framework.  See kauth(9).

     API for cryptographic services in the kernel.  See	opencrypto(9).

     Security model development	guidelines.  See secmodel(9).

SYSTEM TIME CONTROL
     Execute a function	after a	specified length of time.  See callout(9).

     Microsecond delay.	 See delay(9).

     Real-time timer.  See hardclock(9).

     System clock frequency.  See hz(9).

     Initialization of system time and time-of-day clock support.  See
     inittodr(9), todr(9).

     Check that	a timeval value	is valid, and correct.	See itimerfix(9).

     System time variables.  See timecounter(9).

     Realtime system clock.  See microtime(9).

     Get the time elapsed since	boot.  See microuptime(9).

     Convert milliseconds to system clock ticks.  See mstohz(9).

     Function to help implement	rate-limited actions.  See ppsratecheck(9).

     Function to help implement	rate-limited actions.  See ratecheck(9).

     Set battery-backed	clock from system time.	 See resettodr(9).

     System time variables.  See time_second(9).

KERNEL AND USER	SPACE DATA COPY	FUNCTIONS
     Kernel space to/from user space copy functions.  See copy(9).

     Store data	to user-space.	See store(9).

     Fetch data	from user-space.  See fetch(9).

     Move data described by a struct uio.  See uiomove(9).

MACHINE	DEPENDENT KERNEL FUNCTIONS
     Machine-dependent clock setup interface.  See cpu_initclocks(9).

     Machine-dependent process core dump interface.  See cpu_coredump(9).

     Machine-dependent kernel core dumps.  See cpu_dumpconf(9).

     Unique CPU	identification number See cpu_number(9).

     Halt or reboot the	system See cpu_reboot(9).

     Machine-dependent root file system	setup See cpu_rootconf(9).

     Machine-dependent CPU startup See cpu_startup(9).

     Disk label	management routines.  See disklabel(9).

DEVICE CONFIGURATION
     Autoconfiguration frame-work.  See	autoconf(9).

     Description of a device driver.  See driver(9).

     The autoconfiguration framework ``device definition'' language.  See
     config(9).

     Machine-dependent device autoconfiguration.  See cpu_configure(9).

MI DEVICE DRIVER API
     Bus and Machine Independent DMA Mapping Interface.	 See bus_dma(9).

     Bus space manipulation functions.	See bus_space(9).

     Generic disk framework.  See disk(9).

     Hardware-assisted data mover interface.  See dmover(9).  Generic event
     counter framework.	 See evcnt(9).

     Firmware loader API for device drivers.  See firmload(9).

     How to implement a	new ioctl call to access device	drivers.  See
     ioctl(9).

     Extensible	line discipline	framework.  See	linedisc(9).

CONSOLE	DEVICES
     Console magic key sequence	management.  See cnmagic(9).

     Console access interface.	See cons(9).

     Raster display operations.	 See rasops(9).

     Generic virtual console framework.	 See vcons(9).

     Machine-independent console support.  See wscons(9).

DEVICE SPECIFIC	IMPLEMENTATION
     Interface between low and high level audio	drivers.  See audio(9).

     Bluetooth Device/Protocol API.  See bluetooth(9).

     Support for CardBus PC-Card devices.  See cardbus(9).

     VESA Display Data Channel V2.  See	ddc(9).

     VESA Extended Display Identification Data.	 See edid(9).

     Inter IC (I2C) bus.  See iic(9).

     Baseboard I/O control ASIC	for DEC	TURBOchannel systems.  See ioasic(9).

     Industry-standard Architecture.  See isa(9).

     Introduction to ISA Plug-and-Play support.	 See isapnp(9).

     MicroChannel Architecture bus.  See mca(9).

     PPBUS microseqencer developer's guide.  See microseq(9).

     Peripheral	Component Interconnect.	 See pci(9).

     Perform PCI bus configuration.  See pci_configure_bus(9).

     PCI bus interrupt manipulation functions.	See pci_intr(9).

     PC	keyboard port interface.  See pckbport(9).

     Support for PCMCIA	PC-Card	devices.  See pcmcia(9).

     User-space	interface to ppbus parallel port.  See ppi(9).

     Interface between low and high level radio	drivers.  See radio(9).

     Functions to make a device	available for entropy collection.  See rnd(9).

     SCSI/ATAPI	middle-layer interface.	 See scsipi(9).

     TURBOchannel bus.	See tc(9).

     USB tty support.  See ucom(9).

     USB device	drivers	interface.  See	usbdi(9).

     Versa Module Euroboard bus.  See vme(9).

     Machine-independent IDE/ATAPI driver.  See	wdc(9).

KERNEL EVENT
     Functions to add or remove	kernel event filters.  See
     kfilter_register(9).

     Functions to raise	kernel event.  See knote(9).

     Record and	wakeup select requests.	 See selrecord(9).

     Simple do-it-in-thread-context framework.	See workqueue(9).

KERNEL HELPER FUNCTIONS
     Kernel expression verification macros.  See KASSERT(9).

     Convert a single byte between (unsigned) packed bcd and binary.  See
     bcdtobin(9).

     Bitmask output conversion.	 See snprintb(3).

     General purpose extent manager.  See extent(9).

     Compare integers.	See imax(9).

     Kernel formatted output conversion.  See kprintf(9).

     Data comparing, moving, copying, setting and cleaning.  See memcmp(9),
     memmove(9), memcpy(9), memset(9), bcmp(9),	bcopy(9), bzero(9), kcopy(9).

     Log a message from	the kernel through the /dev/klog device.  See log(9).

     Bring down	system on fatal	error.	See panic(9).

MISC
     Power management and inter-driver messaging.  See pmf(9).

     Run all shutdown hooks.  See pmf_system_shutdown(9).

     Kernel internal error numbers.  See errno(9).

     Kernel hash functions, hash table construction and	destruction.  See
     hash(9), hashinit(9).

     Format a number into a human readable form.  See humanize_number(9).

     Machine-dependent interface to ipkdb.  See	ipkdb(9).

     Options string management.	 See optstr(9).

     Performs pattern matching on strings.  See	pmatch(9).

     Hardware Performance Monitoring Interface.	 See pmc(9).

     Add or remove a shutdown hook.  See pmf(9).

     Non-local jumps.  See setjmp(9).

     System variable control interfaces.  See sysctl(9).

HISTORY
     The NetBSD	kernel internals section first appeared	in NetBSD 1.2.

FreeBSD	9.3		       December	2, 2010			   FreeBSD 9.3

NAME | DESCRIPTION | MEMORY MANAGEMENT | I/O SUBSYSTEM | PROCESS CONTROL | FILE SYSTEM | NETWORKING | LOCKING AND INTERRUPT CONTROL | SECURITY | SYSTEM TIME CONTROL | KERNEL AND USER SPACE DATA COPY FUNCTIONS | MACHINE DEPENDENT KERNEL FUNCTIONS | DEVICE CONFIGURATION | MI DEVICE DRIVER API | CONSOLE DEVICES | DEVICE SPECIFIC IMPLEMENTATION | KERNEL EVENT | KERNEL HELPER FUNCTIONS | MISC | HISTORY

Want to link to this manual page? Use this URL:
<http://www.freebsd.org/cgi/man.cgi?query=intro&sektion=9&manpath=NetBSD+6.0>

home | help