소프트웨어 잠금이란 무엇입니까?
소프트웨어 잠금은 다중 프로세서 시스템에서 발생할 수있는 컴퓨터 문제입니다. 이 잠금으로 인해 컴퓨터 성능이 크게 저하되고 추가 프로세서 기능이 사용되지 않을 수 있습니다. 최신 다중 프로세서 컴퓨터에서는 소프트웨어 잠금 오작동을 피하기 위해 특수 운영 체제 소프트웨어를 사용해야합니다.
소프트웨어 잠금의 발생은 1968 년 IBM ™ 과학자 스튜어트 매드 닉 (Stuart Madnick)에 의해 처음 설명되었습니다. 컴퓨터 역사의 초기 단계에서, 매드 닉은 개인용 컴퓨터가 향후 수십 년 동안 점점 작아지고 비싸지 않을 것으로 예상했지만 대략적으로 제한 될 것으로 예상했습니다 동일한 데이터 전송 속도. 이 예측은 대부분 올바른 것으로 판명되었으며 프로세서를 추가하기 만하면 컴퓨터의 유용한 성능이 향상되는 경우가 많습니다.
소프트웨어 잠금의 주요 원인은 오류 자체가 아니라 기능입니다. 여러 개의 프로세서가 서로 연결된 컴퓨터에서는 여러 개의 프로세서가 각각 동일한 정보를 처리하는 이점이 없습니다. 실제로 단일 데이터 소스를 수정하려고 시도하는 서로 다른 프로세서가 원래 레코드를 손상시킬 수 있습니다. 여러 장치가 동일한 정보를 열지 못하게하려면 나머지 처리 구성 요소가 파일에서 "잠겨"있는 동안 하나의 프로세서 만 액세스 할 수 있습니다.
이 잠금 방법은 프로세서 수가 적은 컴퓨터에 효과적입니다. 그러나이 방법은 광범위한 연결된 처리 장치가있는 장치에서 문제가됩니다. 소프트웨어 잠금은 스토리지 공간과 프로세서간에 데이터를 얼마나 빨리 분배 할 수 있는지에 제한이 있기 때문에 컴퓨터에 여러 프로세서를 추가 할 때의 확장 성과 효율성을 심각하게 제한합니다.
컴퓨터를 포함한 어떤 기계도 완전히 효율적인 것은 아닙니다. 이러한 고유의 비 효율성은 다중 프로세서 컴퓨터에서 더욱 복잡해집니다. 예를 들어 16 개의 프로세서가있는 컴퓨터는 데이터를 필요한만큼 빨리 배포 할 수 없기 때문에 프로세서 중 하나가 항상 유휴 상태 일 수 있습니다. 어떤 시점에서 복합 비 효율성은 더 이상 컴퓨터의 프로세서 수를 확장하는 것이 유용하지 않다는 것을 의미합니다. 시스템에 수천 개의 프로세서를 추가하는 것은 쓸모가 없습니다. 데이터 속도가 제한적이고 대부분의 중복 프로세서가 지속적인 소프트웨어 잠금 상태에 빠질 수 있기 때문입니다.
다중 프로세서 용으로 특별히 설계된 운영 체제를 사용하면 소프트웨어 잠금을 최소화 할 수 있습니다. 전문화 된 소프트웨어는 데이터 소스를 여러 다른 조각으로 나누고 이러한 부분을 프로세서에 배포 할 수 있습니다. 이 방법은 각 장치가 원본 데이터의 작은 구성 요소를 처리 할 수 있으므로 프로세서를 잠글 필요가 없습니다. 기본적으로 멀티 프로세서 소프트웨어를 사용하면 각 처리 장치에 항상 작업이 있고 데이터가보다 분산되고 균등하게 분산됩니다.