The Gateway to Computer Science Excellence
First time here? Checkout the FAQ!
x
+15 votes
2.7k views

In the index allocation scheme of blocks to a file, the maximum possible size of the file depends on

  1. the size of the blocks, and the size of the address of the blocks.
  2. the number of blocks used for the index, and the size of the blocks.
  3. the size of the blocks, the number of blocks used for the index, and the size of the address of the blocks.
  4. None of the above
asked in Databases by Veteran (59.5k points)
retagged by | 2.7k views
+1
This question belong to Operating System's File System

Tags: operating-system file-system

4 Answers

+24 votes
Best answer

In Index allocation size of maximum file can be derived like following:

No of addressable blocks using one Index block $(A)=$ Size of block / Size of block address

No of block addresses available for addressing one file $(B)=$

No of Maximum blocks we can use for the Index *  No of addressable blocks using one Index block $(A)$

Size of File = $B$ * Size of Block

So, it is clear that:

Answer is (C).

A & B are incomplete.

answered by Boss (42.5k points)
edited by
0
Akash ,

I have a doubt -  

Total Size  of File = Size of Access Structure  + Size of the total records stored.

so in option C  , is the size of the address of the blocks nothing but the size of blocks storing the records ?
–1
What about the search key value..??

To know the No of addressable blocks we should know the search key value
+4 votes

As the size of the block increases, file size increases (Keeping number of blocks constant).

As the number of blocks for index increases, number of index entries increases (keeping size of block contstant) and so file size increases (we cannot have an index record without it's corresponding file record so as i keep on increasing index records even file records increases)

As the block address size increases,  number of index entries decreases (keeping block size and number of blocks constant) and so file number of file records decreases and so file size decreases.

So option C) 

answered by Loyal (7.1k points)
0 votes

someone please verify.  answer answer is C. 

First some background on indexing.

File is stored in form of blocks in hard disk. File is made up of records, each record has some key field on which indexes are created(for faster access of file). suppose record is of 64 byte and key field is of 14 byte. hence we create index  on this 14 byte key field(not necessary as you can index on non key field also). Apart from 14 bytes of key field it must also include block address in which record with this key value is present . lets say block address is 2 byte.

Now come to question

size of the index file directly proportional to number of blocks used for the index

if we have 1000 records. there will be 1000(14+2) Bytes for index. If we store all of them in single block(provided it fits in single block) there will not be multilevel indexing, hence no memory needed to store secondary indexes.

I still have doubt in this .

size of block  

If size of block is large we can accommodate  more indexes per block hence number of levels in indexing is less hence file size is lesser.

siz of address of block 

If block size becomes 1 byte instead of 2 byte , we need less number of block hence file size is less

please correct me if my answer is wrong.

answered by Active (1.2k points)
–4 votes
Option b
answered by Active (3.3k points)
+1
How you will know how many blocks you can address using one Index block ?
Answer:

Related questions



Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true

37,112 questions
44,694 answers
127,237 comments
43,754 users