This is xnu-11215.1.10. See this file in:
#include "ramdisk.h"
#include "fail.h"
#include <assert.h>
#include <stdlib.h>
#include <stdio.h>
#include <sys/param.h>
int
setup_ram_volume(const char* name, char* path)
{
char *cmd;
int retval;
retval = asprintf(&cmd, "diskutil erasevolume HFS+ '%s' `hdiutil attach -nomount ram://1500000` >/dev/null", name);
VERIFY(retval > 0, "asprintf failed");
retval = system(cmd);
VERIFY(retval == 0, "diskutil command failed");
snprintf(path, MAXPATHLEN, "/Volumes/%s", name);
free(cmd);
return PERFINDEX_SUCCESS;
}
int
cleanup_ram_volume(char* path)
{
char *cmd;
int retval;
retval = asprintf(&cmd, "umount -f '%s' >/dev/null", path);
VERIFY(retval > 0, "asprintf failed");
retval = system(cmd);
VERIFY(retval == 0, "diskutil command failed");
free(cmd);
return PERFINDEX_SUCCESS;
}