d853f77ed3
Currently, whenever a new program starts, libc initializes two data structures related to properties from the raw property_context files. There are two problems here, 1) This takes roughly 1.2ms on a trivial program to generate contents that could otherwise be cached. 2) One of the data structures is a descending list of prefixes, each of which needs to be checked, whereas a trie would be more efficient. This change introduces two libraries, 1) libpropertycontextserializer meant to be used by property_service to create a serialized trie containing all of the property contexts. 2) libpropertycontextparser meant to be used by libc's property functions to parse this serialized trie during property lookup. This new trie also contains the ability to have exact matches instead of prefix matches for properties, which was not possible before. Bug: 36001741 Change-Id: I42324f04c4d995a0e055e9685d79f40393dfca51 |
||
---|---|---|
.. | ||
libpropertyinfoparser | ||
libpropertyinfoserializer | ||
.clang-format | ||
Android.bp |