Skip to main content

트랜잭션 메모리 란 무엇입니까?

소프트웨어에서 트랜잭션 메모리의 체계는 데이터베이스가 사용하는 트랜잭션을 사용하는 다중 스레드 프로그래밍을위한 조치입니다.둘 이상의 스레드가 동시에 동일한 데이터에 동시에 액세스하려고 시도하면, 많은 다른 바람직하지 않은 상황에서 프로그램의 결과가 스레드 액세스 순서에 의존하는 경우가 발생할 수 있습니다.일반적으로 하나의 순서가 필요하며 멀티 스레딩에서 잠금은 단일 스레드 만 한 번에 특정 리소스에 액세스 할 수 있도록하는 우세하고 가장 간단한 방법입니다..예상치 못한 오류가 발생하면 자물쇠가 영구적이 될 수 있으며 잠금은 교착 상태 나 우선 순위 역전과 같은 동시성으로 예측할 수없는 문제를 가져올 수 있습니다.자물쇠가 매우 세밀하게 입력 된 결과, 다른 문제에는 코드가 결국 잠금, 컨텍스트 전환 및 잠금 해제 사이에 대부분의 시간을 소비하게됩니다.이것은 프로그램에서 다른 중요한 작업을 수행하는 것보다 코드가 이러한 행동에 더 많은 시간을 소비 할 수 있기 때문에 중요한 문제입니다.대조적으로, 거친 입자 잠금 장치는 처리 성능과 동시성 감소를 일으킬 수 있습니다.트랜잭션 메모리와 관련하여 주요 우선 순위는 잠금 장치가없고 불필요한 잠금 처리 시간이없는 것입니다.일반적으로 공유 된 데이터 구조는 운영에 상호 배제가 필요하지 않은 경우 자물쇠가 없음에 동의합니다.공유되고 잠금이없는 데이터 구조는 동시에 매우 동시에있는 시스템에있는 경우 표준 잠금 기술과 일반적으로 관련된 문제를 피합니다.

TCC (Transactional Memory Coherence and Derforency) 모델은 공유 메모리에 대한 새로운 제안 된 모델입니다.이 모델에 따르면, 원자 트랜잭션은 평행 작업, 메모리 일관성, 통신 및 메모리 참조의 일관성의 기본 단위입니다.TCC 모델은 또한 표준 잠금 또는 세마포어를 사용하는 동기화를 제거하여 병렬 소프트웨어를 더 간단하게 만듭니다.TCC는 하드웨어를 통해 트랜잭션 발생 영역의 각 쓰기를 하나의 패킷으로 결합하여 패킷을 영구적으로 공유하는 메모리 상태로 원자 적으로 방송합니다.단순화 된 Coherence 하드웨어 외에도, 이는 저조가 필요한 저조한 메시지가 감소하고 특정 표준 일관성 프로토콜을 완전히 제거 할 수 있음을 의미합니다.