{"title":"The real-time behavior of dynamic memory management in C++","authors":"K. Nilsen, Hong Gao","doi":"10.1109/RTTAS.1995.516211","DOIUrl":null,"url":null,"abstract":"Dynamic memory management is an important aspect of modern software engineering techniques based on object-oriented methodologies. Additionally, dynamic management of memory serves important roles in improving the flexibility and functionality of large software systems. However, developers of current real-time systems avoid the use of dynamic memory because they fear that the worst-case time and space requirements of typical dynamic memory managers are insufficiently bounded. The degree to which these concerns are valid is quantified by detailed measurements of several real-world workloads. A special hardware-assisted real-time garbage collection system has been designed to facilitate reliable use of dynamic memory in hard real-time systems. By analyzing the dynamic memory use of application software, the real-time developer can prove compliance with time and space constraints. Analysis techniques are presented and the real-time performance of the hardware-assisted garbage collection system is compared to that of the traditional allocators.","PeriodicalId":265113,"journal":{"name":"Proceedings Real-Time Technology and Applications Symposium","volume":"5 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1995-05-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"16","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Real-Time Technology and Applications Symposium","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/RTTAS.1995.516211","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 16
Abstract
Dynamic memory management is an important aspect of modern software engineering techniques based on object-oriented methodologies. Additionally, dynamic management of memory serves important roles in improving the flexibility and functionality of large software systems. However, developers of current real-time systems avoid the use of dynamic memory because they fear that the worst-case time and space requirements of typical dynamic memory managers are insufficiently bounded. The degree to which these concerns are valid is quantified by detailed measurements of several real-world workloads. A special hardware-assisted real-time garbage collection system has been designed to facilitate reliable use of dynamic memory in hard real-time systems. By analyzing the dynamic memory use of application software, the real-time developer can prove compliance with time and space constraints. Analysis techniques are presented and the real-time performance of the hardware-assisted garbage collection system is compared to that of the traditional allocators.