5 #include <linuxmt/rd.h>
7 #define MAX_SIZE 640 /* 1 KB blocks */
17 if ((argc
!= 4) && (argc
!= 3)) {
18 fprintf(stderr
, "usage: ramdisk /dev/ram? {make | kill} [size in 1 KB blocks]\n");
23 sscanf(argv
[3], "%d", &size
);
25 size
= 64; /* default */
27 if ((size
< 1) || (size
> MAX_SIZE
)) {
28 fprintf(stderr
, "ramdisk: invalid size; use integer in range of 1 .. %d\n", MAX_SIZE
);
31 if (( fd
= open(argv
[1], 0) ) == -1) {
35 if (strcmp(argv
[2],"make") == 0) {
36 if (ioctl(fd
, RDCREATE
, size
)) {
40 fprintf(stdout
,"ramdisk: %d KB ramdisk created on %s\n", size
, argv
[1]);
43 if (strcmp(argv
[2],"kill") == 0) {
44 if (ioctl(fd
, RDDESTROY
, 0)) {
48 fprintf(stdout
,"ramdisk destroyed on %s\n", argv
[1]);