Skip to content

pps filesystem hacking

Olivier Kaloudoff edited this page Feb 11, 2024 · 6 revisions

PPS: Persistent Publish Subscribe

Persistent Publish/Subscribe (PPS) is a resource manager that takes control of part of the file namespace to make information available to interested processes:

A process that has the information (the publisher) opens a path in the PPS part of the namespace. Processes that are interested in the information (the subscribers) sign up for it by opening the same path and waiting for updates to it. Subscribers read() the information as if it were in a file. The PPS system stores the information in memory, and saves it in files to make the information persistent across reboots.

For more information, see the PPS Developer's Guide in the online documentation.

/var/tmp/pps-rw

I. Rubel
/pps/system/BattMgr/status
Found yesterday. One can obtain all the information about the battery condition: charge, health, etc.
22:53 < esad> I was wondering if there are lower level apis to disable backlight on the keyboard for example
22:53 < esad> or change screen white balance

23:57 <@berryamin> maybe the PPS filesystem might help about backlight
23:57 <@berryamin> http://support7.qnx.com/download/download/26319/PPS_Objects_Reference.pdf

Day changed to 20 Dec 2019

19:01 < esad> everything under /pps is "permission denied"

Day changed to 21 Dec 2019

17:48 <@berryamin> Hmm are u sure ?

bash-5.0$ find /pps -type f 2> /dev/null | tee /var/tmp/pps | wc -l
1041

for f in $(cat /var/tmp/pps);
do 
 touch $f 2> /dev/null && echo $f;
done | tee /var/tmp/pps-rw | wc -l

for f in $(cat /var/tmp/pps);
do 
 cat $f > /dev/null 2>&1 && echo $f;
done | tee /var/tmp/pps-ro | wc -l


21:44 <@berryamin> not much .. but maybe the QNX PPS Service has access to these files.
21:44 <@berryamin> and might delegate some rights to us ?
21:44 <@berryamin> http://www.qnx.com/developers/docs/6.5.0/index.jsp?topic=%2Fcom.qnx.doc.neutrino_pps%2Fpps.html

bash-5.0$ uname -a
QNX Silver10 8.0.0 2018/02/21-10:54:19EST MSM8974AA_ES1.1_PVS7SB1_WINDERMERE4ROW_Rev:05 armle