Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

cvmkfile(1) [osx man page]

cvmkfile(1)                                                        cvmkfile(1)

cvmkfile - Create a pre-allocated file SYNOPSIS
cvmkfile [-k <key>] [-p] [-s] [-w] [-z] <size>[k|m|g] <filename> DESCRIPTION
cvmkfile can be used to pre-allocate a file on the Xsan volume. This is useful and preferable when preparing a file for use in a real-time or streaming environment as the entire file is represented in only one file system extent. Additionally, a file can be placed onto a specific storage pool by specifying the <key> value, which is used as the affin- ity locator. See cvfs_config(4) for more details about affinities. USAGE
The -k <key> optionally tells the file system where to place the data file. If an Affinity Key is specified, the file is placed on storage pools that are specified to support this key. If there is no storage pool with the key specified, then the file is placed in non-exclusive data pools. If there are no non-exclusive data pools, then ENOSPC (no space) is returned. The -p option forces the allocation and any subsequent expansions to be fitted "perfectly" as multiples of the InodeExpandMin configuration parameter. The allocation extent will always line up on and be a per- fect multiple of the blocks specified in InodeExpandMin. The -s option forces the allocation to line up on the beginning block modulus of the storage pool. This can help performance in situations where the I/O size perfectly spans the width of the storage pool's disks. The -w option sets the file size to be equal to <size>. Without this option the blocks are allocated but the size is set to zero. NOTE: Unless the -z option is used, the new file will contain undefined data. Using the -w option is not recommended unless absolutely needed. The -z option causes the file to be physically zeroed out. This can take a significant amount of time. The <size> argument specifies the number of bytes, kilobytes(k), megabytes(m) or gigabytes(g) to allocate for the file. There is no guarantee that all requested space will be allocated. If there is insufficient contiguous available space to satisfy the requested amount then a "best effort" will be performed. In this case a success value is returned even though not all of the requested amount is allocated to the file. Even though the allocation may not be fully satisfied, if the -w option is specified then the file size will still reflect the requested <size> value. EXAMPLES
Make a file of one gigabyte with zero length. Allocate it on a storage pool that favors the media type 6100_n8. rock # cvmkfile -k 6100_n8 1g foobar SEE ALSO
cvfs_config(4), cvmkdir(1) Xsan File System December 2005 cvmkfile(1)

Check Out this Related Man Page

Ns_Alloc(3aolserver)					   AOLserver Library Procedures 				      Ns_Alloc(3aolserver)


ns_calloc, ns_free, ns_malloc, ns_realloc - Memory allocation functions SYNOPSIS
#include "ns.h" void * ns_calloc(size_t num, size_t esize) void ns_free(void *ptr) void * ns_malloc(size_t size) void * ns_realloc(void *ptr, size_t size) _________________________________________________________________ DESCRIPTION
The AOLserver memory storage allocation code was moved into Tcl core beginning with Tcl 8.4.0. Starting with AOLserver 3.5, these memory allocation functions are wrappers that call Tcl_Alloc and Tcl_Free. Earlier versions of AOLserver used this fast memory storage allocator internally, or the platform's memory allocator depending on how you configured it. The actual amount of memory allocated or freed will be different from the requested amount. This is because the fast memory allocation code pools memory into chunks and manages that memory internally. In addition, the Tcl distribution may be compiled to allocate even more memory which is used internally for diagnostic reasons. Using ns_free to free memory created by routines other than ns_malloc, ns_realloc and ns_calloc will almost certainly result in segmentation faults or undefined behavior. The lowercase and mixed-case versions are identical; the lowercase versions are preferred. ns_calloc(num, esize) Allocates a block of memory that is num * esize large, zeros it, and returns a pointer to the beginning of the memory block or NULL if the operation fails. ns_free(ptr) ns_free() frees the memory space pointed to by ptr. This pointer must have been created with a previous call to ns_malloc(), ns_cal- loc() or ns_realloc(). If ptr is NULL, no operation is performed. ns_free() returns no value. ns_malloc(size) ns_malloc() allocates size bytes and returns a pointer to the allocated memory. The memory is not cleared. The value returned is a pointer to the allocated memory or NULL if the request fails. The memory must be freed by ns_free. ns_realloc(ptr, size) ns_realloc changes the size of the memory block pointed to by ptr to size bytes. The contents will be unchanged to the minimum of the old and new sizes. Newly allocated memory will be uninitialized. If ptr is NULL, the call is equivalent to ns_malloc(size); if size is equal to zero, the call is equivalent to ns_free(ptr). Unless ptr is NULL, it must have been returned by an earlier call to ns_malloc(), ns_calloc() or ns_realloc(). SEE ALSO
Tcl_Alloc(3), Tcl_Free(3) KEYWORDS
memory, allocation AOLserver 4.0 Ns_Alloc(3aolserver)
Man Page