<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:1956596833;
        mso-list-type:hybrid;
        mso-list-template-ids:-721892474 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:-;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Calibri",sans-serif;
        mso-fareast-font-family:"Times New Roman";}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style></head><body lang=EN-US link=blue vlink="#954F72" style='word-wrap:break-word'><div class=WordSection1><p class=MsoNormal>Hi Frank,</p><p class=MsoNormal>The cFS uses files for:</p><ul style='margin-top:0in' type=disc><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>Loading individual applications. The current build system can link all applications with the cFE core and the OS image avoiding the need for dynamic loading.</li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>The cFE Executive Services startup script</li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>Table service files</li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>And as you mention, any cFS application that uses files</li></ul><p class=MsoNormal>There are some commands and APIs that will not work without a file system such as loading a new application from a file system or dumping a log to a file.</p><p class=MsoNormal>The cFE Executive Services also creates a RAM disk upon startup.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>So, I think modifications will be necessary to use cFS without a file system, but all file system calls go through the OS Abstraction Layer so the cFS does not depend on the host OS file system API. Because of this, a file abstraction could be created that is simple enough for qualification but still allows the cFS to operate as designed. An example is the “EEPROM File System” or EEFS which has been used to boot cFS systems:</p><p class=MsoNormal><a href="https://github.com/nasa/eefs">https://github.com/nasa/eefs</a></p><p class=MsoNormal>The EEFS has an older RTEMS file system interface, but in your use case, the OSAL would call the EEFS standalone API directly. Note that this public release has not been updated in quite a while.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Regards,</p><p class=MsoNormal>Alan</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:frank.kuehndel@embedded-brains.de">Frank Kühndel</a><br><b>Sent: </b>Thursday, November 24, 2022 5:08 AM<br><b>To: </b><a href="mailto:devel@rtems.org">devel@rtems.org</a><br><b>Subject: </b>Is it possible to use cFS without a file system?</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Hello,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>the core Flight System (cFS) is a software platform created by NASA </p><p class=MsoNormal>(https://cfs.gsfc.nasa.gov/). It provides essential onboard services for </p><p class=MsoNormal>space missions.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I would like to use cFS on top of an RTEMS qualified for space by ESA </p><p class=MsoNormal>(https://rtems-qual.io.esa.int/). Yet, this qualified RTEMS has no file </p><p class=MsoNormal>system. cFS can be configured to be used without IP-networking and with </p><p class=MsoNormal>static loader only but I have not found any configuration to disable the </p><p class=MsoNormal>file system.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Does anyone know whether it is possible to use cFS without a file system </p><p class=MsoNormal>or can give advice on using cFS without file system?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Of course without file system all applications accessing files will not </p><p class=MsoNormal>work. Yet, would at least the core services (such as Executive Service </p><p class=MsoNormal>(ES), Software Bus Service (SB), Event Service (EVS), Table Service </p><p class=MsoNormal>(TBL), and Time Service (TIME)) be functioning?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Greetings and Thanks</p><p class=MsoNormal>Frank</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>-- </p><p class=MsoNormal>embedded brains GmbH</p><p class=MsoNormal>Herr Frank KÜHNDEL</p><p class=MsoNormal>Dornierstr. 4</p><p class=MsoNormal>82178 Puchheim</p><p class=MsoNormal>Germany</p><p class=MsoNormal>email: frank.kuehndel@embedded-brains.de</p><p class=MsoNormal>phone:  +49-89-18 94 741 - 23</p><p class=MsoNormal>mobile: +49-176-15 22 06 - 11</p><p class=MsoNormal>fax:    +49-89-18 94 741 - 08</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Registergericht: Amtsgericht München</p><p class=MsoNormal>Registernummer: HRB 157899</p><p class=MsoNormal>Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler</p><p class=MsoNormal>Unsere Datenschutzerklärung finden Sie hier:</p><p class=MsoNormal>https://embedded-brains.de/datenschutzerklaerung/</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>_______________________________________________</p><p class=MsoNormal>devel mailing list</p><p class=MsoNormal>devel@rtems.org</p><p class=MsoNormal>http://lists.rtems.org/mailman/listinfo/devel</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>