1.\" Copyright (c) 1992, 1993 2.\" The Regents of the University of California. All rights reserved. 3.\" 4.\" This code is derived from software developed by the Computer Systems 5.\" Engineering group at Lawrence Berkeley Laboratory under DARPA contract 6.\" BG 91-66 and contributed to Berkeley. 7.\" 8.\" %sccs.include.redist.man% 9.\" 10.\" @(#)kvm_read.3 8.1 (Berkeley) 06/04/93 11.\" 12.Dd 13.Dt KVM_READ 3 14.Os 15.Sh NAME 16.Nm kvm_read , 17.Nm kvm_write 18.Nd read or write kernel virtual memory 19.Sh SYNOPSIS 20.Fd #include <kvm.h> 21.Ft ssize_t 22.Fn kvm_read "kvm_t *kd" "u_long addr" "void *buf" "size_t nbytes" 23.Ft ssize_t 24.Fn kvm_write "kvm_t *kd" "u_long addr" "const void *buf" "size_t nbytes" 25.Sh DESCRIPTION 26The 27.Fn kvm_read 28and 29.Fn kvm_write 30functions are used to read and write kernel virtual memory (or a crash 31dump file). See 32.Fn kvm_open 3 33or 34.Fn kvm_openfiles 3 35for information regarding opening kernel virtual memory and crash dumps. 36.Pp 37The 38.Fn kvm_read 39function transfers 40.Fa nbytes 41bytes of data from 42the kernel space address 43.Fa addr 44to 45.Fa buf . 46Conversely, 47.Fn kvm_write 48transfers data from 49.Fa buf 50to 51.Fa addr . 52Unlike their SunOS counterparts, these functions cannot be used to 53read or write process address spaces. 54.Sh RETURN VALUES 55Upon success, the number of bytes actually transferred is returned. 56Otherwise, -1 is returned. 57.Sh SEE ALSO 58.Xr kvm 3 , 59.Xr kvm_close 3 , 60.Xr kvm_getargv 3 , 61.Xr kvm_getenvv 3 , 62.Xr kvm_geterr 3 , 63.Xr kvm_getprocs 3 , 64.Xr kvm_nlist 3 , 65.Xr kvm_open 3 , 66.Xr kvm_openfiles 3 67