首页> 外文会议>2nd International workshop on recommendation systems for software engineering 2010 >KAdvice: Infering Synchronization Patterns From an Existing Codebase
【24h】

KAdvice: Infering Synchronization Patterns From an Existing Codebase

机译:KAdvice:从现有代码库推断同步模式

获取原文
获取原文并翻译 | 示例

摘要

Operating system kernels are complex software systems. The kernels of todays mainstream OSs, such as Linux or Windows, are composed from a number of modules, which contain code and data. Even when providing synchronous interfaces (APIs) to the programmer, large portions of the OS kernel operate in an asynchronous manner. Synchronizing access to kernel data structures therefore is a central problem in OS kernels running on todays multicore and multiprocessor hardware. With the need to utilize future multi- and manycore processors, managing the synchronization problem becomes central to all multithreaded control-parallel applications. Since only little software is written from scratch, understanding the intended use of locking constructs and their relation to shared data structures will become critical to all programmers. Built upon our experiences with developing code inside the Windows kernel, we have developed the KAdvice approach, which helps to analyze locking structures in an existing code-base. KAdvice applies static analysis to call graphs and code dependencies to recommend appropriate locking patterns when accessing certain data structures. KAdvice has itself proven very useful in context of students' programming projects based upon the Windows Research Kernel (WRK). However, our approach is more general and applicable not only to OS kernels but to control-parallel software in general.
机译:操作系统内核是复杂的软件系统。当今主流操作系统(例如Linux或Windows)的内核由许多模块组成,这些模块包含代码和数据。即使在向程序员提供同步接口(API)时,OS内核的大部分仍以异步方式运行。因此,在当今的多核和多处理器硬件上运行的OS内核中,同步访问内核数据结构是一个中心问题。由于需要使用未来的多核和多核处理器,因此,管理同步问题成为所有多线程并行控制应用程序的核心。由于只有很少的软件是从头开始编写的,因此了解锁定结构的预期用途及其与共享数据结构的关系对于所有程序员而言都至关重要。基于我们在Windows内核中开发代码的经验,我们开发了KAdvice方法,该方法有助于分析现有代码库中的锁定结构。 KAdvice将静态分析应用于调用图和代码依赖项,以在访问某些数据结构时建议适当的锁定模式。 KAdvice本身已被证明在基于Windows研究内核(WRK)的学生编程项目中非常有用。但是,我们的方法更为通用,不仅适用于OS内核,而且通常适用于控制并行软件。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号