diff options
Diffstat (limited to 'system_cmds/purge.tproj')
-rw-r--r-- | system_cmds/purge.tproj/purge.8 | 14 | ||||
-rw-r--r-- | system_cmds/purge.tproj/purge.c | 42 |
2 files changed, 56 insertions, 0 deletions
diff --git a/system_cmds/purge.tproj/purge.8 b/system_cmds/purge.tproj/purge.8 new file mode 100644 index 0000000..41093f9 --- /dev/null +++ b/system_cmds/purge.tproj/purge.8 @@ -0,0 +1,14 @@ +.Dd September 20, 2005 +.Dt purge 8 +.Sh NAME +.Nm purge +.Nd force disk cache to be purged (flushed and emptied) +.Sh SYNOPSIS +.Nm purge +.Sh DESCRIPTION +.Nm Purge +can be used to approximate initial boot conditions with a cold disk buffer cache for performance analysis. It does not affect anonymous memory that has been allocated through malloc, vm_allocate, etc. +.Pp +.Sh SEE ALSO +.Xr sync 8 , +.Xr malloc 3 diff --git a/system_cmds/purge.tproj/purge.c b/system_cmds/purge.tproj/purge.c new file mode 100644 index 0000000..38fb8f4 --- /dev/null +++ b/system_cmds/purge.tproj/purge.c @@ -0,0 +1,42 @@ +/* + * Copyright (c) 2013 Apple Inc. All rights reserved. + * + * @APPLE_LICENSE_HEADER_START@ + * + * "Portions Copyright (c) 1999 Apple Computer, Inc. All Rights + * Reserved. This file contains Original Code and/or Modifications of + * Original Code as defined in and that are subject to the Apple Public + * Source License Version 1.0 (the 'License'). You may not use this file + * except in compliance with the License. Please obtain a copy of the + * License at http://www.apple.com/publicsource and read it before using + * this file. + * + * The Original Code and all software distributed under the License are + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, + * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the + * License for the specific language governing rights and limitations + * under the License." + * + * @APPLE_LICENSE_HEADER_END@ + */ + +#include <unistd.h> +#include <stdio.h> + +extern int vfs_purge(void); + +int +main(int argc, char **argv) +{ + int rv = vfs_purge(); + + if (rv) { + perror("Unable to purge disk buffers"); + + return 1; + } + + return 0; +} |