//指向上一级目录的目录项 cur_mkdir->directItem[1].sign = curDir->directItem[0].sign; cur_mkdir->directItem[1].firstDisk = curDir->directItem[0].firstDisk; strcpy(cur_mkdir->directItem[1].fileName, ".."); cur_mkdir->directItem[1].next = cur_mkdir->directItem[1].firstDisk; cur_mkdir->directItem[1].type = 1; cur_mkdir->directItem[1].size = USER_ROOT_SIZE;
时间: 2023-12-30 19:03:35 浏览: 71
这段代码是在创建一个新目录时,设置该目录的 ".." 目录项的信息。具体来说,它做了以下几件事情:
1. 将新目录的第二个目录项(即 ".." 目录项)的 sign 值设置为当前目录的第一个目录项(即 "." 目录项)的 sign 值,表示该目录项已经被占用。
2. 将新目录的第二个目录项(即 ".." 目录项)的 firstDisk 值设置为当前目录的第一个目录项(即 "." 目录项)的 firstDisk 值,即为当前目录的起始磁盘号。
3. 将新目录的第二个目录项(即 ".." 目录项)的 fileName 值设置为 "..",表示该目录是上一级目录。
4. 将新目录的第二个目录项(即 ".." 目录项)的 next 值设置为该目录的起始磁盘号。
5. 将新目录的第二个目录项(即 ".." 目录项)的 type 值设置为 1,表示该目录项是一个目录。
6. 将新目录的第二个目录项(即 ".." 目录项)的 size 值设置为 USER_ROOT_SIZE,表示该目录的大小为 USER_ROOT_SIZE 个字节。
这样就完成了新目录的初始化工作,并且设置了该目录的 ".." 目录项的信息。
相关问题
//指向当前目录的目录项 cur_mkdir->directItem[0].sign = 0; cur_mkdir->directItem[0].firstDisk = curDir->directItem[i].firstDisk; strcpy(cur_mkdir->directItem[0].fileName, "."); cur_mkdir->directItem[0].next = cur_mkdir->directItem[0].firstDisk; cur_mkdir->directItem[0].type = 1; cur_mkdir->directItem[0].size = USER_ROOT_SIZE;
这段代码是在创建一个新目录时,设置该目录的 "." 目录项的信息。具体来说,它做了以下几件事情:
1. 将新目录的第一个目录项(即 "." 目录项)的 sign 值置为 0,表示该目录项已经被占用。
2. 将新目录的第一个目录项(即 "." 目录项)的 firstDisk 值设置为该目录的起始磁盘号。
3. 将新目录的第一个目录项(即 "." 目录项)的 fileName 值设置为 ".",表示该目录是自身的父目录。
4. 将新目录的第一个目录项(即 "." 目录项)的 next 值设置为该目录的起始磁盘号。
5. 将新目录的第一个目录项(即 "." 目录项)的 type 值设置为 1,表示该目录项是一个目录。
6. 将新目录的第一个目录项(即 "." 目录项)的 size 值设置为 USER_ROOT_SIZE,表示该目录的大小为 USER_ROOT_SIZE 个字节。
这样就完成了新目录的初始化工作,并且设置了该目录的 "." 目录项的信息。
//创建目录初始化 curDir->directItem[i].sign = 0; curDir->directItem[i].firstDisk = j; strcpy(curDir->directItem[i].fileName, fName); curDir->directItem[i].next = j; curDir->directItem[i].type = 1; curDir->directItem[i].size = USER_ROOT_SIZE; direct* cur_mkdir = (direct*)(fdisk + curDir->directItem[i].firstDisk * DISK_SIZE);//创建目录的物理地址
这段代码是在创建一个新目录时进行的初始化工作。具体来说,它做了以下几件事情:
1. 将当前目录下的一个空闲目录项的 sign 值置为 0,表示该目录项已经被占用。
2. 将当前目录下的一个空闲目录项的 firstDisk 值设置为新目录的起始磁盘号 j。
3. 将当前目录下的一个空闲目录项的 fileName 值设置为新目录的名称 fName。
4. 将当前目录下的一个空闲目录项的 next 值设置为新目录的起始磁盘号 j。
5. 将当前目录下的一个空闲目录项的 type 值设置为 1,表示该目录项是一个目录。
6. 将当前目录下的一个空闲目录项的 size 值设置为 USER_ROOT_SIZE,表示该目录的大小为 USER_ROOT_SIZE 个字节。
最后,根据新目录的起始磁盘号 j,计算出该目录的物理地址 cur_mkdir。
阅读全文