Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104619269
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: C/C++

2008-04-16 23:09:37

作者:amy_4  
作用:
生成prtvtoc -f vtoc /dev/rdsk/c0b0t0d0s0
出来的vtoc后面要添加的裸设备的部分
用法:
cc -o vtoc vtocFile.c
生成vtoc程序
然后运行vtoc
然后输入要添加的新的slice的号,上一个slice的START,上一个slice的SIZE
接着一个输入每个slice的大小,以M为单位,0为退出。
vtocFile.c
/*********************************************
本程序生成vtoc文件里的增加内容
*********************************************/
#include
#include

int main(int argc,char **argv){
   unsigned int startB,sizeB,sizeM;
   int sliceNum;
   char buf[300];
   FILE *fp;
   
   fp = fopen("./vtoc2","w");
   printf("input:SLICE,START,SIZE\n");
   scanf("%d,%u,%u",&sliceNum,&startB,&sizeB);

   while(1){
      printf("input size of SLICE:%d\n",sliceNum);
      scanf("%u",&sizeM);
      if (!sizeM)
         break;
      memset(buf,0,sizeof(buf));
      sprintf(buf,"%d\t0x4\t0x201\t%u\t%u\n",sliceNum++,startB+sizeB,sizeM*2048);
      startB=startB+sizeB;
      sizeB=sizeM*2048;
      fwrite(buf,300,1,fp);
   }
   fclose(fp);
   return 0;
}
阅读(332) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~