1.\" ---------------------------------------------------------------------------- 2.\" "THE BEER-WARE LICENSE" (Revision 42): 3.\" <phk@FreeBSD.ORG> wrote this file. As long as you retain this notice you 4.\" can do whatever you want with this stuff. If we meet some day, and you think 5.\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp 6.\" ---------------------------------------------------------------------------- 7.\" 8.\" $FreeBSD$ 9.\" 10.Dd October 30, 2007 11.Dt MD 4 12.Os 13.Sh NAME 14.Nm md 15.Nd memory disk 16.Sh SYNOPSIS 17.Cd device md 18.Sh DESCRIPTION 19The 20.Nm 21driver provides support for four kinds of memory backed virtual disks: 22.Bl -tag -width preload 23.It Cm malloc 24Backing store is allocated using 25.Xr malloc 9 . 26Only one malloc-bucket is used, which means that all 27.Nm 28devices with 29.Cm malloc 30backing must share the malloc-per-bucket-quota. 31The exact size of this quota varies, in particular with the amount 32of RAM in the 33system. 34The exact value can be determined with 35.Xr vmstat 8 . 36.It Cm preload 37A file loaded by 38.Xr loader 8 39with type 40.Sq md_image 41is used for backing store. 42For backwards compatibility the type 43.Sq mfs_root 44is also recognized. 45If the kernel is created with option 46.Dv MD_ROOT 47the first preloaded image found will become the root file system. 48.It Cm vnode 49A regular file is used as backing store. 50This allows for mounting ISO images without the tedious 51detour over actual physical media. 52.It Cm swap 53Backing store is allocated from buffer memory. 54Pages get pushed out to the swap when the system is under memory 55pressure, otherwise they stay in the operating memory. 56Using 57.Cm swap 58backing is generally preferable over 59.Cm malloc 60backing. 61.El 62.Pp 63For more information, please see 64.Xr mdconfig 8 . 65.Sh EXAMPLES 66To create a kernel with a ramdisk or MD file system, your kernel config 67needs the following options: 68.Bd -literal -offset indent 69options MD_ROOT #MD is a potential root device 70options MD_ROOT_SIZE=8192 # 8MB ram disk 71makeoptions MFS_IMAGE=/h/foo/ARM-MD 72options ROOTDEVNAME=\"ufs:md0\" 73.Ed 74The image in 75.Pa /h/foo/ARM-MD 76will be loaded as the initial image each boot. 77To create the image to use, please follow the steps to create a file-backed 78disk found in the 79.Xr mdconfig 8 80man page. 81Other tools will also create these images, such as NanoBSD. 82.Sh SEE ALSO 83.Xr disklabel 5 , 84.Xr disklabel 8 , 85.Xr fdisk 8 , 86.Xr loader 8 , 87.Xr mdconfig 8 , 88.Xr mdmfs 8 , 89.Xr newfs 8 , 90.Xr vmstat 8 91.Sh HISTORY 92The 93.Nm 94driver first appeared in 95.Fx 4.0 96as a cleaner replacement 97for the MFS functionality previously used in 98.Tn PicoBSD 99and in the 100.Fx 101installation process. 102.Pp 103The 104.Nm 105driver did a hostile takeover of the 106.Xr vn 4 107driver in 108.Fx 5.0 . 109.Sh AUTHORS 110The 111.Nm 112driver was written by 113.An Poul-Henning Kamp 114.Aq phk@FreeBSD.org . 115