4d442bca30
This patch reduces the number of exception types by facilitating globally defined exceptions for common usage patterns shared by most services. In particular, RPC functions that demand a session-resource upgrade not longer reflect this condition via a session-specific exception but via the 'Out_of_ram' or 'Out_of_caps' types. Furthermore, the 'Parent::Service_denied', 'Parent::Unavailable', 'Root::Invalid_args', 'Root::Unavailable', 'Service::Invalid_args', 'Service::Unavailable', and 'Local_service::Factory::Denied' types have been replaced by the single 'Service_denied' exception type defined in 'session/session.h'. This consolidation eases the error handling (there are fewer exceptions to handle), alleviates the need to convert exceptions along the session-creation call chain, and avoids possible aliasing problems (catching the wrong type with the same name but living in a different scope). |
||
---|---|---|
.. | ||
iso9660.cc | ||
iso9660.h | ||
main.cc | ||
README | ||
target.mk |
This directory contains an implementation of an ISO 9660 file system. Limitations ----------- At the moment, the only file-name format supported is the Rock Ridge extension. The ISO specified 8.3 upper-case-file names are not supported, as well as Joliet. Usage ----- The server requires an ATAPI-block device as back-end. Please have a look at 'os/src/drivers/atapi'. The front-end of the server is implemented as a ROM session server. In order to access this server from your application, you need to route the ROM session to the ISO-ROM-session server in Genode's configuration file: !<start name="test-iso"> ! <resource name="RAM" quantum="10M" /> ! <route> ! <service name="ROM"><child name="iso9660"/></service> ! </route> !</start> Currently, the RAM quota necessary to obtain a file from the ISO file system is allocated on behalf of the ISO server. Please make sure to provide sufficient RAM quota to the ISO server.