举例说明记录的分解操作过程。
举例说明记录的分解操作过程。
【正确答案】:假定某个文件由长度为80个字符的100个逻辑记录组成,磁盘存储空间被划分成长度为2048个字符的块,为有效地使用磁盘空间,采用成组方式把文件存放到磁盘上,现用户要求每次读一个逻辑记录到他的工作区中,当对该逻辑记录处理后,要求把下一个逻辑记录读入到工作区,直接连续读出8个记录。由于主存储器与外存之间的信息交换是以块为单位的,所以应当在主存中开辟一个2048字节的缓冲区.由上题可知每块中含有25个记录,文件一共占有4块,用户在指明了要读入记录的记录号后,根据公式[N/25]得到该记录应该在4块的哪一块中,将该块读入到缓冲区中,并根据公式[N/25]得到该记录是块内的第几个记录(式中[]表示取整,( )表示取余数),将该记录从缓冲区拷贝到用户工作区,然后N+l,如果[(N+1)/25]=[N/25],则将缓冲区中的下一个记录拷贝到用户工作区,而无需启动I/O操作,否则,按照新的块号将一个数据块读进缓冲区,并将记录从缓冲区拷贝到用户工作区。
【题目解析】:考点:记录的分解操作过程。
Top