summaryrefslogblamecommitdiffstats
path: root/doc/filesystem/mounting.t
blob: 64d0b79cd83d6c327030f0adc288ddd292f4b676 (plain) (tree)
1
2
3
4
5
6
7
8
9






                                                    
 
                                              












                                                                                     





                                                          
 
                                                                       






                                                                             

                                                 












                                                                                       
@c
@c  COPYRIGHT (c) 1988-1998.
@c  On-Line Applications Research Corporation (OAR).
@c  All rights reserved.
@c
@c  $Id$
@c

@chapter Mounting and Unmounting File Systems 

? Characteristics of a Mount Point
? The mount point must be a directory. It may have files and other directories under 
it. These files and directories will be hidden when the file system is mounted.
? The task must have read/write/execute permissions to the mount point or the 
mount attempt will be rejected.
? Only one file system can be mounted to a single mount point.
? The Root of the mountable file system will be referenced by the name of the mount 
point after the mount is complete.
? Mount table chain
? Content of the mount table chain entry

struct rtems_filesystem_mount_table_entry_tt
@{
   Chain_Node                                Node;
   rtems_filesystem_location_info_t         mt_point_node;
   rtems_filesystem_location_info_t         mt_fs_root;
   int                                       options;
   void                                     *fs_info;

   rtems_filesystem_limits_and_options_t   pathconf_limits_and_options;

  /*
   *  When someone adds a mounted filesystem on a real device,
   *  this will need to be used.
   *
   *  The best option long term for this is probably an open file descriptor.
   */
   char                                     *dev;
@};

? Adding entries to the chain during mount()
When a file system is mounted, its presence and location in the file system 
hierarchy is recorded in a dynamic list structure known as a chain. A unique 
rtems_filesystem_mount_table_entry_tt structure is logged for each file system that is 
mounted. This includes the base file system.

? Removing entries from the chain during unmount()
When a file system is dismounted its entry in the mount table chain is extracted 
and the memory for this entry is freed.