Services API: Difference between revisions

No edit summary
No edit summary
Line 1: Line 1:
Services are system processes running in the background which wait for incoming requests. When a process wants to communicate with a service, it first needs to get a handle to the named service, and then it can communicate with the service via inter-process communication (each service has a name up to 8 characters).
Services are system processes running in the background which wait for incoming requests. When a process wants to communicate with a service, it first needs to get a handle to the named service, and then it can communicate with the service via inter-process communication (each service has a name up to 8 characters).


Handles for services are retrieved from the service manager port, "sm:". Services are an abstraction of ports, they operate the same way except regular ports can have their handles retrieved directly from a SVC.
Handles for services are retrieved from the service manager port, "sm:". Manager service "sm:m" also exists. Services are an abstraction of ports, they operate the same way except regular ports can have their handles retrieved directly from a SVC.


= sm: =
= sm: =
Line 88: Line 88:
| 2 || Service name, zero padded and casted to u64.
| 2 || Service name, zero padded and casted to u64.
|}
|}
= sm:m =
This service is presumably equivalent to 3DS "srv:pm".


= Service List =
= Service List =