OpenDDS 3.34.0

Notika iznākums OpenDDS 3.34.0 — brīvas C++ specifikācijas ieviešana Object Management Group Datu izplatīšanas pakalpojums reāllaika sistēmām. DDS tiek izmantots, lai veidotu izplatītas sistēmas, pamatojoties uz publikācijas un abonēšanas modeli, un pats OpenDDS, papildus C++, piedāvā Java/JNI saites un balstās uz ACE/TAO. Izlaidums publicēts 2026. gada 21. maijā, gatavas arhīvi ir pieejami Windows, Linux un macOS.


Projekts tiek izplatīts kā open source: OpenDDS var izmantot, mainīt un izplatīt bez licences maksājumiem, saglabājot autortiesību paziņojumu; īpaši uzsver, ka OpenDDS var izmantot arī, izstrādājot patentētu programmatūru, neizpaužot savu avota kodu.

Galvenās izmaiņas OpenDDS 3.34.0:

  • Paplašinātas RtpsRelay iespējas. RtpsRelay tagad var mainīt papildu parametrus izpildes laikā caur RtpsRelayControl mehānismu. Tāpat pievienota iespēja definēt sadaļu sarakstu, kurām piekļuve tiks liegta konkrētai RtpsRelay instancē, izmantojot jauno tēmu RelayDeniedPartitions. Lai pārvaldītu šāda lieguma derīguma termiņu, izveidota opcija -DeniedPartitionsTimeout.

  • Pievienots kompilēšanas režīms profilēšanai. Konfigurēšanas skriptā pievienota karte -profiling, kas aktivizē tipiskos kompilēšanas parametrus veiktspējas analīzei GCC.

  • Pievienoti callbacks OpenDDS pavedienu pārvaldībai. Izstrādātāji pievienoja ielādētājus, kas tiek izsaukti, uzsākot un noslēdzot OpenDDS pavedienus. Tas ļauj pārvaldīt pavedienu uzvedību, piemēram, piesaistot tos konkrētiem CPU kodoliem Linux.

  • Optimizēta IDL tipu deserializācija. Visi IDL kartējumi tagad cenšas izvairīties no liekas atmiņas nullēšanas primāro tipu secībās, deserializējot paraugu. IDL-to-C++11 prasa papildu skaidru iekļaušanu caur @OpenDDS::no_init_before_deserialize.

  • Pievienots EventDispatcher pavedienu skaita pārvaldība. Pievienoti parametri DCPSEventDispatcherThreads un pārvades iestatījums event_dispatcher_threads. Ja event_dispatcher_threads=0, pārvade izmantos kopēju notikumu dispečeru, nevis radīs savu lokālo dispečeru.

  • Pievienoti TCP bufera iestatījumi. TCP pārvadāšanai pieejami parametri send_buffer_size un rcv_buffer_size. Noklusējuma socket buferu izmērs tagad tiek atstāts platformas ziņā, ja šie parametri nav noteikti pozitīvās vērtībās.

  • Atjaunināti ACE/TAO. At the core, the dependencies have been updated: ACE 6/TAO 2 has been raised from 6.5.23 to 6.5.24, and ACE 8/TAO 4 from 8.0.5 to 8.0.6. When building OpenDDS with CMake, the default version of ACE/TAO is now ACE 8 / TAO 4.

  • The unused option RtpsRelay has been removed. The option -LogParticipantStatistics has been removed from RtpsRelay, as it was no longer in use.

  • Performance and network operation fixes. The size of the receive buffer for netlink has been increased, and a significant portion of the servicing and response tasks have been transferred from Reactor threads to corresponding EventDispatcher threads. This should relieve Reactor threads for network reading.

  • Errors in ThreadStatusManager and transports have been fixed. ThreadStatusManager now uses multiple slots with its own locks, which reduces contention between threads. The null pointer dereference during DynamicData deserialization from a removed participant has been fixed, as well as errors related to finding transport instances and handling shared local addresses that could lead to incorrect locator values in participant and endpoint announcements.
    <<<<

News on the project website

Avots: linux.org.ru

Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa hostingu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster