1 |
1
가상화된 컴퓨터 시스템에서 사용자 어플리케이션 메모리를 보호하는 방법에 있어서, 실행 컨텍스트가 실행 중인 어플리케이션에서 게스트 운영체제로 이동하는 단계;실행 중인 어플리케이션에서 게스트 운영체제로 실행 컨텍스트가 이동하여, 하이퍼바이저를 활용해서 게스트 운영체제가 실행 중일 때는, 하이퍼바이저가 해당 어플리케이션의 모든 가상 메모리 영역의 페이지 테이블을 수정하여 접근 권한을 백업하고 제거함으로써, 하이퍼바이저가 어플리케이션의 모든 메모리 영역에 대한 접근 권한을 제거하는 단계; 및 실행 컨텍스트가 게스트 운영체제에서 어플리케이션으로 이동하는 단계를 포함하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
2 |
2
삭제
|
3 |
3
제 1 항에 있어서, 상기 방법은 게스트 운영체제가 새로운 어플리케이션을 로딩할 때 하이퍼바이저가 새로 로딩된 어플리케이션의 메모리 페이지가 변조되지 않았는지 제 3의 인증기관(Certificate Authority)을 통해서 검증하는 단계를 포함하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
4 |
4
제 1 항에 있어서, 실행 중인 어플리케이션이 시스템 콜을 호출해서 발생하는 컨텍스트 이동인 경우, 하이퍼바이저가 시스템 콜 매개변수를 게스트 운영체제의 메모리 공간으로 복사한 뒤 레지스터가 복사된 위치를 가리키도록 수정하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
5 |
5
제 1 항에 있어서,실행 중인 어플리케이션이 시스템 콜을 호출해서 발생하는 실행 컨텍스트 이동인 경우, 하이퍼바이저가 시스템 콜 버퍼에 해당하는 메모리 페이지에 대해서는 접근 권한을 제거하지 않고, 메모리 페이지 중 일부 공간만 시스템 콜 버퍼 영역에 포함되는 페이지들에 대해서는 버퍼 영역을 제외한 나머지 공간을 백업하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
6 |
6
제 1 항에 있어서, 상기 방법이 게스트 운영체제가 실행 중인 어플리케이션에서 카피-온-라이트(Copy-on-write) 페이지 폴트가 발생한 경우, 하이퍼바이저가 어플리케이션의 모든 메모리 영역에 대한 접근 권한을 백업하고 제거한 뒤, 해당 폴트를 게스트 운영체제로 전달하는 단계:게스트 운영체제가 공유되는 물리 메모리 페이지의 복제를 위해서 새로운 물리 메모리 페이지를 어플리케이션의 가상 메모리 페이지에 할당한 후, 하이퍼바이저에게 하이퍼 콜을 통해서 공유되는 물리 메모리 페이지로부터 새로운 물리 메모리 페이지로의 복사를 요청하는 단계; 및 게스트 운영체제가 카피-온-라이트 연산을 완료하는 단계를 포함하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
7 |
7
제 1 항에 있어서, 상기 방법이 게스트 운영체제가 실행 중인 어플리케이션이 사용하는 물리 메모리 페이지 중 일부를 스왑아웃하기 위해서 하이퍼 콜로 하이퍼바이저에게 요청하는 단계;상기 요청에 대응해서 하이퍼바이저가 해당되는 물리 메모리 페이지를 백업 한 뒤 초기화하여 게스트 운영체제로 실행 컨텍스트를 넘겨 주는 단계; 및 운영체제가 스왑아웃 연산을 완료하는 단계를 포함하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
8 |
8
제 7 항에 있어서, 상기 방법이 어플리케이션이 스왑아웃된 메모리 페이지에 접근하여 페이지 폴트가 발생한 경우, 게스트 운영체제가 하이퍼바이저에게 하이퍼 콜을 통해서 스왑인 연산을 수행하기 위해 백업되었던 물리 메모리 페이지를 복구하도록 요청하는 단계; 하이퍼바이저가 해당 페이지를 복구한 뒤 게스트 운영체제로 실행 컨텍스트를 넘겨주는 단계; 및 페이지 폴트 처리를 완료하는 단계를 포함하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
9 |
9
제 1 항에 있어서,게스트 운영체제가 사용하는 메모리 영역 중에서 실제 사용하는 영역을 제외한 직접 매핑 영역에 대한 페이지 테이블의 접근 권한을 제거하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
10 |
10
제 1 항에 있어서,하이퍼바이저가 게스트 운영체제와 어플리케이션에 할당된 물리 메모리 페이지를 구분하여 관리하고, 게스트 운영체제가 자신의 가상 물리 메모리 페이지에서 새로운 물리 메모리 페이지에 대한 매핑을 요청하는 경우, 하이퍼바이저가 이를 검사하여 어플리케이션에 이미 할당된 물리 메모리 페이지인 경우에 매핑을 차단하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
11 |
11
제 1 항에 있어서, 상기 방법이 게스트 운영체제에서 어플리케이션으로 실행 컨텍스트가 되돌아 가는 경우, 하이퍼바이저가 어플리케이션의 가상 메모리 페이지의 접근 권한을 복구시켜 주는 단계를 포함하는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
12 |
12
제 11 항에 있어서,시스템 콜의 수행을 마치고 어플리케이션의 실행 컨텍스트로 되돌아 가는 경우, 시스템 콜 버퍼에 해당하는 메모리 페이지 중 제5항의 과정 중에 백업되었던 버퍼 영역을 제외한 나머지 공간의 데이터를 복구시켜 주는 것을 특징으로 하는 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법
|
13 |
13
하이퍼바이저가 하나 이상의 가상 머신을 수행하고 가상 머신은 하나 이상의 어플리케이션을 실행하며, 게스트 운영체제가 어플리케이션이 요청하는 시스템 콜이나 하드웨어 인터럽트 실행을 처리하고 메모리에 대한 할당, 회수, 복사를 담당하는 컴퓨터 시스템으로서, 상기 하이퍼바이저는 사용자 어플리케이션이 실행되는 도중에 게스트 운영체제로 실행 컨텍스트가 이동하는 경우에 페이지 테이블을 수정하여 어플리케이션이 스스로 외부에 공개하지 않은 모든 물리 페이지에 대한 매핑을 차단한 후 게스트 운영체제로 실행 컨텍스트를 넘겨 주는 메모리 접근 제어 수단을 포함하는 컴퓨터 시스템
|
14 |
14
제1항에 기재된 하이퍼바이저를 활용한 사용자 어플리케이션 메모리 보호방법을 실행하기 위한 프로그램을 저장한 기록매체로서, 상기 기록매체는 실행 중인 어플리케이션에서 게스트 운영체제로 실행 컨텍스트가 이동하는 동작;실행 중인 어플리케이션에서 게스트 운영체제로 실행 컨텍스트가 이동하여, 하이퍼바이저를 활용해서 게스트 운영체제가 실행 중일 때는, 하이퍼바이저가 해당 어플리케이션의 모든 가상 메모리 영역의 페이지 테이블을 수정하여 접근 권한을 백업하고 제거함으로써, 어플리케이션의 메모리 영역에 접근할 수 없도록 차단하는 동작; 및 게스트 운영체제에서 어플리케이션으로 실행 컨텍스트로 이동하는 동작을 수행하게 하는 명령어들을 포함하는 컴퓨터 판독가능한 기록매체
|