Skip to content

Suggestion to use single main function for all Linux RT targets and conditionalize /dev/nrt open attempt #29

@ppisa

Description

@ppisa

/dev/nrt and iopl(3) is not available non-x86 targets and even on x86 ones requires modification
of the system kernel installation by local or laboratory systems administrator.

I suggest to use single Linux linux_main_rt.c for all targets and conditionalize /dev/nrt and iopl(3)
sequence by some define which can be provided in template. Then it would be easy to have one
template without iopl access (i.e. rt.tmf) and another with it (i.e. rt_iopl.tmf).

I prepare pull request, only question is the C processor define name. Some options

  1. CG_WITH_NRT or IOPL
  2. PYSIM_WITH_NRT or IOPL
  3. PYSIM_CG_WITH_NRT or IOPL
  4. WITH_NRT or IOPL
  5. WITH_RAW_IO_ACCESS

I suggest to consider/discuss even some other minor changes.

  • when parameter priority (-p) is set to -1 then do not attempt to switch to FIFO RT policy. It is clear that no real-time or latency guaranties can be provided in such case, but it is great to check RT code build path and generated executable by unprivileged users
  • add support to select value for priority parameter in target selection dialog. One option is "task priority" filed another is to provide there option to specify additional parameters for executable in free form. In the fact both would worth to be provided
  • consider how to specify upload method for the run command, this is for longer discussion but worth to be done to make running of the generated code on RPi, MZ_APO and NuttX targets easy

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions