code: final void writeFreeSpace()
                      throws ObjectManagerException {
          final String methodName = "writeFreeSpace";
          if (Tracing.isAnyTracingEnabled() && trace.isEntryEnabled())
              trace.entry(this,
                          cclass,
                          methodName);
  
          // Write the free space map to disk.
          sharedBuffer.clear();
          long freeSpaceByteAddress = freeSpaceStoreArea.byteAddress;
          FreeSpace freeSpace = freeSpaceByAddressHead;
          while (freeSpace != null) {
              sharedBuffer.putLong(freeSpace.address);
              sharedBuffer.putLong(freeSpace.length);
              if (sharedBuffer.remaining() < freeSpaceEntryLength) {
                  sharedBuffer.flip();
                  int bytesWritten = writeBuffer(sharedBuffer,
                                                 freeSpaceByteAddress);
                  freeSpaceByteAddress = freeSpaceByteAddress + bytesWritten;
                  sharedBuffer.clear();
              } // if( sharedBuffer.remaining() < freeSpaceEntryLength).
              freeSpace = freeSpace.next;
          } // for freeSpaceByAddress...
          sharedBuffer.flip();
          writeBuffer(sharedBuffer,
                      freeSpaceByteAddress);
  
          if (Tracing.isAnyTracingEnabled() && trace.isEntryEnabled())
              trace.exit(this,
                         cclass,
                         methodName);
      }
docs: /*
  (non-Javadoc)
  
  @see com.ibm.ws.objectManager.AbstractSingleFileObjectStore#writeFreeSpace()