genode/repos/gems
Norman Feske 4d442bca30 Streamline exception types
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).
2017-05-31 13:16:07 +02:00
..
include Capability quota accounting and trading 2017-05-31 13:16:06 +02:00
lib nova: use 'Native_cpu' component for thread initialization 2017-03-15 12:24:42 +01:00
recipes Assign cap quotas in run scripts and recipes 2017-05-31 13:16:06 +02:00
run Assign cap quotas in run scripts and recipes 2017-05-31 13:16:06 +02:00
src Streamline exception types 2017-05-31 13:16:07 +02:00
README Remove repos/qt4, fix #1451 2015-03-19 08:57:20 +01:00

This directory is a source-code repository containing Genode-specific
services and applications. In contrast to the components that come with
the 'os' repository, programs contained in 'gems' are able to leverage
the functionalities provided by higher-level repositories such as 'libports'.
To use the 'gems' repository, make sure to also add those repositories to your
build configuraion.