Advanced Minds

  • Decrease font size
  • Default font size
  • Increase font size
  • default color
  • red color
  • green color
FireBoard
Welcome, Guest
Please Login or Register.    Lost Password?
clock c++ "Ravenscar-like" profile for C/C++ (1 viewing) (1) Guests
Go to bottom Post Reply Favoured: 0
TOPIC: clock c++ "Ravenscar-like" profile for C/C++
#8570
Marc Le Roy (Visitor)
Click here to see the profile of this user
Birthdate:
clock c++ "Ravenscar-like" profile for C/C++  
Hello, ADA Ravenscar is a restricted subset of the ADA language that has been defined for real-time software development in safety critical applications. Completed with additional restrictions like the ones defined in the SPARK profile, it allow to build very deterministic applications that support automatic static code analysis and schedulability analysis. http://www.acm.org/pubs/articles/proceedings/ada/289524/p1-dobbing/p1... I would like to know if there is a similar standard for C / C++. I found only MISRA-C and EC++, but they are rather permissive with respect to the Ravenscar ADA profile. Moreover, because the ADA standard covers concepts that are out of the scope of the C/C++ standards, I suppose that an equivalent of the Ravenscar profile in C/C++ should make reference to an RTOS. Marc
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#8571
Ioannis Vranos (Visitor)
Click here to see the profile of this user
Birthdate:
clock c++ "Ravenscar-like" profile for C/C++  
I would like to know if there is a similar standard for C / C++. I found only MISRA-C and EC++, but they are rather permissive with respect to the Ravenscar ADA profile. Moreover, because the ADA standard covers concepts that are out of the scope of the C/C++ standards, I suppose that an equivalent of the Ravenscar profile in C/C++ should make reference to an RTOS. There is no reason for such a subset in C++. Use the part of C++ that fits your needs. The whole language is designed for maximum run-time/space efficiency. I place here the contents of a page of my old web site which i think you will find useful:
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#8572
Marc Le Roy (Visitor)
Click here to see the profile of this user
Birthdate:
clock c++ "Ravenscar-like" profile for C/C++  
There is no reason for such a subset in C++. Use the part of C++ that fits your needs. It seems that you don't know very well the world of high integrity systems, especially the ones that require certification according to standards like DO178B level A You should have a look to this document: http://polaris.dit.upm.es/~str/proyectos/ork/documents/RP_ug.pdf especially to section 2, that explain why such a restrictive ADA profile has been defined. It is true that the problems in relation with tasking do not exist in C++ because tasking is not part of the C++ standard, but other remains. In fact, having a good experience of using both C and C++ in real time projects [yes, they are different languages ], I have a good idea of what can or cannot be used in safety critical systems. But I am pretty sure that both my customer and certification authorities will have a greater confidence in a established standard than in my opinion Marc
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#8573
Jack Klein (Visitor)
Click here to see the profile of this user
Birthdate:
clock c++ "Ravenscar-like" profile for C/C++  
Hello, ADA Ravenscar is a restricted subset of the ADA language that has been defined for real-time software development in safety critical applications. Completed with additional restrictions like the ones defined in the SPARK profile, it allow to build very deterministic applications that support automatic static code analysis and schedulability analysis. http://www.acm.org/pubs/articles/proceedings/ada/289524/p1-dobbing/p1... I would like to know if there is a similar standard for C / C++. I found only MISRA-C and EC++, but they are rather permissive with respect to the Ravenscar ADA profile. Moreover, because the ADA standard covers concepts that are out of the scope of the C/C++ standards, I suppose that an equivalent of the Ravenscar profile in C/C++ should make reference to an RTOS. There is no reason for such a subset in C++. Use the part of C++ that fits your needs. The whole language is designed for maximum run-time/space efficiency. I place here the contents of a page of my old web site which i think you will find useful:         [large snip] You have completely mis-understood the question. The issues here have nothing at all to do with run-time/space efficiency, but about, as the OP specifically stated, safety critical applications .  The phrase you used in the part of your overly long pedantic message that I snipped, mission critical applications , is not, never has been, and never will be remotely similar.  In fact, it is nothing more than a marketing buzz word. This renders your answer meaningless in the context.
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#8574
Jack Klein (Visitor)
Click here to see the profile of this user
Birthdate:
clock c++ "Ravenscar-like" profile for C/C++  
It is true that the problems in relation with tasking do not exist in C++ because tasking is not part of the C++ standard, but other remains. In fact, having a good experience of using both C and C++ in real time projects [yes, they are different languages ], I have a good idea of what can or cannot be used in safety critical systems. But I am pretty sure that both my customer and certification authorities will have a greater confidence in a established standard than in my opinion Marc Whatever established standards there might or might not be, they would be off-topic in both comp.lang.c and comp.lang.c++, unless they were part of ISO 9899 and/or ISO 14882. This discussion, as I already pointed out, belongs in groups like news:comp.programming and news:comp.software-eng.  Language subsetting, for whatever purpose, is not defined by the ISO standard for either C or C++, and is not topical here.  Nor is safety critical programming.
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
#8575
Ioannis Vranos (Visitor)
Click here to see the profile of this user
Birthdate:
clock c++ "Ravenscar-like" profile for C/C++  
The phrase you used in the part of your overly long pedantic message that I snipped, mission critical applications , is not, never has been, and never will be remotely similar.  In fact, it is nothing more than a marketing buzz word. Why marketing buzz word? You can do something like: #include <fstream #include <string #include <cctype class DictionaryFileException { }; class dictionaryFile {  std::ifstream dicFile;  std:tring dicFileName; public:  dictionaryFile(const std:tring &filePath) throw (DictionaryFileException)  {   dicFileName=filePath;   dicFile.open(filePath.c_str());   if(dicFile.fail())      throw DictionaryFileException();   FileValidation();  }  void FileValidation() throw (DictionaryFileException)  {   using namespace std;   char input[256];   do   {    dicFile.get(input,256);    if(isspace(input[0]) or (input[0]=='' and input[1]==''))     continue;    else if(!isalpha(input[0]) and !isdigit(input[0]))     throw DictionaryFileException();   }while(!dicFile.eof());  } }; C++ provides the necessary structures to built very reliable, efficient and mission critical systems. In the above i define what exceptions are expected from each member function, and we can also use the Resrource Aquisition is Initializatization technique which the standard library itself also uses. Ioannis Vranos
 
Report to moderator   Logged Logged  
  The administrator has disabled public write access.
Go to top Post Reply
Powered by FireBoardget the latest posts directly to your desktop
nieautoryzowano sprawdz autoryzacje sprawdz autoryzacje no auth 905
online coupons for from you flowers ab workouts depressing songs locate car companies diving into