Skip to main content

잘못된 공유 란 무엇입니까?

Ossure 오 탐지는 각 프로그램이나 프로세스가 자체 캐시에 저장된 것과 동일한 논리적 메모리 영역에서 정보에 액세스하려고 시도 할 때 컴퓨터 프로그램에서 발생할 수있는 상황입니다.각 애플리케이션 캐시의 데이터는 공통 소스에서 복사되므로 한 캐시를 수정하면 다른 캐시가 소스에서 다시로드되어야합니다.공유의 잘못된 측면은 한 프로그램별로 캐시 라인의 변경이 실제로 두 번째 프로그램이 사용하는 데이터에 영향을 미치지 않을 때 발생합니다.이 경우 캐시를 다시로드하도록 강요하는 경우 시스템 리소스의 낭비이며 부정적인 영향을 줄 수 있습니다.프로그램의 성능.허위 공유 문제는 현재 캐시 된 라인에있는 데이터를 별도의 라인으로 이동하는 것과 같은 잘못된 공유를 방지하는 효과적인 방법이 있지만 응용 프로그램에 포함 된 코드의 직접적인 결과는 아니기 때문에 탐지하기가 어렵습니다..하드 디스크 또는 다른 소스의 정보가 프로그램에 의해 읽거나 작성되는 경우 일반적으로 임시 캐시에로드되므로 빠르게 액세스 할 수 있습니다.소스 위치에서 캐시 된 정보의 양은 캐시 라인이라고하며 일반적으로 길이가 2 바이트와 256 바이트 사이 일 수있는 논리적 인 메모리 블록입니다.일부 운영 체제 또는 시스템 아키텍처에서 프로그램은 병렬 처리와 같은 동시에 실행할 수 있습니다.즉, 두 개의 별도 프로그램이 동일한 캐시 라인에서 정보에 액세스하려고 시도 할 수 있으므로 각 프로그램은 자체 자체 소스 데이터 사본을 가지므로 한 캐시의 변경 사항이 다른 캐시에 반영되어 잠재적으로 변경되어 무효화됩니다.데이터가 보유합니다.. 두 프로그램이 동일한 캐시 라인에 액세스하려고 시도 할 때 상황을 처리하기 위해 여러 가지 메커니즘이 있지만 가장 자주 결과는 한 프로그램이 업데이트 된 정보로 캐시를 다시로드해야한다는 것입니다.수정되었습니다.이 유형의 사고는 각 프로그램에 액세스하는 캐시 라인 내의 데이터가 관련이 없을 때 잘못된 공유라고합니다. 따라서 캐시를 다시로드하도록 강요하는 것은 처리 전력 및 기타 리소스의 낭비입니다.이것은 가장 자주 캐시에서 정보를 수정하지 않는 프로그램의 문제이므로 다른 프로세스가 이루어진 응용 프로그램 덮어 쓰기 변경의 위험이 없습니다.나누는.첫 번째는 메모리의 데이터 전후에 빈 정보를 추가하여 본질적으로 다른 프로그램에서 액세스하지 않는 별도의 캐시 라인으로 강제하는 것입니다.두 번째 방법은 캐시 라인에 읽기 및 쓰기 빈도를 가능한 한 적게 다시로드하는 것입니다.보다 복잡한 솔루션은 캐시 레벨 관리 또는 운영 체제가 공유를 처리하는 방식에 대한 변경과 관련이 있습니다.