The performances of the Accounts subsystem heavily depend on SQLite performances, as this is the database being used for storing the account settings.
A typical account will consist of less than 5 records in the SQLite database, plus 1 record for each service enabled on the account; an experienced internet user will have a few dozens of installed accounts.
The records in the database are fairly simple, consisting mostly of a pair of key and value (with values being typically strings, integers and booleans); the size of the accounts database can be reasonably estimated to be below 100KB.
There are no real time requirements known.
|Flash/eMMC||Account settings database||100|
|RAM/Idle||Memory footprint when account libraries are loaded||200|
|RAM/Peak||Memory footprint when libraries and plugins are loaded, account settings are loaded and accounts are being edited||2000|
The most frequent scenario of usage of the Accounts subsystem is application initializing its accounts’ data: Accounts libraries will be loaded along with the application, which will need to list the accounts enabled for the specific service(s) it uses, and load their settings. Once the accounts are loaded, the impact of the libraries on the system is negligible.
Disc access happens only when loading accounts (which typically happens on application startup) and when editing them.
Accounts settings are not sensitive data.
No open items.