Skip to main content
QUICK REVIEW

[논문 리뷰] Memory Tagging and how it improves C/C++ memory safety

Kostya Serebryany, Evgenii Stepanov|arXiv (Cornell University)|2018. 02. 26.
Security and Verification in Computing인용 수 45
한 줄 요약

이 논문은 C/C++ 메모리 안전성을 개선하기 위한 기술로 메모리 태깅을 설명하고, 두 가지 구현: 전체 하드웨어 SPARC 접근 방식과 부분적으로 하드웨어 보조 AArch64 컴파일러 기반 도구를 상세히 다루며, 이들의 잠재적 영향에 대해 논의한다.

ABSTRACT

Memory safety in C and C++ remains largely unresolved. A technique usually called "memory tagging" may dramatically improve the situation if implemented in hardware with reasonable overhead. This paper describes two existing implementations of memory tagging: one is the full hardware implementation in SPARC; the other is a partially hardware-assisted compiler-based tool for AArch64. We describe the basic idea, evaluate the two implementations, and explain how they improve memory safety. This paper is intended to initiate a wider discussion of memory tagging and to motivate the CPU and OS vendors to add support for it in the near future.

연구 동기 및 목표

  • C/C++에서 향상된 메모리 안전성의 필요성을 촉구하고, 메모리 태깅이 차지할 역할을 논의한다.
  • 메모리 태깅의 두 가지 구체적 구현을 설명한다: SPARC 하드웨어 태깅과 AArch64 컴파일러 보조 도구.
  • 이 구현들이 메모리 안전성을 얼마나 향상시키는지 평가하고 CPU 및 OS 벤더에 대한 wider한 함의를 논의한다.

제안 방법

  • 메모리 태깅의 기본 아이디어를 설명한다.
  • SPARC 하드웨어 구현과 그 특성을 설명한다.
  • AArch64를 위한 부분적으로 하드웨어 보조형 컴파일러 기반 도구를 설명한다.
  • 태깅이 실무 차원에서 메모리 안전성을 어떻게 향상시키는지 평가한다.
  • CPU 및 OS 벤더 채택에 대한 시사점과 권고를 논의한다.

실험 결과

연구 질문

  • RQ1메모리 태깅이 무엇이며 C/C++의 메모리 안전성을 어떻게 개선할 수 있는가?
  • RQ2SPARC 하드웨어 태깅 구현의 특성 및 트레이드오프는 무엇인가?
  • RQ3AArch64 컴파일러 보조 태깅 도구의 특성 및 트레이드오프는 무엇인가?
  • RQ4메모리 태깅이 CPU/OS 생태계의 의사결정 및 채택에 어떤 영향을 줄 수 있는가?

주요 결과

  • 두 가지 구체적인 메모리 태깅 접근 방식이 논의된다: 전체 하드웨어 SPARC 구현과 부분적으로 하드웨어 보조가 있는 AArch64 도구.
  • 저자에 따르면 메모리 태깅은 C/C++의 메모리 안전성을 상당히 향상시킬 잠재력을 가진다.
  • 이 논문은 실용적 채택을 가능하게 하려면 더 넓은 논의와 하드웨어/OS 벤더의 지원이 필요하다고 주장한다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.