操作系统Linux系统,在Linux系统中,如果一个盘块的大小为1KB?
楼上复制回来的东西
一个UNIX/Linux文件,如果一个盘块的大小为1024B,每个盘块占4个字节,直接寻址为10块,一次间接寻址为256块,二次间接寻址为256*256块,三次间接寻址为256*256*256块,那么,偏移为272383节处的数据在( )。
答:UNIX/Linux文件系统中,一个盘块的大小为1KB,每个盘块号占4个字节,即每块可放256个地址。直接寻址为10块,一次间接寻址为256块,二次间接寻址为256二次方块,三次间接寻址为256三次方块。
首先将逻辑文件的字节偏移量转换为文件的逻辑块号和块内偏移。方法是:将逻辑文件的字节偏移量/盘块大小,商为文件的逻辑块号,余数是块内偏移;再将文件的逻辑块号转换为物理块号,使用多重索引结构,在索引节点中根据逻辑块号通过直接索引或间接索引找到对应物理块号。
偏移为263168字节的逻辑块号是:263168/1024=257。块内偏移量=263168-257×1024=0。由于10
1KB = 1024B
同理可得 9999/1024 =9…..783 故选AA. i.addr+ 783,第十块的783处