MKtrace:一个用于多处理器系统上多线程程序的创新型调试工具

Yusen Li, Feng Wang, G. Wang, X. Liu, Jing Liu
{"title":"MKtrace:一个用于多处理器系统上多线程程序的创新型调试工具","authors":"Yusen Li, Feng Wang, G. Wang, X. Liu, Jing Liu","doi":"10.1109/APSEC.2007.70","DOIUrl":null,"url":null,"abstract":"In this paper, we propose an innovative debugging tool called MKtrace to help programmers identify bugs in multi-threaded programs on multiprocessor systems with little overhead. Unlike the traditional debugging tools, we use the trace log to analyze the cause of a crash or any abnormal behaviour. Bugs can be identified within the log file, not directly at run time. Also, a key advantage of MKtrace is its insignificant overhead. The main idea of MKtrace is to monitor all the processes or threads from a program when they switch out in the kernel. We log the call stack of each thread, and then we analyze the log in the user space. We implemented MKtrace on Linux AS3 with two processors and achieved promising results during our experiments.","PeriodicalId":273688,"journal":{"name":"14th Asia-Pacific Software Engineering Conference (APSEC'07)","volume":"29 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2007-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"MKtrace: An Innovative Debugging Tool for Multi-Threaded Programs on Multiprocessor Systems\",\"authors\":\"Yusen Li, Feng Wang, G. Wang, X. Liu, Jing Liu\",\"doi\":\"10.1109/APSEC.2007.70\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"In this paper, we propose an innovative debugging tool called MKtrace to help programmers identify bugs in multi-threaded programs on multiprocessor systems with little overhead. Unlike the traditional debugging tools, we use the trace log to analyze the cause of a crash or any abnormal behaviour. Bugs can be identified within the log file, not directly at run time. Also, a key advantage of MKtrace is its insignificant overhead. The main idea of MKtrace is to monitor all the processes or threads from a program when they switch out in the kernel. We log the call stack of each thread, and then we analyze the log in the user space. We implemented MKtrace on Linux AS3 with two processors and achieved promising results during our experiments.\",\"PeriodicalId\":273688,\"journal\":{\"name\":\"14th Asia-Pacific Software Engineering Conference (APSEC'07)\",\"volume\":\"29 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2007-12-04\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"14th Asia-Pacific Software Engineering Conference (APSEC'07)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/APSEC.2007.70\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"14th Asia-Pacific Software Engineering Conference (APSEC'07)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APSEC.2007.70","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

摘要

在本文中,我们提出了一种称为MKtrace的创新调试工具,以帮助程序员以很少的开销识别多处理器系统上多线程程序中的错误。与传统的调试工具不同,我们使用跟踪日志来分析崩溃或任何异常行为的原因。bug可以在日志文件中识别,而不是在运行时直接识别。此外,MKtrace的一个关键优点是它的开销很小。MKtrace的主要思想是监视程序在内核中切换时的所有进程或线程。我们记录每个线程的调用堆栈,然后在用户空间中分析日志。我们在使用两个处理器的Linux AS3上实现了MKtrace,并在实验中取得了令人满意的结果。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
MKtrace: An Innovative Debugging Tool for Multi-Threaded Programs on Multiprocessor Systems
In this paper, we propose an innovative debugging tool called MKtrace to help programmers identify bugs in multi-threaded programs on multiprocessor systems with little overhead. Unlike the traditional debugging tools, we use the trace log to analyze the cause of a crash or any abnormal behaviour. Bugs can be identified within the log file, not directly at run time. Also, a key advantage of MKtrace is its insignificant overhead. The main idea of MKtrace is to monitor all the processes or threads from a program when they switch out in the kernel. We log the call stack of each thread, and then we analyze the log in the user space. We implemented MKtrace on Linux AS3 with two processors and achieved promising results during our experiments.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信