KR100435783B1 - 운영 체계에서 사용자 메모리 유효성 검증 방법 - Google Patents

운영 체계에서 사용자 메모리 유효성 검증 방법 Download PDF

Info

Publication number
KR100435783B1
KR100435783B1 KR10-2000-0044184A KR20000044184A KR100435783B1 KR 100435783 B1 KR100435783 B1 KR 100435783B1 KR 20000044184 A KR20000044184 A KR 20000044184A KR 100435783 B1 KR100435783 B1 KR 100435783B1
Authority
KR
South Korea
Prior art keywords
user
function
memory
safeguard
kernel
Prior art date
Application number
KR10-2000-0044184A
Other languages
English (en)
Other versions
KR20020010753A (ko
Inventor
주철민
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Priority to KR10-2000-0044184A priority Critical patent/KR100435783B1/ko
Priority to US09/917,723 priority patent/US6944792B2/en
Publication of KR20020010753A publication Critical patent/KR20020010753A/ko
Application granted granted Critical
Publication of KR100435783B1 publication Critical patent/KR100435783B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 간단한 메모리 접근만으로 사용자 메모리의 유효성을 검증할 수 있도록 하는 운영 체계에서 사용자 메모리 유효성 검증 방법에 관한 것이다.
종래의 사용자 메모리 유효성 검증 방법에서는 메모리 오류가 발생하거나, 속도가 느려지게 되는 문제점이 있다. 그리고, 메모리 오류가 발생하여 커널에 오류가 발생하게 되면, 운영 체계는 수행을 중단하고 돌발 상태(panic)에 빠지게 되는 문제점이 있다.
본 발명은 사용자 버퍼 영역에 차례대로 접근(read/write)을 시도하여 해당 사용자 버퍼가 유효한 지를 판단함으로써, 신속하게 사용자 버퍼의 유효성을 검증할 수 있게 된다. 그리고, 사용자 프로세스로부터 건네받은 사용자 버퍼의 유효성을 검증하는 경우에 특정 코드 영역에서 장해가 발생하게 되면, 해당 장해를 에러로 변경하여 리턴하게 함으로써, 커널에서 발생하는 장해에 대한 처리가 가능하게 된다.

Description

운영 체계에서 사용자 메모리 유효성 검증 방법{Method for user memory effectiveness verification in operating system}
본 발명은 운영 체계에서 사용자 메모리 유효성 검증 방법에 관한 것으로서, 특히 간단한 메모리 접근만으로 사용자 메모리의 유효성을 검증할 수 있도록 하는 운영 체계에서 사용자 메모리 유효성 검증 방법에 관한 것이다.
일반적으로 통신 시스템의 운영 체계(Operating System)는 다양한 기능의 소프트웨어들을 효과적으로 관리하며 수행시킬 수 있는 다양한 고급 기능을 제공하고 있는 데, 이러한 운영 체계 내에는 디스크, 프린터, 단말기, 통신 장치 등의 시스템 자원들을 실시간으로 다중 관리하는 하나의 커널(Kernel)이 존재하며, 해당 커널을 통해 각 응용 프로그램에서 생성된 사용자 프로세스에 대한 서비스를 수행한다.
여기서, 해당 사용자 프로세스는 기본적으로 텍스트(text), 데이터, 힙(heap), 스택(stack)으로 그 구성이 대별되며, 운영 체계의 커널 서비스를 받기 위해 시스템 호출(system call)을 수행한다.
전술한 바와 같이, 사용자 프로세스가 운영 체계의 커널에 서비스를 요구하는 경우에는 도 1에 도시하는 바와 같이, 대부분의 사용자 영역의 버퍼를 커널에 넘기게 되는 데, 사용자 프로세스의 오류로 인하여 커널에서 치명적인 메모리 오류가 발생하는 것을 방지하기 위해 커널은 사용자 프로세스가 넘겨준 버퍼의 주소가 유효한 주소인 지를 확인하게 된다.
전술한 바와 같이, 사용자 버퍼 영역의 유효성을 검증하기 위해 종래에는 세 가지 방법으로 사용자 버퍼 영역의 유효성을 검증하는 데, 첫 번째는 사용자 프로세스가 넘겨준 사용 가능한 버퍼 영역의 주소 값과 크기를 비교하는 버퍼 영역 범위 확인 방법이고, 두 번째는 매핑(mapping)된 영역의 테이블을 단계별로 찾아가며 검색하여 그 유효성을 검증하는 MMU(Memory Management Unit) 테이블 검색 방법이고, 세 번째는 커널이 사용자 프로세스에게 메모리를 할당할 때 그 영역에 대한 정보를 저장하고 있으므로 이를 사용자 버퍼의 주소와 비교하여 검색하는 메모리 할당 테이블 검색 방법이다.
전술한 두 번째 방법에서 MMU 테이블이 여러 페이지에 걸져 있는 경우에는각각의 페이지에 대하여 검색을 하여야 한다.
이상에서 설명한 바와 같은, 종래의 사용자 버퍼 영역의 유효성 검증 방법에서 첫 번째 방법은, 속도는 빠르나 모든 사용자 프로세스의 메모리 영역이 유효한 것이 아님으로 메모리 오류가 발생할 수 있는 문제점이 있다.
그리고, 두 번째 방법은, MMU 테이블이 트리 형태로 구성된 경우에는 가장 속도가 빠르고 우수하나, MMU 테이블의 구조가 해시(hash)를 사용하는 경우에는 MMU의 구조에 따라 구조가 느려지게 되는 문제점이 있다.
그리고, 세 번째 방법은, 대부분의 테이블이 링크된 리스트로 구성되어 그 속도가 느려지게 되는 문제점이 있다.
그리고, 메모리 오류가 발생하여 커널에 오류가 발생하게 되면, 운영 체계는 수행을 중단하고 돌발 상태(panic)에 빠지게 되는 문제점이 있다.
본 발명은 전술한 문제점을 해결하기 위해 안출된 것으로서, 간단한 메모리 접근만으로 사용자 메모리의 유효성을 검증할 수 있도록 하는 운영 체계에서 사용자 메모리 유효성 검증 방법을 제공함에 그 목적이 있다.
본 발명의 다른 목적은, 사용자 프로세스로부터 건네받은 사용자 버퍼의 유효성을 검증하는 경우에 특정 코드 영역에서 장해가 발생하게 되면, 해당 장해를 에러로 변경하여 리턴하게 함으로써, 커널에서 발생하는 장해에 대한 처리를 가능하게 하는 데 있다.
도 1은 일반적으로 사용자 프로세스가 커널에 서비스를 요구하는 수행도.
도 2는 본 발명에 따른 운영 체계에서 사용자 메모리 유효성 검증 방법을 설명하기 위한 플로우차트.
전술한 목적을 달성하기 위한 본 발명의 운영 체계에서 사용자 메모리 유효성 검증 방법은, 사용자 프로세스가 커널의 서비스를 받기 위해 시스템 호출(system call)을 수행하여 사용자 메모리의 유효성을 검증하는 경우에 특정 코드 영역에 위치한 함수에서 발생하는 시스템 오류에 대한 제어를 수행하기 위해 특정 코드 영역에 위치한 함수를 세이프가드로 선언하는 과정과; 상기 세이프가드 영역에 위치한 함수 중에서 사용자 버퍼의 유효성을 검증하는 함수를 호출하여 상기 사용자 메모리가 유효한 지를 판단하는 사용자 메모리 유효성 판단 과정과; 상기 판단결과 상기 사용자 메모리가 유효하지 않은 경우에는 상기 함수가 세이프가드 영역에 위치한 함수인 지를 확인하여 상기 함수가 세이프가드 영역에 위치한 함수인 경우에는 세이프가드 영역의 고유 식별자를 확인하고, 상기 세이프가드 영역에 등록된 함수가 있는 지를 판단하는 과정과; 상기 판단결과 상기 세이프가드 영역에 등록된 함수가 있는 경우에는 상기 함수가 코드인 지를 판단하는 과정과; 상기 판단결과 상기 함수가 코드인 경우에는 기본 코드에 의거하여 상기 세이프가드 영역에서 발생한 장해를 에러로 변경한 후 에러로 리턴하는 과정을 포함하여 이루어진다.
여기서, 상기 판단결과 상기 사용자 메모리가 유효한 경우에는 석세스 리턴한 후 상기 특정 코드 영역에 위치한 함수를 세이프가드 상태에서 해제시키는 과정을 더 포함하여 이루어진다.
그리고, 상기 판단결과 상기 함수가 코드가 아닌 경우에는 장해 발생시 수행되는 함수를 수행시키는 과정을 더 포함하여 이루어진다.
그리고, 상기 사용자 메모리 유효성 판단 과정은, 상기 호출한 함수에 따라 사용자 메모리의 주소와 길이를 이용하여 상기 사용자 메모리가 속한 페이지를 검출하는 단계와; 상기 검출된 페이지 주소 영역에 차례대로 접근(read/write)을 시도하여 장해가 발생되는 지를 판단하는 단계와; 상기 판단결과 장해가 발생되는 경우에는 상기 사용자 메모리를 유효하지 않다고 판정하고, 장해가 발생되지 않는 경우에는 상기 사용자 메모리를 유효하다고 판정하는 단계를 포함하여 이루어진다.
이하에서는 첨부한 도면을 참조하여 본 발명의 바람직한 실시예에 따른 운영 체계에서 사용자 메모리 유효성 검증 방법에 대해서 상세하게 설명한다.
도 2는 본 발명에 따른 운영 체계의 사용자 메모리 유효성 검증 방법을 설명하기 위한 플로우챠트이다.
먼저, 사용자 프로세스가 커널의 서비스를 받기 위해 시스템 호출(system call)을 수행하고, 사용자 버퍼가 있는 지를 확인한다(S10, S12). 상기한 과정 S12에서 사용자 버퍼가 있는 지를 확인하는 것은 모든 사용자 프로세스가 메모리 영역을 공유하지 않기 때문이다.
상기한 과정 S12의 확인 결과 사용자 버퍼가 있는 경우에 사용자 프로세스는 사용자 버퍼를 커널에 넘기게 되고(S14), 사용자 프로세스로부터 사용자 버퍼를 넘겨받은 커널은 사용자 버퍼의 유효성을 검증하기 위해 특정 코드 영역에 위치한 함수를 세이프가드(SafeGuard)로 선언한다(S16).
상기한 과정 S16에서 특정 코드 영역에 위치한 함수를 세이프가드로 선언하면, 세이프가드로 선언된 특정 코드 영역에 위치한 함수에서 발생하는 시스템 오류에 대한 제어가 가능하게 된다. 따라서, 세이프가드로 선언된 특정 코드 영역에 위치한 함수에서 발생하는 장해(fault)는 커널 영역에서 발생하였다 할지라도 무시하고 해당 사용자 프로세스에 그 값을 알려 주거나, 해당 사용자 프로세스만을 비활성화시키면 된다.
전술한 바와 같이, 특정 코드 영역에 위치한 함수를 세이프가드로 선언한 후, 커널은 세이프가드로 선언된 특정 코드 영역에 위치한 함수 중에서 사용자 버퍼의 유효성을 검증하는 함수인 사용자 버퍼 주소 체크 함수를 호출한다(S18).
그리고, 상기한 과정 S18에서 호출한 사용자 버퍼 주소 체크 함수에 따라 사용자 버퍼 주소의 주소와 길이를 이용하여 사용자 버퍼가 속한 페이지를 검출하고(S20), 검출된 페이지 주소 영역에 차례대로 접근(read/write)을 시도하여 해당 페이지가 유효한 지를 판단한다(S22). 상기한 과정 S22에서 접근을 시도한 주소 영역이 유효한 영역이 아니면 사용자 버퍼 주소 체크 함수에 장해(fault)가 발생하게 되므로, 사용자 버퍼 주소 체크 함수에 장해가 발생하는 경우는 해당 페이지가 유효하지 않다고 판정한다.
상기한 과정 S22의 판단결과 해당 페이지가 유효한 경우에는 석세스 리턴한 후 상기한 과정 S16에서 세이프가드 상태로 선언했던 특정 코드 영역에 위치한 함수를 세이프가드 상태에서 해제시킨다(S24, S26).
한편, 상기한 과정 S22의 판단결과 해당 페이지가 유효하지 않은 경우, 즉, 세이프가드 영역에 위치한 사용자 버퍼 주소 체크 함수에서 장해가 발생한 경우에는 세이프가드 상태의 함수에서 발생하는 예외(exception)를 처리하기 위해 예외 처리부를 호출하고(S28), 장해가 발생한 사용자 버퍼 주소 체크 함수가 세이프가드 영역에 위치한 함수인 지를 판단한다(S30). 상기한 과정 S30의 판단결과 장해가 발생한 사용자 버퍼 주소 체크 함수가 세이프가드 영역에 위치한 함수인 경우에는 세이프가드 영역의 고유 식별자인 세이프가드 식별자를 확인하고(S34), 세이프가드 영역에 등록된 함수가 있는 지를 판단한다(S36).
한편, 상기한 과정 S30의 판단결과 장해가 발생한 사용자 버퍼 주소 체크 함수가 세이프가드 영역에 위치한 함수가 아닌 경우에 운영 체계는 수행을 중단하고 돌발 상태에 빠지게 된다(S32).
상기한 과정 S36의 판단결과 세이프가드 영역에 등록된 함수가 있는 경우에는 해당 함수가 코드인 지를 판단한다(S40). 상기한 과정 S40의 판단결과 해당 함수가 코드가 아닌 경우에는 장해 발생시 수행되는 해당 함수를 수행시키고(S42), 해당 함수가 코드인 경우에는 기본 코드에 의거하여 세이프가드 영역의 함수에서 발생한 장해를 에러로 변경한 후 에러로 리턴하여 예외 처리 수행을 종료한다(S44, S46).
예를 들어, 세이프가드 영역에 등록된 함수 중에서 사용자 버퍼 주소의 유효성을 확인하는 사용자 버퍼 주소 체크 함수에서 장해가 발생하게 되면 에러로 리턴하면 된다.
따라서, 커널에서 장해가 발생했다 하더라도 세이프가드된 영역에서 장해가 발생한 경우에는 에러로 변경되어 리턴되므로, 커널에서 발생하는 장해에 대한 처리가 가능하게 된다.
한편, 상기한 과정 S36의 판단결과 세이프가드 영역에 등록된 함수가 없는 경우에는 해당 사용자 프로세스를 비활성화시킨다(S38).
본 발명의 운영 체계에서 사용자 메모리 유효성 검증 방법은 전술한 실시예에 국한되지 않고 본 발명의 기술 사상이 허용하는 범위 내에서 다양하게 변형하여 실시할 수 있다.
이상에서 설명한 바와 같은 본 발명의 운영 체계에서 사용자 메모리 유효성 검증 방법에 따르면, 사용자 버퍼 영역에 차례대로 접근(read/write)을 시도하여 해당 사용자 버퍼가 유효한 지를 판단함으로써, 신속하게 사용자 버퍼의 유효성을 검증할 수 있는 효과가 있다.
그리고, 사용자 프로세스로부터 건네받은 사용자 버퍼의 유효성을 검증하는 경우에 특정 코드 영역에서 장해가 발생하게 되면, 해당 장해를 에러로 변경하여 리턴하게 함으로써, 커널에서 발생하는 장해에 대한 처리가 가능하게 되는 효과가 있다.

Claims (4)

  1. 사용자 프로세스가 커널 서비스를 제공받기 위해 시스템 호출(system call)을 수행한 후, 사용자 버퍼 존재 여부를 확인하여 사용자 버퍼가 존재하면, 상기 사용자 버퍼를 커널에 넘기는 과정과;
    상기 커널에서 상기 사용자 버퍼의 유효성을 검증하기 위해 특정 코드 영역에 위치한 함수를 세이프가드로 선언하고, 상기 세이프가드로 선언된 함수 중에서 상기 사용자 버퍼의 유효성을 검증하는 사용자 버퍼 주소 체크 함수를 호출하는 과정과;
    상기 사용자 버퍼 주소 체크 함수를 이용하여 검출된 페이지 주소 영역에 접근을 시도하여 상기 사용자 버퍼 주소 체크 함수에서 발생하는 장해 유무로 상기 사용자 메모리가 유효한 지를 판단하는 사용자 메모리 유효성 판단 과정과;
    상기 사용자 메모리의 유효성 판단결과 사용자 메모리가 유효하지 않은 경우에는 상기 커널에서 예외 처리부를 호출하여, 상기 사용자 버퍼 주소 체크 함수가 세이프가드 영역에 위치한 함수인 지를 확인하는 과정과;
    상기 확인결과 상기 사용자 버퍼 주소 체크 함수가 세이프가드 영역에 위치한 함수인 경우에는 세이프가드 영역의 고유 식별자를 확인하고, 상기 세이프가드 영역에 등록된 함수가 있는 지를 판단하는 과정과;
    상기 판단결과 상기 세이프가드 영역에 등록된 함수가 있는 경우에는 상기 함수가 코드인 지를 판단하는 과정과;
    상기 판단결과 상기 함수가 코드인 경우에는 기본 코드에 의거하여 상기 세이프가드 영역에서 발생한 장해를 에러로 변경한 후 에러로 리턴하는 과정을 포함하여 이루어지는 운영 체계에서 사용자 메모리 유효성 검증 방법.
  2. 제 1항에 있어서, 상기 사용자 메모리의 유효성 판단결과 상기 사용자 메모리가 유효한 경우에는 석세스 리턴한 후 상기 커널에서 상기 특정 코드 영역에 위치한 함수를 세이프가드 상태에서 해제시키는 과정을 더 포함하여 이루어지는 것을 특징으로 하는 운영 체계에서 사용자 메모리 유효성 검증 방법.
  3. 제 1항에 있어서, 상기 판단결과 상기 함수가 코드가 아닌 경우에는 장해 발생시 수행되는 함수를 수행시키는 과정을 더 포함하여 이루어지는 것을 특징으로 하는 운영 체계에서 사용자 메모리 유효성 검증 방법.
  4. 제 1항에 있어서, 상기 사용자 메모리 유효성 판단 과정은,
    상기 커널에서 상기 사용자 버퍼 주소 체크 함수를 이용하여 사용자 메모리의 주소와 길이로 상기 사용자 메모리가 속한 페이지를 검출하는 단계와;
    상기 검출된 페이지 주소 영역에 차례대로 접근(read/write)을 시도하여 상기 사용자 버퍼 주소 체크 함수에 장해가 발생되는 지를 판단하는 단계와;
    상기 판단결과 상기 사용자 버퍼 주소 체크 함수에 장해가 발생되는 경우에는 상기 사용자 메모리를 유효하지 않다고 판정하고, 상기 사용자 버퍼 주소 체크 함수에 장해가 발생되지 않는 경우에는 상기 사용자 메모리를 유효하다고 판정하는 단계를 포함하여 이루어지는 것을 특징으로 하는 운영 체계에서 사용자 메모리 유효성 검증 방법.
KR10-2000-0044184A 2000-07-31 2000-07-31 운영 체계에서 사용자 메모리 유효성 검증 방법 KR100435783B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2000-0044184A KR100435783B1 (ko) 2000-07-31 2000-07-31 운영 체계에서 사용자 메모리 유효성 검증 방법
US09/917,723 US6944792B2 (en) 2000-07-31 2001-07-31 Method for verifying user memory validity in operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0044184A KR100435783B1 (ko) 2000-07-31 2000-07-31 운영 체계에서 사용자 메모리 유효성 검증 방법

Publications (2)

Publication Number Publication Date
KR20020010753A KR20020010753A (ko) 2002-02-06
KR100435783B1 true KR100435783B1 (ko) 2004-06-12

Family

ID=19680905

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0044184A KR100435783B1 (ko) 2000-07-31 2000-07-31 운영 체계에서 사용자 메모리 유효성 검증 방법

Country Status (2)

Country Link
US (1) US6944792B2 (ko)
KR (1) KR100435783B1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0129596D0 (en) * 2001-12-11 2002-01-30 Nokia Corp Risk detection
US7497827B2 (en) * 2004-07-13 2009-03-03 Dexcom, Inc. Transcutaneous analyte sensor
US7758954B2 (en) * 2005-08-18 2010-07-20 James Hardie Technology Limited Coated substrate having one or more cross-linked interfacial zones
KR100703806B1 (ko) 2006-02-16 2007-04-09 삼성전자주식회사 비휘발성 메모리, 이를 위한 데이터 유효성을 판단하는장치 및 방법
DE102010006572A1 (de) * 2010-02-02 2011-08-04 Giesecke & Devrient GmbH, 81677 Verfahren zum Ausführen einer Anwendung
CN106574922B (zh) * 2014-05-05 2020-06-05 美国血液技术公司 用于检测纤维蛋白溶解和纤溶亢进的方法学和试剂
CN108415840A (zh) * 2018-03-14 2018-08-17 百度在线网络技术(北京)有限公司 修复函数缺陷的方法、装置及服务器
US11403247B2 (en) * 2019-09-10 2022-08-02 GigaIO Networks, Inc. Methods and apparatus for network interface fabric send/receive operations

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63206834A (ja) * 1987-02-24 1988-08-26 Pfu Ltd 命令制御におけるエラ−検出処理方式
JPH06231050A (ja) * 1993-02-04 1994-08-19 Canon Inc メモリ装置
US5613063A (en) * 1994-07-01 1997-03-18 Digital Equipment Corporation Method and apparatus for checking validity of memory operations
US5761729A (en) * 1996-07-17 1998-06-02 Digital Equipment Corporation Validation checking of shared memory accesses
KR19990076180A (ko) * 1998-03-28 1999-10-15 윤종용 리스크 기반의 내장된 시스템에서 유효하지 않은 주소공간접근에 의한 시스템 장애 조기 발견 방법
KR19990080079A (ko) * 1998-04-13 1999-11-05 유기범 컴퓨터 시스템의 어드레스 오류 검출 장치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4903194A (en) * 1987-11-12 1990-02-20 International Business Machines Corporation Storage addressing error detection circuitry
US5586253A (en) * 1994-12-15 1996-12-17 Stratus Computer Method and apparatus for validating I/O addresses in a fault-tolerant computer system
US6047388A (en) * 1997-04-09 2000-04-04 International Business Machines Corporation Method and apparatus for processing an invalid address request
US6282657B1 (en) * 1997-09-16 2001-08-28 Safenet, Inc. Kernel mode protection
US6098190A (en) * 1998-08-04 2000-08-01 Hewlett-Packard Co. Method and apparatus for use of a host address to validate accessed data
US6457067B1 (en) * 1998-12-18 2002-09-24 Unisys Corporation System and method for detecting faults in storage device addressing logic
US6738882B1 (en) * 1999-11-30 2004-05-18 Hewlett-Packard Development Company, L.P. Concurrent multi-processor memory testing beyond 32-bit addresses

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63206834A (ja) * 1987-02-24 1988-08-26 Pfu Ltd 命令制御におけるエラ−検出処理方式
JPH06231050A (ja) * 1993-02-04 1994-08-19 Canon Inc メモリ装置
US5613063A (en) * 1994-07-01 1997-03-18 Digital Equipment Corporation Method and apparatus for checking validity of memory operations
US5761729A (en) * 1996-07-17 1998-06-02 Digital Equipment Corporation Validation checking of shared memory accesses
KR19990076180A (ko) * 1998-03-28 1999-10-15 윤종용 리스크 기반의 내장된 시스템에서 유효하지 않은 주소공간접근에 의한 시스템 장애 조기 발견 방법
KR19990080079A (ko) * 1998-04-13 1999-11-05 유기범 컴퓨터 시스템의 어드레스 오류 검출 장치

Also Published As

Publication number Publication date
US6944792B2 (en) 2005-09-13
US20020016940A1 (en) 2002-02-07
KR20020010753A (ko) 2002-02-06

Similar Documents

Publication Publication Date Title
RU2439665C2 (ru) Компиляция исполняемого кода в менее доверяемом адресном пространстве
US7069389B2 (en) Lazy flushing of translation lookaside buffers
US8516589B2 (en) Apparatus and method for preventing virus code execution
CN100353278C (zh) 用于类型安全语言环境的方法、处理器和系统
US8909898B2 (en) Copy equivalent protection using secure page flipping for software components within an execution environment
EP2324424B1 (en) Apparatus and method for handling page protection faults in a computing system
US7631249B2 (en) Dynamically determining a buffer-stack overrun
RU2377634C2 (ru) Программный интерфейс для лицензирования
US20030014667A1 (en) Buffer overflow attack detection and suppression
JPH0738160B2 (ja) 機密保護方法
CN110442379A (zh) 保护有条件的推测指令执行
KR100435783B1 (ko) 운영 체계에서 사용자 메모리 유효성 검증 방법
KR102324950B1 (ko) 취약점을 효율적으로 탐지할 수 있는 아키텍처로 구성된 힙 영역 메모리 관리 방법 및 그 장치
KR100791815B1 (ko) 컴퓨터 시스템 및 컴퓨터 시스템에서 인스트럭션을 실행하는 방법
US8732442B2 (en) Method and system for hardware-based security of object references
US8321668B2 (en) Control of data access by dynamically verifying legal references
CN111625784B (zh) 一种应用的反调试方法、相关装置及存储介质
Richard et al. Inter‐JVM Sharing
JP2533931B2 (ja) 動的割当て領域のデ―タ内容保護方式
CN114638004B (zh) 一种数据保护方法、装置及存储介质
CN116107759A (zh) 内存空间的优化方法、内核符号访问方法、装置
Lymn Verified Exec-Extending the Security Perimeter
CN118410500A (zh) 权限管控方法、电子设备及存储介质
CN118246007A (zh) 一种基于内存标记扩展的eBPF程序隔离方法
CN112580023A (zh) 影子栈管理方法及装置、介质、设备

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130516

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140520

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee