Opengroup doesn't certify PSE51 anymore, so PSE52 is more interesting for NuttX: https://posix.opengroup.org/index.html Since the PSE52 test suite contains many test cases, which requires a very specific configuration. I would suggest that we create a dedicated defconfig(e.g. pse52) on different arch for demo and test.
On Thu, Nov 20, 2025 at 9:12 PM Alan C. Assis <[email protected]> wrote: > Hi Nathan, > > That was exactly my question mark when Mateusz raised this issue. > > Later (few minutes ago) he shed some light on it: > > Seems like we still missing some functionalities to support POSIX PE51: > https://nuttx.apache.org/docs/latest/standards/posix.html > > So, maybe adding "Enable POSIX PE51 profile" could induce people to thing > NuttX is already POSIX PE51 compliant (but it is not yet) > > Maybe we can act fast to fix these gaps and get complete support to PE51. > > BR, > > Alan > > On Thu, Nov 20, 2025 at 10:04 AM Nathan Hartman <[email protected]> > wrote: > > > I agree with what Greg said, but I'm a little bit confused: if POSIX > > provides PE51 for supporting very limited systems, and that's a > possibility > > POSIX itself provides, then how does supporting that violate POSIX or the > > Inviolables? If anything, providing an option to build as a POSIX > > PE51-compliant system would add more support for POSIX, for not less. Or > am > > I misunderstanding something? > > > > Thanks, > > Nathan > > > > On Thu, Nov 20, 2025 at 7:50 AM Gregory Nutt <[email protected]> > wrote: > > > > > There should only be extreme conditions where any POSIX API is > > > non-compliant. POSIX complience is a core value of the OS and should > not > > > be violated. If we lose POSIX compliance then we have destroyed the > > > meaning for the existence of the operating system. I hopr that no one > > will > > > ever tolerate that to happen. > > > > > > The only legitimate cases I can think of are due to hardware > limitations. > > > For example, certain features of mmap() and fork() cannot be support if > > > there is no MMU. uCLinux had the same limitations. > > > ________________________________ > > > From: Alan C. Assis <[email protected]> > > > Sent: Thursday, November 20, 2025 4:39 AM > > > To: dev <[email protected]> > > > Subject: [VOTE] Add support to NOT POSIX Compliant (or should be add > > > support ?) > > > > > > Hi Everyone, > > > > > > Some years ago NuttX was able to fit in really small MCUs (in fact I > got > > it > > > running on a chip using less than 2KB RAM). > > > > > > But a few years ago those options to disable SIGNALS, VFS, etc were > > > disabled to create a system that was fully POSIX compliant. > > > > > > Unfortunately we missed the details: POSIX also aims at systems without > > > resources, as is the case of POSIX PE51 (POSIX PSE51 is a specific, > > minimal > > > profile or subset of the full POSIX - Portable Operating System > Interface > > > standard, formally defined in IEEE 1003.13-2003). > > > > > > Almost two years ago I opened an issue about it: > > > https://github.com/apache/nuttx/issues/11390 > > > > > > Today Mr Chengdong opened a PR to bring back the possibility to disable > > > signals: > > > https://github.com/apache/nuttx/pull/17352 > > > > > > But as Mateusz (raiden00pl) pointed we need to be careful about it to > > avoid > > > breaking the Inviolables: > > > > > > ## Strict POSIX compliance > > > > > > - Strict conformance to the portable standard OS interface as defined > > at > > > OpenGroup.org. > > > > > > > > > * - A deeply embedded system requires some special support. Special > > > support must be minimized.* - The portable interface must never be > > > compromised only for the sake of > > > expediency. > > > - Expediency or even improved performance are not justifications for > > > violation of the strict POSIX interface. > > > > > > Fortunately Greg chose well his words: "Special support must be > > minimized". > > > It doesn't mean it could exist, we just need to take care to not become > > > normal or goal and jeopardize the system. > > > > > > So in this sense I propose to vote a suggestion: > > > > > > In the configuration where we already add an option to disable posix > > timer, > > > pthreads, etc we add an option to "Enable POSIX PE51 subset". > > > > > > This way someone willing to disable signals will be aware he/she is > > > creating a system that is not POSIX fully compliant or it is just a > > subset > > > of a POSIX OS. > > > > > > BR, > > > > > > Alan > > > > > >
