User story #118
MARTe-EX-D-1.3.2: The framework shall allow developers to protect shared resources using event semaphores.
100%
Description
Implement requirement MARTe-EX-D-1.3.2 based on the original MARTe implementation
Note: The development of multi-thread real-time applications usually requires that shared resources are protected using barriers, so that the access to the shared resource is blocked until a given event occurs. When this event occurs, all the threads are allowed to concurrently interact with the shared resource.
Source code files modified¶
- Source/Core/L0Portability/EventSem.cpp
- Source/Core/L0Portability/EventSem.h
- Source/Core/L0Portability/OperatingSystem/Linux/EventSemOS.h
- Source/Core/L0Portability/OperatingSystem/Windows/EventSemOS.h
- Test/Core/L0Portability/EventSemTest.cpp
- Test/Core/L0Portability/EventSemTest.h
- Test/GTest/EventSemGTest.cpp
Architecture & design review¶
Date of the review: 12/06/2015
Person who did the review: André Neto
Version of architecture & design document: N/A. As per the original MARTe implementation, this is a support function and does not require formal design in UML.
Result of review: N/A
List of non-conformities: N/A
Code and documentation review¶
Date of the review: 25/06/2015
Person who did the review: Ivan Herrero
Result of review: SUCCESS
List of non-conformities: N/A
Unit test review¶
Date of the review: 02/07/2015
Person who did the review: Ivan Herrero
Result of coverage tests review: PASS [100%]
Result of functional tests review: PASS [100%]
Result of review: PASS
List of non-conformities: N/A
Associated revisions
Added EventSem integration GTests.
#118
Fixed issues on event semaphores.
#118
EventSem unit testing implemented as agreed. #118
The EventSemTest was merged with the integration tests. Some extra unit
tests such as the TestCreate and TestClose were also added.
Complemented the number of unit tests with some extra basic assessments
that do not require full multithreading. #118
Minor typo corrected. #118
Implemented the EventSemTest as per unit test review. #118
History
#1 Updated by Riccardo Vitelli almost 10 years ago
- Target version changed from Backlog to 0.1
- Start date deleted (
29.05.2015) - Estimated time set to 4.00 h
#2 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from New to Arch: Rev
#3 Updated by Riccardo Vitelli almost 10 years ago
- Assignee set to André Neto
#4 Updated by André Neto almost 10 years ago
- Description updated (diff)
#5 Updated by Ivan Herrero almost 10 years ago
- Status changed from Arch: Rev to Code: Impl
#6 Updated by Ivan Herrero almost 10 years ago
- Assignee changed from André Neto to Giuseppe Ferro
#7 Updated by Ivan Herrero almost 10 years ago
- Assignee changed from Giuseppe Ferro to Ivan Herrero
#8 Updated by Ivan Herrero almost 10 years ago
- Status changed from Code: Impl to Code: Rev
#9 Updated by Ivan Herrero almost 10 years ago
- Description updated (diff)
#10 Updated by Ivan Herrero almost 10 years ago
- Description updated (diff)
- Assignee deleted (
Ivan Herrero)
#11 Updated by Ivan Herrero almost 10 years ago
- Status changed from Code: Rev to Code: Impl
#12 Updated by Riccardo Vitelli almost 10 years ago
- Assignee set to Giuseppe Ferro
#13 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Code: Impl to Code: Rev
#14 Updated by Riccardo Vitelli almost 10 years ago
- Assignee changed from Giuseppe Ferro to Ivan Herrero
#15 Updated by Ivan Herrero almost 10 years ago
Code and documentation review made on revision b99ba9f. Code and documentation corrections pending. See #115.
#16 Updated by André Neto almost 10 years ago
- Status changed from Code: Rev to Code: Impl
#17 Updated by André Neto almost 10 years ago
- Assignee changed from Ivan Herrero to Giuseppe Ferro
#18 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Code: Impl to Code: Rev
#19 Updated by Riccardo Vitelli almost 10 years ago
- Assignee deleted (
Giuseppe Ferro)
#21 Updated by Ivan Herrero almost 10 years ago
- Status changed from Code: Rev to Code: Impl
#22 Updated by Ivan Herrero almost 10 years ago
- Status changed from Code: Impl to Unit: Impl
#23 Updated by Giuseppe Ferro almost 10 years ago
- Assignee set to Giuseppe Ferro
#24 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Unit: Impl to Code: Rev
#25 Updated by Riccardo Vitelli almost 10 years ago
- Assignee deleted (
Giuseppe Ferro)
#26 Updated by Ivan Herrero almost 10 years ago
- Assignee set to Ivan Herrero
#27 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Code: Rev to Unit: Impl
#28 Updated by Riccardo Vitelli almost 10 years ago
- Assignee deleted (
Ivan Herrero)
#29 Updated by André Neto almost 10 years ago
- Assignee set to André Neto
#30 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Unit: Impl to Unit: Rev
- Assignee deleted (
André Neto)
#31 Updated by Ivan Herrero almost 10 years ago
- Assignee set to Ivan Herrero
#32 Updated by Ivan Herrero almost 10 years ago
- Description updated (diff)
Unit test review made on revision 7d51299 [FAIL].
#33 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Unit: Rev to Unit: Impl
- Assignee changed from Ivan Herrero to André Neto
#34 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Unit: Impl to Unit: Rev
- Assignee deleted (
André Neto)
#35 Updated by André Neto almost 10 years ago
- Assignee set to Ivan Herrero
#36 Updated by Ivan Herrero almost 10 years ago
Unit test review made on revision c366565 [PASS]
#37 Updated by Ivan Herrero almost 10 years ago
- Description updated (diff)
#38 Updated by Riccardo Vitelli almost 10 years ago
- Status changed from Unit: Rev to Closed
- Assignee deleted (
Ivan Herrero) - % Done changed from 0 to 100
Added EventSem implementation
#117 #115 #118