프로세스 분리
Process isolation프로세스 격리는 운영 체제의 다른 프로세스로부터 각 프로세스를 보호하기 위해 설계된 여러 하드웨어 및 소프트웨어[1] 기술입니다.프로세스 A가 프로세스 B에 쓰는 것을 방지함으로써 이를 실현합니다.
프로세스 격리는 가상 주소 공간을 사용하여 구현할 수 있습니다.여기서 프로세스 A의 주소 공간은 프로세스 B의 주소 공간과 다르므로 A가 B에 쓸 수 없습니다.
다른 프로세스에서 [2]어떤 프로세스가 어떤 메모리에든 쓸 수 있는 DOS 등의 덜 안전한 아키텍처와는 달리 프로세스 간 메모리 액세스를 허용하지 않음으로써 보안을 강화하기가 쉬워집니다.
제한된 프로세스 간 통신
프로세스 격리가 있는 시스템에서는 공유 메모리, 로컬 소켓 또는 인터넷 소켓 등의 프로세스 간 통신(IPC) 채널을 통해 프로세스 간의 제한적인(제어된) 상호작용이 여전히 허용될 수 있습니다.이 방식에서 프로세스의 모든 메모리는 프로세스가 협업 프로세스로부터의 입력을 허용하는 경우를 제외하고 다른 프로세스로부터 격리됩니다.
시스템 정책에 따라서는 IPC가 허용되지 않을 수 있습니다.예를 들어 필수 접근통제 시스템에서는 감도 수준이 다른 피험자는 서로 통신할 수 없습니다.이러한 상황에서 보안에 미치는 영향은 광범위하며 네트워크 키 암호화 체계학 및 분산 캐싱 알고리즘의 애플리케이션에 걸쳐 있습니다.기본적인 클라우드 액세스 아키텍처 및 네트워크 공유와 같은 인터페이스 정의 프로토콜도 마찬가지로 [3]영향을 받습니다.
운영 체제
프로세스 분리를 지원하는 주요 운영 체제:
웹 브라우저
Internet Explorer 4는 브라우저의 개별 윈도우 인스턴스를 허용하는 자체 프로세스를 사용하기 위해 프로세스 분리를 사용했습니다.그러나 브라우저 전쟁이 한창일 때, 이것은 후속 버전에서 삭제되어 Netscape Navigator와 경쟁하게 되었습니다(인터넷 스위트 전체에서 하나의 프로세스에 집중하려고 했습니다.인스턴스당 프로세스라는 개념은 탭 브라우징이 보편화된 10년 후에나 다시 논의될 것입니다.
구글 크롬의 '멀티 프로세스 아키텍처'[4]와 인터넷 익스플로러 8의 '느슨하게 결합된 IE(Loosely Coupled IE)'[5]에서는 하나의 탭/페이지가 브라우저 전체에서 충돌하는 것을 방지하기 위해 브라우저의 핵심 프로세스로부터 격리된 자체 반분리된 OS 레벨 프로세스 내에 웹 페이지를 포함하는 탭이 포함되어 있다.이 방법(일반적으로 멀티프로세서 또는 탭당 프로세스로 알려져 있음)은 문제가 되는 탭이 브라우저 및 다른 탭과 별도로 크래시하여 보안을 관리함으로써 메모리와 처리를 모두 관리하는 것을 의미합니다.
프로세스 격리 기능이 있는 브라우저
프로그래밍 언어
얼랑(프로그래밍 언어)은 엄격하게 분리된 경량 프로세스를 실현함으로써 사용자 공간에서도 유사한 개념을 제공하고 있습니다.
관련 테크놀로지
- 가상 메모리와 가상 주소 공간을 통해 메모리 공간을 분리할 수 있습니다.
- 폴리 인스턴스화에 의해 공유 자원의 미러링이 가능하게 됩니다.여기서 프로세스A에 의한 변경은 프로세스B에 표시되지 않습니다.
「 」를 참조해 주세요.
레퍼런스
- ^ 프로세스 격리를 해체하고 있습니다.Aiken, Mark, Féndrich, Manuel, Hawblitzel, Chris, Hunt, Galen, Larus, James R.마이크로소프트 리서치2006년 10월 [1]
- ^ 올인원 CISSP 시험 가이드, 제3판, Shon Harris
- ^ Pahl, C (2015). "Containers and clusters for edge cloud architectures--a technology review". 3rd international conference on future internet of things and cloud.
- ^ 멀티프로세스 아키텍처, Chromium 블로그, 2008년9월 11일 (목)
- ^ Andy Zeigler, 2008년 3월 11일 화요일, IE8과 느슨하게 결합된 IE(LCIE)