Changes between Version 345 and Version 346 of Developer/OpenProjects


Ignore:
Timestamp:
Oct 9, 2013, 5:21:42 AM (6 years ago)
Author:
Gedare
Comment:

Update for some status changes.

Legend:

Unmodified
Added
Removed
Modified
  • Developer/OpenProjects

    v345 v346  
    2525
    2626Some of the identified activities which would augment our testing capabilities are listed here:
    27  *  [wiki:Projects/TestingImprovements RTEMS Testing]. Testing for RTEMS, including Unit, Regression operational and building a custom test harness.  No prior knowledge of software testing is required. (SOCIS)
     27 *  ''[wiki:Projects/TestingImprovements RTEMS Testing]. Testing for RTEMS, including Unit, Regression operational and building a custom test harness.  No prior knowledge of software testing is required. (SOCIS)''
     28  *  [wiki:GSoC/Projects/TestTemplate RTEMS Test Template] - Improve by adding functionality
     29  *  [wiki:Developer/Testing/Specifications RTEMS Test Specification] - Need a formal test specification.  Ideally, inspired by http://softwaretestingstandard.org/ some notes about existing test specifications can be found http://www.rtems.org/wiki/index.php/GoogleCodeInProjects#Test_Documentation_Files_update .
     30  *  [wiki:RTEMS_Test_Screen_Validation RTEMS Test Screen Validation] - This requires expertise in a unit testing framework, probably DejaGnu, and will probably need to be tied into [http://git.rtems.org/rtems-testing/ rtems-testing].
    2831 *  '''[wiki:RTEMS_Test_Coverage  Test Coverage Analysis]''' - Improve coverage by adding more test cases. Eliminating dead code and reaching 100% coverage helps reduce the likelihood of new and recurrent bugs. (SOCIS)
    2932  *  Write a tutorial, modify a [wiki:TBR/Delete/Fault_injection Fault injection] tool to work with RTEMS
     
    3538 *  ''[wiki:Projects/POSIXComplianceTestSuite  POSIX Compliance Test Suite]''
    3639 *  [wiki:Projects/Open/SimulatorUpdates Simulator Updates] - This is a new idea for a project and has not been described beyond what is here. Ask on the rtems-devel mailing list for more advice. The RTEMS Project relies heavily on multiple FOSS simulators including qemu and skyeye. We have multiple BSPs which are tested on simulators. Each BSP will need to be tested against the current release and development version of each simulator. If there is a problem, then the issue will have to be identified (possibly using something like git bisect) and the student will have to fix it in the simulator. As an example of this, we believe some ARM BSPs which worked on older versions of Skyeye no longer work on the current version. In some cases, the RTEMS Project is carrying unmerged patches for a simulator (at least qemu m68k and arm) which need to be updated to their development head and submitted. You will try to get the simulator developers to include RTEMS hello world and ticker executables for BSPs their simulator supports in their simulator tests to avoid future breakage. And you will ensure that the scripts in rtems-testing/sim-scripts are working for the latest version of the simulator. We would also like instructions on running the leon BSPs on qemu. Please ask questions. This is a broad project. (SOCIS)
    37  * [wiki:GSoC/Projects/TestTemplate RTEMS Test Template] - Improve by adding functionality
    38  * [wiki:Developer/Testing/Specifications RTEMS Test Specification] - Need a formal test specification.  Ideally, inspired by http://softwaretestingstandard.org/ some notes about existing test specifications can be found http://www.rtems.org/wiki/index.php/GoogleCodeInProjects#Test_Documentation_Files_update .
    39  * [wiki:RTEMS_Test_Screen_Validation RTEMS Test Screen Validation] - This requires expertise in a unit testing framework, probably DejaGnu, and will probably need to be tied into [http://git.rtems.org/rtems-testing/ rtems-testing].
    4040= Tools and Development Environment =
    4141
     
    4545 *  Improvements in the [wiki:Developer/Eclipse/Information RTEMS Eclipse Integration].
    4646 *  Compiling RTEMS with [wiki:Projects/CLANG CLANG].
    47 <!-- * Integrate [wiki:Projects/CEXP CEXP] into main RTEMS distribution. Possible licensing issues, please apply to the RTL project instead -->
    4847 *  [wiki:Projects/Leon_rtems_merge  Merge Leon RTEMS and mainstream RTEMS] merge the Leon [wiki:TBR/UserManual/DriverManager DriverManager], [http://gaisler.com/anonftp/rcc/src/ samples], and [https://github.com/daniel-hellstrom/leon-rtems/tree/master/c/src/lib LEON-RTEMS] into mainstream RTEMS. (SOCIS)
    49  *  Implement a cross-platform [wiki:Projects/GSoC/ApplicationConfigurationGUI  Application Configuration GUI].
    5048 *  Integration of RTEMS cross development environment into [wiki:Projects/EVisualStudio  eVisual Studio]
    5149 *  [wiki:Projects/ArgoUML  ArgoUML RTEMS Support]
    5250 *  [wiki:Projects/GDB_Python GDB Python] Script support for RTEMS
    53  *  Scripts and documentation for creating and installing prebuilt tool packages:
    54   *  [wiki:Building/RPM_Packages Building Tool RPM Packages]
    55   *  [wiki:Building/DebianHostedTools  Debian Packages]
    56   *  [wiki:TBR/Delete/MacOSHostedTools MacOS tools]
    57   *  [wiki:TBR/UserManual/MinGW_Tools_for_Windows MinGW Tools for Windows]
    58   *  [wiki:TBR/Delete/Canadian_Cross_Compiler Canadian Cross Compiler]
    59  *  Improvements to the [wiki:TBR/UserManual/RTEMS_Source_Builder RTEMS Source Builder] such as building host tools, building a GUI, and improving configuration management and creation.
     51 *  [wiki:TBR/UserManual/RTEMS_Source_Builder RTEMS Source Builder] improvements such as building host tools, building a GUI, and improving configuration management and creation.
    6052= RTEMS Run-Time Oriented =
    6153
     
    6355= Executive (SuperCore, SuperCoreCPU, libcpu): a.k.a. kernel =
    6456
    65  *  [wiki:SMP_  Improvements to SMP support] - Multiprocessing is of increasing importance in modern systems and we want RTEMS to remain competitive and useful. This is a large project and subtasks should be identified before writing any proposal.
     57 *  [wiki:SMP_  Improvements to SMP support] - Multiprocessing is of increasing importance. This is a large project and subtasks should be identified before writing any proposal.
    6658  *  Implement or integrate ''[wiki:Projects/GSoC/Atomic_Operations Atomic Operations]''. SMP code requires additional synchronization primitives that are not available currently in RTEMS.
    6759 *  Unified Interrupt and PCI APIs -- [wiki:UnifiedAPIs UnifiedAPIs]
     
    8375
    8476 *  RTEMS can always use [wiki:TBR/Delete/MoreBSPsForSimulators  more BSPs for Simulators].  Being able to test, debug, and perform coverage analysis on simulators is critical to the ongoing success of the project.
     77 *  We always welcome new BSPs for useful targets. Of special interest are readily available boards and open cores.
    8578= API Layers (POSIX, Classic, SAPI) =
    8679
    8780 *  Make rename() implementation POSIX conformant
    8881 *  Implement OSEK Support [http://portal.osek-vdx.org/]
    89  *  Investigate the feasibility of implementing applicable sections of the [http://en.wikipedia.org/wiki/IEC_61131 IEC 61131] standard to enable RTEMS-enabled hardware to act as a [http://en.wikipedia.org/wiki/Programmable_logic_controller Programmable Logic Controller].  More information on the IEC 61131 standard can be found at http://www.plcopen.org/ .  [http://www.beremiz.org/] is an open source framework for automation that may be a useful starting point..
     82 *  Investigate the feasibility of implementing applicable sections of the [http://en.wikipedia.org/wiki/IEC_61131 IEC 61131] standard to enable RTEMS-enabled hardware to act as a [http://en.wikipedia.org/wiki/Programmable_logic_controller Programmable Logic Controller].  More information on the IEC 61131 standard can be found at http://www.plcopen.org/ .  [http://www.beremiz.org/] is an open source framework for automation that may be a useful starting point.
    9083 *  ''ARINC653 API support within RTEMS [wiki:Projects/GSoC/ARINC653API ARINC653API]''
    9184 *  ''Implement [wiki:POSIX_Asynchronous_IO_  POSIX Asynchronous and List IO]''
     
    9386= rtems-libbsd =
    9487
    95  *  ''[wiki:Projects/TCP/IP_update  Update the RTEMS TCP/IP stack]'' - The networking stack is old and showing it. This project actively underway.  At a high level, this effort requires porting the TCP/IP stack and providing support functional equivalents of multiple BSD kernel constructs.  This project has many subprojects many of which are appropriate for SOC. It would be of great usefulness to the community to get as many of these does as an SOC project as possible.
     88 *  ''[wiki:Projects/TCP/IP_update  Update the RTEMS TCP/IP stack]'' - The networking stack is old and showing it. This project is actively underway.  At a high level, this effort requires porting the TCP/IP stack and providing support functional equivalents of multiple BSD kernel constructs.  This project has many subprojects many of which are appropriate for SOC.
    9689 *  ''[wiki:TBR/UserManual/USBStack  port BSD USB stack]''
    9790= Languages =
     
    9992 *  [wiki:Projects/Mono Mono On RTEMS]
    10093 *  [http://code.google.com/p/v8/ Javascript V8 engine on RTEMS]
    101 V8 is high performance JavaScript engine. It was writen in C++ and it can be embedded into a C++ application. With V8 it would be easier for user to build web server with javascript and even run js framework node.js.
     94V8 is high performance JavaScript engine written in C++ and embeddable in C++ applications. With V8 it would be easier for user to build web server with javascript and even run js framework node.js.
    10295= Libraries and Applications =
    10396
    10497 *  Identify and implement the functionality currently missing in dup()
    10598 *  Port Transparent IPC (http://tipc.sourceforge.net/index.html) to RTEMS
    106  *  Implement a [wiki:Projects/Open/LineEditor  Simple Line Editor].  Existing code can be refactored for starting point.
     99 *  Implement a [wiki:Projects/Open/LineEditor  Simple Line Editor].  Existing code can be refactored for a starting point.
    107100 *  ''[wiki:Projects/libdl Dynamic Object File Loading]'' lets a base application with RTEMS dynamically load the rest of the application. The dynamic parts can be optional features and never loaded, or upgraded replacements for parts of the application.
    108101 *  '''RTEMS Toolkits''' - We are defining collections of libraries and support programs which make it easier to get started for certain types of applications.  We haven't identified all potential toolkits or components.  Each potential component must be evaluated for license and appropriateness for use in an embedded environment like RTEMS.  We also should define some guidelines about creating and maintaining toolkits in general. Here are the toolkits areas identified so far:
     
    127120  *  [wiki:Testing/Filesystem  File System Test Suite]
    128121 *  Tools
     122  *  [wiki:Projects/GSoC/ApplicationConfigurationGUI  Application Configuration GUI].
    129123 *  Runtime
    130124  *  [wiki:Projects/SixtyFourBitTimestamps  Sixty-Four Bit Timestamps]
     
    141135Some projects have been proposed that are viewed as being of minor use. This list is meant to provide a way to avoid wasted effort on projects that are not widely desired. However, projects on this list might still be useful to someone, given a motivated individual to work on them.
    142136
    143  *  Various ideas have been proposed related to using RTEMS as a [[RTEMSHyperVisor | hypervisor]]. The lack of protected (kernel mode) execution precludes any feasible implementations.
    144  *  Merge [[SimpleScalar | BSP for Simplescalar simulator]]. The BSP is heavily bit-rotted and the simulator is a dead project.
    145  *  [http://code.google.com/p/rosetta-os Rosetta OS] [[RosettaOSDeviceDriverAPI| OS Independent Device Driver API]]
     137 *  Various ideas have been proposed related to using RTEMS as a [wiki:RTEMSHyperVisor_  hypervisor]. The lack of protected (kernel mode) execution precludes any feasible implementations.
     138 *  Merge [wiki:SimpleScalar_  BSP for Simplescalar simulator]. The BSP is heavily bit-rotted and the simulator is a dead project.
     139 *  [http://code.google.com/p/rosetta-os Rosetta OS] [[RosettaOSDeviceDriverAPI| OS Independent Device Driver API]].
    146140 *  Implement current version of µITRON Interface [http://www.www.tron.org/index-e.html]. itron support was removed from RTEMS due to lack of interest.
    147141 *  More [[libbsd-port| NIC device drivers]]. See instead [wiki:Projects/TCP/IP_update TCP/IP update].
     142 *  Integrate [wiki:Projects/CEXP CEXP] into main RTEMS distribution. Possible licensing issues, please apply to the RTL project instead.
     143 *  Scripts and documentation for creating and installing prebuilt tool packages [wiki:Building/RPM_Packages Building Tool RPM Packages], [[DebianHostedTools| Debian Packages]], [[MacOSHostedTools|MacOS tools]], [wiki:TBR/UserManual/MinGW_Tools_for_Windows MinGW Tools for Windows], [wiki:TBR/Delete/Canadian_Cross_Compiler Canadian Cross Compiler]. Please apply to the [[RSB]] project instead.