where disk / is the bottleneck for the programeven the time to copy lots of information between the buffer pool user and the buffer might be inconsequential another advantage to buffer passing is the reduction in unnecessary read operations for data that will be overwritten anyway you should note that the implementations for class bufferpool above does not use generics insteadthe space parameter and the buffer pointer are declared to be byte[when class uses genericthat means that the record type is arbitrarybut that the class knows what the record type is in contrastusing byte[for the space means that not only is the record type arbitrarybut also the buffer pool does not even know what the user' record type is in facta given buffer pool might have many users who store many types of records in buffer poolthe user decides where given record will be stored but has no control over the precise mechanism by which data are transferred to the backing storage this is in contrast to the memory manager described in section in which the user passes record to the manager and has no control at all over where the record is stored the programmer' view of files the java programmer' logical view of random access file is single stream of bytes interaction with file can be viewed as communications channel for issuing one of three instructionsread bytes from the current position in the filewrite bytes to the current position in the fileand move the current position within the file you do not normally see how the bytes are stored in sectorsclustersand so forth the mapping from logical to physical addresses is done by the file systemand sector-level buffering is done automatically by the disk controller when processing records in disk filethe order of access can have great effect on / time random access procedure processes records in an order independent of their logical order within the file sequential access processes records in order of their logical appearance within the file sequential processing requires less seek time if the physical layout of the disk file matches its logical layoutas would be expected if the file were created on disk with high percentage of free space java provides several mechanisms for manipulating binary files one of the most commonly used is the randomaccessfile class the following class member functions are most commonly used to manipulate information in random access disk files