KR101535792B1 - 운영체제 구성 장치 및 방법 - Google Patents

운영체제 구성 장치 및 방법 Download PDF

Info

Publication number
KR101535792B1
KR101535792B1 KR1020130084601A KR20130084601A KR101535792B1 KR 101535792 B1 KR101535792 B1 KR 101535792B1 KR 1020130084601 A KR1020130084601 A KR 1020130084601A KR 20130084601 A KR20130084601 A KR 20130084601A KR 101535792 B1 KR101535792 B1 KR 101535792B1
Authority
KR
South Korea
Prior art keywords
application program
system resources
information
operating system
access
Prior art date
Application number
KR1020130084601A
Other languages
English (en)
Other versions
KR20150010095A (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 KR1020130084601A priority Critical patent/KR101535792B1/ko
Priority to EP14175759.1A priority patent/EP2827246A1/en
Priority to JP2014140016A priority patent/JP5976046B2/ja
Priority to US14/335,798 priority patent/US9684525B2/en
Priority to CN201410342507.5A priority patent/CN104298519B/zh
Publication of KR20150010095A publication Critical patent/KR20150010095A/ko
Application granted granted Critical
Publication of KR101535792B1 publication Critical patent/KR101535792B1/ko

Links

Images

Classifications

    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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/22Microcontrol or microprogram arrangements
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • 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/468Specific access rights for resources, e.g. using capability register

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

운영체제 구성 장치 및 방법이 개시된다. 운영체제 구성 장치는 운영체제 내의 제 1영역에서 운영체제와 연동되는 시스템 자원에 대한 제어 권한을 부여함으로써 시스템 자원을 관리하는 시스템 자원 관리부 및 제 1영역과 독립된 제 2영역에서 시스템 자원 관리부에 의해 관리되는 시스템 자원을 활용하여 응용 프로그램을 실행시키는 시스템 운영부를 포함한다. 따라서, 운영체제의 성능을 향상시키는 동시에 높은 보안성을 지원할 수 있으므로 운영체제에 대한 신뢰성을 향상시킬 수 있다.

Description

운영체제 구성 장치 및 방법{APPARATUS FOR CONFIGURING OPERATING SYSTEM AND METHOD THEREOF}
본 발명은 운영체제에 관한 것으로, 더욱 상세하게는 운영체제의 영역을 분리하여 운영체제의 신뢰성을 보장할 수 있는 운영체제 구성 장치 및 방법에 관한 것이다.
운영체제(Operating System; OS)는 메모리, 프로세스, 입출력 장치 및 네트워크와 같은 하드웨어 및 시스템 자원을 효율적으로 제어하고 관리함으로써 정보 처리 장치를 이용하는 사용자에게 프로그램을 편리하게 사용할 수 있는 환경을 제공하는 시스템 소프트웨어이다.
운영체제는 커널(kernel)로 구성되어 하드웨어 또는 시스템 자원을 효율적으로 관리하기 기능과 시스템 자원을 기반으로 응용 프로그램을 효율적으로 운영하는 기능을 수행할 수 있다.
여기서, 일반적으로 커널은 모듈의 구성 방식에 따라 모놀리식 커널 또는 마이크로 커널로 구분될 수 있다.
모놀리식 커널(monolithic kernel) 방식은 운영체제의 모든 기능을 하나의 모듈에 구현하여 동일한 메모리 공간 내에서 동작하도록 운영체제를 구성하는 방식이다.
도 1은 종래의 모놀리식 커널 방식으로 구현된 운영체제를 설명하는 예시도이다.
도 1을 참조하면, 모놀리식 커널 방식을 이용하는 운영체제(100)는 자원의 할당을 관리하는 자원 할당 관리자(110), 자원의 해제를 관리하는 자원 해제 관리자(120) 및 자원의 접근을 관리하는 자원 접근 관리자(130)를 하나의 모듈에 구성하여 시스템 자원(140)을 관리할 수 있다.
따라서, 응용 프로그램에서 요구하는 시스템 자원(140)에 대한 관리 및 시스템 자원(140)을 사용하는 응용 프로그램의 운영이 동일한 주소 공간 내에서 수행될 수 있다.
이러한, 운영체제(100)의 구성은 운영체제(100)의 성능을 향상시킨다는 점에서 현재 운영체제를 구성하는데 선호되는 추세이다.
그러나, 시스템 자원(140)을 관리하는 기능과 응용 프로그램을 운영하는 기능 모두 동일한 주소 공간 내에 구현되기 때문에 운영체제의 일부분이 훼손되면 전체 시스템에 문제가 발생할 수 있다는 점에서 보안에 취약하다는 단점이 있다.
그리하여, 운영체제의 최소한의 기능만을 커널에 구현하고, 나머지 운영체제의 기능들은 커널 외부의 사용자 모드에서 실행되도록 커널을 소형화함으로써 운영체제의 보안성을 향상시키는 마이크로 커널(micro kernel) 방식이 제안되었다.
도 2는 종래의 마이크로 커널 방식으로 구현된 운영체제를 설명하는 예시도이다.
도 2를 참조하면, 마이크로 커널 방식을 이용하는 운영체제(100)는 운영체제(100)의 기능별로 모듈을 분리하여 구성되므로 각각의 모듈별로 독립적인 주소 공간을 제공받을 수 있다.
예를 들어, 기능#3 모듈과 연동된 자원(141)과 기능#4 모듈과 연동된 자원(143)은 독립적인 주소 공간을 제공받을 수 있다.
그리하여, 응용 프로그램이 시스템 자원(140)에 접근하기 위해서는 파일 시스템 모듈에 요청을 보내고 다시 파일 시스템 모듈은 저장 장치 구동기 모듈에 요청을 하는 여러 단계의 모듈 간 통신이 요구될 수 있다.
이러한 운영체제(100)의 구성은 운영체제의 기능에 따라 독립적인 주소 공간을 제공하기 때문에 운영체제의 특정 기능이 구현된 모듈에 문제가 발생하여도 전체 시스템에는 영향을 미치지 않다는 점에서 시스템 보안성이 높다.
다만, 운영체제의 각 기능이 독립적으로 구현되어 있기 때문에 여러 단계의 모듈 간 통신이 요구되어 운영체제의 성능의 저하가 발생할 수 있다는 점에서 문제가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 기존의 모놀리식 커널 방식 및 마이크로 커널 방식을 접목하여 운영체제를 구성함으로써 운영체제의 성능을 향상시키는 동시에 높은 보안성을 지원할 수 있는 운영체제 구성 장치를 제공하는 데 있다.
또한, 본 발명의 다른 목적은, 시스템 자원을 관리하는 기능과 응용 프로그램을 운영하는 기능을 분리하여 운영체제에 구현함으로써 시스템 자원을 효율적으로 관리함과 동시에 운영체제에 대한 신뢰성을 향상시킬 수 있는 운영체제 구성 방법을 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른 운영체제 구성 장치는, 운영체제 내의 제 1 영역에서 운영체제와 연동되는 시스템 자원에 대한 제어 권한을 부여함으로써 시스템 자원을 관리하는 시스템 자원 관리부 및 제 1 영역과 독립된 제 2 영역에서 시스템 자원 관리부에 의해 관리되는 시스템 자원을 활용하여 응용 프로그램을 실행시키는 시스템 운영부를 포함한다.
여기서, 상기 제 1 영역과 상기 제 2 영역은, 모놀리식 커널(monolithic kernel)의 분리된 영역에 각각 구현되어 독립적인 기능을 수행할 수 있다.
여기서, 시스템 자원 관리부는, 응용 프로그램에서 요구하는 시스템 자원을 할당하고, 응용 프로그램의 식별 정보 및 응용 프로그램에 할당된 시스템 자원에 대한 정보를 생성하는 자원 할당 모듈을 포함할 수 있다.
여기서, 시스템 자원 관리부는, 응용 프로그램의 식별 정보 및 시스템 자원에 대한 정보를 제공받아 응용 프로그램 식별 정보에 상응하는 시스템 자원에 대한 정보를 매핑(mapping)함으로써 생성된 접근 제어 정보를 기록하는 접근 정보 DB를 포함할 수 있다.
여기서, 시스템 자원 관리부는, 응용 프로그램에서 시스템 자원에 대한 해제를 요구함에 따라 접근 제어 정보에 기반하여 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보를 삭제하는 자원 해제 모듈을 포함할 수 있다.
여기서, 시스템 자원 관리부는, 응용 프로그램에서 시스템 자원에 대한 접근이 요청됨에 따라 접근 제어 정보에 기반하여 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보의 기록 여부를 확인함으로써 시스템 자원에 대한 접근을 제어하는 자원 접근 모듈을 포함할 수 있다.
여기서, 시스템 자원 관리부는, 응용 프로그램을 구성하는 프로세스의 순서를 결정하는 스케줄링(scheduling)을 제공할 수 있다.
여기서, 시스템 운영부는, 응용 프로그램에서 접근 가능한 시스템 자원을 가상화하여 생성된 시스템 자원에 대한 접근 주소를 이용하여 응용 프로그램을 실행시킬 수 있다.
여기서, 시스템 자원은, 응용 프로그램의 실행에 이용되는 입출력 장치, 저장 장치 및 연산 장치 중 적어도 하나를 포함할 수 있다.
또한, 상기 다른 목적을 달성하기 위한 본 발명의 일 측면에 따른 운영체제 구성 방법은, 운영체제 내의 제 1 영역을 통해 운영체제와 연동되는 시스템 자원에 대한 제어 권한을 부여함으로써 시스템 자원을 관리하는 단계 및 제 1 영역과 독립된 제 2 영역을 통해 시스템 자원을 활용하여 응용 프로그램을 실행시키는 단계를 포함한다.
여기서, 시스템 자원을 관리하는 단계 및 응용 프로그램을 실행시키는 단계는 모놀리식 커널의 분리된 영역에서 수행될 수 있다.
상술한 바와 같은 본 발명의 실시예에 따른 운영체제 구성 장치 및 방법에 따르면, 기존의 모놀리식 커널 방식과 마이크로 커널 방식을 접목함으로써 운영체제의 성능을 향상시키는 동시에 높은 보안성을 지원할 수 있다.
또한, 운영체제의 시스템 자원을 관리하는 기능과 응용 프로그램을 운영하는 기능을 분리하여 구성하기 때문에 시스템 자원에 대한 무결성을 보장할 수 있으므로 운영체제에 대한 신뢰성을 향상시킬 수 있다.
도 1은 종래의 모놀리식 커널 방식으로 구현된 운영체제를 설명하는 예시도이다.
도 2는 종래의 마이크로 커널 방식으로 구현된 운영체제를 설명하는 예시도이다.
도 3은 본 발명의 일 실시예에 따른 운영체제 구성 장치를 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따른 운영체제 구성 장치의 동작을 설명하는 예시도이다.
도 5는 본 발명의 일 실시예에 따른 접근 제어 정보를 설명하는 예시도이다.
도 6은 본 발명의 일 실시예에 따른 운영체제 구성 방법을 설명하는 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 시스템 자원에 대한 응용 프로그램의 접근을 제어하는 것을 설명하는 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 발명의 일 실시예에서 운영체제 구성 장치 및 방법은, 사용자, 응용 프로그램, 운영체제 및 하드웨어로 구성되는 컴퓨터(computer) 스마트폰(smart phone), 태블릿 PC, 서버(server)와 같은 정보 처리 장치의 운영체제에서 구현될 수 있다.
여기서, 운영체제(Operating System; OS)는 응용 프로그램과 하드웨어 사이에서 응용 프로그램의 실행에 요구되는 입출력 장치, 네트워크 장치, 연산 장치 및 저장 장치와 같은 하드웨어 또는 시스템 자원을 효율적으로 관리하는 기능과, 시스템 자원을 기반으로 응용 프로그램을 효율적으로 운영하는 기능을 수행할 수 있으나 이에 한정되는 것은 아니다.
또한, 운영체제는 커널로 구성될 수 있으며 커널은 구성에 따라 모놀리식 커널(monolithic kernel)과 마이크로 커널(micro kernel)로 구분될 수 있다.
여기서, 모놀리식 커널 방식은 운영체제의 모든 기능을 동일한 주소 공간에 하나의 모듈로 구성함으로써 운영체제의 성능을 향상시킬 수 있으며, 마이크로 커널 방식은 운영체제의 기능 별로 모듈화하여 독립적인 주소 공간을 제공함으로써 운영체제의 보안 능력을 향상시킬 수 있다.
응용 프로그램은 운영체제에서 제공하는 사용자 인터페이스를 통해 정보 처리 장치를 사용하는 사용자의 특정한 요구를 수행할 수 있도록 작성된 애플리케이션(application)뿐만 아니라 운영체제에서 실행될 수 있는 모든 소프트웨어를 의미할 수 있다.
또한, 시스템 자원은 운영체제와 연동되어 응용 프로그램의 실행에 이용되는 입출력 장치, 저장 장치 및 연산 장치 중 적어도 하나의 하드웨어를 포함할 수 있다.
여기서, 입출력 장치는 운영체제에서 제공하는 사용자 인터페이스(User Interface)를 통해 응용 프로그램에 대한 실행 요구를 사용자로부터 입력받을 수 있는 마우스, 펜, 키보드, 터치스크린과, 응용 프로그램의 실행 과정 및 실행 결과를 사용자에게 제공할 수 있는 프린터, 모니터, 스피커와 같은 하드웨어 장치를 의미할 수 있으나 이에 한정되는 것은 아니다.
또한, 연산 장치는 응용 프로그램의 프로세스를 처리하는 CPU(Central Processing Units)와 GPU(Graphics Processing Units) 및 GPGPU(Gerneral-Purpose computing on GPU)를 포함할 수 있다.
저장 장치는 연산 장치 내에 내장되어 있는 버퍼(buffer), 캐쉬(cache)와 SRAM(Static Random Access Memory), DRAM(Dynamic Random Acess Memory), ROM(Read Only Memory) 및 플래시 메모리(Flash Memory)를 포함할 수 있으나 이에 한정되는 것은 아니다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 3은 본 발명의 일 실시예에 따른 운영체제 구성 장치를 나타내는 블록도이다.
도 3을 참조하면, 운영체제 구성 장치(300)는 시스템 자원 관리부(310) 및 시스템 운영부(360)를 포함하여 구성될 수 있다.
운영체제 구성 장치(300)는 정보 처리 장치를 구성하는 운영체제 내에 구현될 수 있으며, 시스템 자원을 관리하는 기능이 구현되는 영역과 응용 프로그램을 실행시키는 기능이 구현되는 영역이 분리될 수 있다.
여기서, 응용 프로그램은 운영체제에서 제공하는 사용자 인터페이스를 통해 정보 처리 장치를 사용하는 사용자의 특정한 요구를 수행할 수 있도록 작성된 애플리케이션(application)뿐만 아니라 운영체제에서 실행될 수 있는 모든 소프트웨어를 의미할 수 있으나 이에 한정되는 것은 아니다.
시스템 자원 관리부(310)는 운영체제 내의 제 1영역에 운영체제와 연동되는 시스템 자원을 관리할 수 있다.
또한, 시스템 운영부(360)는 운영체제의 제 1영역과 독립된 제 2영역에 시스템 자원 관리부에 의해 관리되는 시스템 자원을 활용하여 응용 프로그램을 실행시킬 수 있다.
여기서 제 1영역과 제 2영역은, 모놀리식 커널(monolithic kernel)의 분리된 영역에 구현되어 독립적인 기능을 수행할 수 있다.
구체적으로 성능이 우수한 모놀리식 커널(monolithic kernel)의 방식을 이용하여 운영체제를 구성하되, 시스템 자원을 관리하는 기능과 응용 프로그램을 실행시키는 기능을 제 1영역과 제 2영역에 분리하여 구현함으로써 운영체제의 기능 별로 모듈을 분리하는 마이크로 커널(micro kernel)의 방식을 접목할 수 있다.
이로써, 운영체제 구성 장치(300)는 모놀리식 커널 방식의 성능의 우수성과 마이크로 커널 방식의 시스템 보안성을 동시에 지원받을 수 있는 운영체제를 구현할 수 있다.
시스템 자원에 대한 제어 권한은 시스템 자원 관리부(310)에 부여되어 시스템 자원에 대한 접근을 제어할 수 있다.
시스템 자원 관리부(310)는 자원 할당 모듈(320), 자원 해제 모듈(330), 자원 접근 모듈(340) 및 접근 정보 DB(350)를 포함하여 구성될 수 있다.
자원 할당 모듈(320)은 응용 프로그램에서 요구하는 시스템 자원을 할당하고, 응용 프로그램의 식별 정보 및 응용 프로그램에 할당된 시스템 자원에 대한 정보를 생성할 수 있다.
이 때, 접근 정보 DB(350)는 응용 프로그램에서 요구하는 시스템 자원이 할당될 때 생성되는 응용 프로그램의 식별 정보와 시스템 자원에 대한 정보를 제공받아 응용 프로그램 식별 정보에 상응하는 시스템 자원에 대한 정보를 매핑(mapping)함으로써 생성되는 접근 제어 정보를 기록할 수 있다.
응용 프로그램에서 시스템 자원에 대한 해제를 요구하면 접근 제어 정보를 기반으로 자원 해제 모듈(330)을 통해 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보를 삭제할 수 있다.
여기서, 시스템 자원을 해제하는 것은 응용 프로그램에서 시스템 자원에 대한 사용이 완료되거나, 우선순위가 높은 다른 응용 프로그램을 실행하기 위해 운영체제에서 시스템 자원을 의도적으로 회수하는 과정을 의미할 수 있으나 이에 한정되는 것은 아니다.
자원 접근 모듈(340)은 응용 프로그램이 특정 시스템 자원에 대한 접근을 요청하면 접근 제어 정보에 기반하여 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보가 존재하는지를 확인함으로써 시스템 자원에 대한 접근을 제어할 수 있다.
예를 들어, 접근 제어 정보를 기반으로 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보가 존재하면 응용 프로그램에서 요구하는 시스템 자원으로의 접근을 허용할 수 있다.
또한, 시스템 자원 관리부(310)는 응용 프로그램의 실행을 위한 프로세스의 순서를 결정하는 스케줄링(scheduling)을 제공할 수 있다.
여기서, 스케줄링은 프로세스의 동작 순서 및 시스템 자원의 사용 순서를 적절하게 운영하여 멀티 프로그래밍이 실현될 수 있도록 시스템의 부하를 조절할 수 있는 운영체제의 자원 관리 기능을 의미할 수 있다.
즉, 시스템 자원 관리부(310)는 운영체제의 기능 중 시스템 자원에 대한 제어 권한을 기반으로 시스템 자원을 관리하거나 접근을 제어하는 기능을 구현할 수 있다.
여기서, 시스템 자원은 운영체제와 연동되어 응용 프로그램의 실행에 이용되는 입출력 장치, 저장 장치 및 연산 장치 중 적어도 하나를 포함할 수 있다.
또한, 장치 간, 프로세스 간 및 정보 처리 장치 간의 통신을 위한 네트워크 장치가 더 포함될 수 있다.
시스템 운영부(360)는 시스템 자원 관리부(310)에 구현된 자원 관리 기능을 제외한 운영체제의 전반적인 기능이 구현될 수 있다.
구체적으로, 시스템 운영부(360)는 응용 프로그램에서 접근이 허용된 시스템 자원을 가상화하여 시스템 자원에 대한 접근 주소를 생성함으로써 시스템 자원에 대한 응용 프로그램의 접근을 제어할 수 있도록 한다.
시스템 자원에 대한 접근 주소는 응용 프로그램에서 사용할 수 있도록 접근이 허용된 시스템 자원의 논리 주소(logical address)를 의미할 수 있다.
여기서, 시스템 자원의 논리 주소만으로는 실제 시스템 자원에 접근할 수 없기 때문에, 실제 시스템 자원에 접근하기 위해서는 기억 관리 장치(Memory Management Unit; MMU)와 같은 주소 변환 장치를 이용하여 시스템 자원의 논리 주소(logical address)를 물리 주소(physical address)로 변환할 수 있다.
도 4는 본 발명의 일 실시예에 따른 운영체제 구성 장치의 동작을 설명하는 예시도이고, 도 5는 본 발명의 일 실시예에 따른 접근 제어 정보를 설명하는 예시도이다.
도 4 내지 도 5를 참조하면, 운영체제(100) 내에 시스템 자원 관리부(310) 및 시스템 운영부(360)로 분리된 운영체제 구성 장치(300)는 시스템 자원(140)을 관리하여 응용 프로그램을 실행시킬 수 있다.
여기서, 시스템 자원 관리부(310)는 운영체제의 기능 중 시스템 자원에 대한 제어 권한을 기반으로 시스템 자원을 관리하거나 접근을 제어하는 자원 관리 기능을 구현할 수 있다.
또한, 시스템 운영부(360)는 시스템 자원 관리부(310)에 구현된 자원 관리 기능을 제외한 운영체제의 전반적인 기능이 구현될 수 있다.
응용 프로그램에서 시스템 자원(140)에 대한 할당을 요청하면, 시스템 자원 관리부(310)의 자원 할당 모듈(320)은 응용 프로그램에서 요구하는 시스템 자원(140)을 할당하고 응용 프로그램 식별 정보 및 시스템 자원의 식별 정보를 생성할 수 있다.
접근 제어 정보는 도 5에 도시된 바와 같이 자원 할당 모듈(320)에서 생성된 응용 프로그램 식별 정보 및 시스템 자원에 대한 정보를 기반으로 응용 프로그램 식별 정보에 상응하는 응용 프로그램에서 요구한 시스템 자원에 대한 정보를 매핑(mapping)함으로써 기록될 수 있다.
여기서, 응용 프로그램의 식별 정보는 응용 프로그램의 고유 식별 번호 및 식별 ID를 포함할 수 있으며 시스템 자원에 대한 정보는 시스템 자원에 대한 물리 주소(physical address)를 의미할 수 있으나 이에 한정되는 것은 아니다.
즉, 접근 제어 정보는 응용 프로그램의 고유 식별 번호 또는 식별 ID와 시스템 자원의 물리 주소를 대응하여 테이블 형식으로 기록될 수 있다.
이 때, 시스템 운영부(360)는 응용 프로그램에 할당된 시스템 자원을 가상화하여 시스템 자원에 대한 접근 주소(361)를 생성하여 응용 프로그램을 실행시킬 수 있다.
여기서, 시스템 자원에 대한 접근 주소(361)는 응용 프로그램에서 사용할 수 있도록 접근이 허용된 시스템 자원의 논리 주소(logical address)를 의미할 수 있다.
예를 들어, 응용 프로그램에서 시스템 자원의 논리 주소(361)를 이용하여 시스템 자원에 대한 접근이 시도되면 시스템 자원 관리부(310) 내의 기억 관리 장치(Memory Management Unit; MMU)와 같은 주소 변환 장치를 이용하여 시스템 자원에 대한 논리 주소를 물리 주소로 변환함으로써 실제 시스템 자원(140)에 대한 접근을 제어할 수 있다.
그리하여, 시스템 자원 관리부(310)의 자원 접근 모듈(340)에서는 접근 제어 정보를 기반으로 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보가 존재하는지를 확인함으로써 시스템 자원에 대한 응용 프로그램의 접근을 제어할 수 있다.
만약, 응용 프로그램이 시스템 자원(140)에 대한 해제를 요청하면, 시스템 자원 관리부(310)의 자원 해제 모듈(330)은 접근 정보 DB(350)에 기록된 접근 제어 정보에서 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보를 삭제할 수 있다.
여기서, 시스템 자원을 해제하는 것은 응용 프로그램에서 시스템 자원에 대한 사용이 완료되거나, 우선순위가 높은 다른 응용 프로그램을 실행하기 위해 운영체제에서 시스템 자원을 회수하는 것을 의미할 수 있다.
도 6은 본 발명의 일 실시예에 따른 운영체제 구성 방법을 설명하는 흐름도이다.
도 6을 참조하면, 운영체제 내의 제 1 영역을 통해 운영체제와 연동되는 시스템 자원을 관리하는 단계(S100) 및 운영체제의 제 2 영역을 통해 시스템 자원을 활용하여 응용 프로그램을 실행시키는 단계(S200)를 포함할 수 있다.
여기서, 시스템 자원을 관리하는 단계(S100) 및 응용 프로그램을 실행시키는 단계(S200)는 모놀리식 커널(monolithic kernel)의 분리된 영역에서 수행될 수 있다.
즉, 성능이 우수한 모놀리식 커널을 이용하여 운영체제를 구성하되, 시스템 자원을 관리하는 기능과 응용 프로그램을 실행시키는 기능을 제 1영역과 제 2영역에 분리하여 구현함으로써 시스템 보안성을 높일 수 있는 마이크로 커널의 방식을 접목시킬 수 있다.
이로써 모놀리식 커널 방식의 성능의 우수성과 마이크로 커널의 보안 능력을 동시에 지원받을 수 있는 운영체제를 구현할 수 있다.
시스템 자원을 관리하는 단계(S100)는 응용 프로그램에서 요구하는 시스템 자원을 할당하고, 응용 프로그램에 상응하는 할당된 시스템 자원에 대한 정보를 매핑(mapping)하여 생성된 접근 제어 정보를 기록할 수 있다.
또한, 응용 프로그램에서 시스템 자원에 대한 접근이 요청됨에 따라 접근 제어 정보를 기반으로 접근이 요청된 시스템 자원에 대한 응용 프로그램의 접근 권한 여부를 확인할 수 있다.
그리하여, 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보가 존재하면 응용 프로그램의 접근을 허용할 수 있다.
시스템 자원을 관리하는 단계(S100)는 응용 프로그램에서 시스템 자원에 대한 해제를 요청함에 따라 접근 제어 정보에 기반하여 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보를 삭제할 수 있다.
이 때, 시스템 자원을 해제하는 것은 응용 프로그램에서 시스템 자원에 대한 사용이 완료되거나, 우선순위가 높은 다른 응용 프로그램을 실행하기 위해 운영체제에서 시스템 자원을 회수하는 것을 의미할 수 있으나 이에 한정되는 것은 아니다.
시스템 자원을 관리하는 단계(S100)는 응용 프로그램의 실행을 위한 프로세스의 순서를 결정하는 스케줄링(scheduling)을 제공할 수 있다.
여기서, 스케줄링은 프로세스의 동작 순서 및 시스템 자원의 사용 순서를 적절하게 운영하여 멀티 프로그래밍이 실현될 수 있도록 시스템의 부하를 조절할 수 있는 운영체제의 자원 관리 기능을 의미할 수 있다.
시스템 자원을 관리하는 제 1 영역과 분리된 제 2 영역에서 제 1 영역에서 관리된 시스템 자원을 활용하여 응용 프로그램을 실행시킬 수 있다(S200).
구체적으로, 응용 프로그램에서 접근이 허용된 시스템 자원을 가상화하여 시스템 자원에 대한 접근 주소를 생성함으로써 응용 프로그램을 실행시킬 수 있다(S200).
여기서, 시스템 자원에 대한 접근 주소는 응용 프로그램에서 사용할 수 있도록 접근이 허용된 시스템 자원의 논리 주소(logical address)를 의미할 수 있다.
도 7은 본 발명의 일 실시예에 따른 시스템 자원에 대한 응용 프로그램의 접근을 제어하는 것을 설명하는 흐름도이다.
도 7을 참조하면, 응용 프로그램에서 시스템 자원에 대한 접근이 요청되면(S300) 시스템 자원에 대한 응용 프로그램의 접근 권한을 확인하여(S400) 접근을 제어할 수 있다.
예를 들어, 응용 프로그램에서 시스템 자원의 논리 주소(361)로 시스템 자원에 대한 접근이 요청될 수 있다(S300).
이 때, 시스템 자원 관리부(310) 내의 기억 관리 장치(Memory Management Unit; MMU)와 같은 주소 변환 장치는 시스템 자원에 대한 논리 주소를 물리 주소로 변환할 수 있다.
그리하여, 미리 기록된 접근 제어 정보를 기반으로 응용 프로그램의 식별 정보에 상응하는 시스템 자원에 대한 정보의 존재 여부를 확인할 수 있다(S400).
여기서, 미리 기록된 접근 제어 정보는 응용 프로그램 식별 정보에 상응하는 응용 프로그램에서 요구한 시스템 자원에 대한 정보를 매핑(mapping)함으로써 기록될 수 있다.
접근 제어 정보에 기록된 응용 프로그램의 식별 정보는 응용 프로그램의 고유 식별 번호 및 식별 ID를 포함할 수 있으며 시스템 자원에 대한 정보는 시스템 자원에 대한 물리 주소(physical address)를 의미할 수 있으나 이에 한정되는 것은 아니다.
따라서, 접근 제어 정보를 기반으로 응용 프로그램 식별 정보에 상응하는 응용 프로그램에서 요구한 시스템 자원에 대한 정보가 존재하면 접근을 허용할 수 있다(S410).
반면, 접근 제어 정보에 응용 프로그램 식별 정보에 상응하는 응용 프로그램에서 요구한 시스템 자원에 대한 정보가 존재하지 않는 경우 시스템 자원으로의 접근을 거부할 수 있다(S420).
상술한 바와 같은 본 발명의 실시예에 따른 운영체제 구성 장치 및 방법에 따르면, 기존의 모놀리식 커널 방식과 마이크로 커널 방식을 접목함으로써 운영체제의 성능을 향상시키는 동시에 높은 보안성을 지원할 수 있다.
또한, 운영체제의 시스템 자원을 관리하는 기능과 응용 프로그램을 운영하는 기능을 분리하여 구성하기 때문에 시스템 자원에 대한 무결성을 보장할 수 있으므로 운영체제에 대한 신뢰성을 향상시킬 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 운영체제 110: 자원 할당 관리자
120: 자원 해제 관리자 130: 자원 접근 관리자
140: 시스템 자원 141: 기능#3과 연동된 자원
143: 기능#4와 연동된 자원 300: 운영체제 구성 장치
310: 시스템 자원 관리부 320: 자원 할당 모듈
330: 자원 해제 모듈 340: 자원 접근 모듈
350: 접근 정보 DB 360: 시스템 운영부
361: 시스템 자원에 대한 접근 주소

Claims (16)

  1. 운영체제 내의 제 1 영역에서 상기 운영체제와 연동되는 시스템 자원에 대한 제어 권한을 부여함으로써 상기 시스템 자원을 관리하는 시스템 자원 관리부; 및
    상기 제 1 영역과 독립된 제 2 영역에서 상기 시스템 자원 관리부에 의해 관리되는 상기 시스템 자원을 활용하여 응용 프로그램을 실행시키는 시스템 운영부를 포함하되,
    상기 시스템 자원 관리부는,
    상기 응용 프로그램에서 상기 시스템 자원에 대한 접근이 요청됨에 따라 접근 제어 정보에 기반하여 상기 응용 프로그램의 식별 정보에 상응하는 상기 시스템 자원에 대한 정보의 기록 여부를 확인함으로써 상기 시스템 자원에 대한 접근을 제어하는 것을 특징으로 하는 운영체제 구성 장치.
  2. 청구항 1에 있어서,
    상기 제 1 영역과 상기 제 2 영역은, 모놀리식 커널(monolithic kernel)의 분리된 영역에 각각 구현되어 독립적인 기능을 수행하는 것을 특징으로 하는 운영체제 구성 장치.
  3. 청구항 1에 있어서,
    상기 시스템 자원 관리부는,
    상기 응용 프로그램에서 요구하는 상기 시스템 자원을 할당하고, 상기 응용 프로그램의 식별 정보 및 상기 응용 프로그램에 할당된 시스템 자원에 대한 정보를 생성하는 자원 할당 모듈을 포함하는 것을 특징으로 하는 운영체제 구성 장치.
  4. 청구항 3에 있어서,
    상기 시스템 자원 관리부는,
    상기 응용 프로그램의 식별 정보 및 상기 시스템 자원에 대한 정보를 제공받아 상기 응용 프로그램 식별 정보에 상응하는 상기 시스템 자원에 대한 정보를 매핑(mapping)함으로써 생성된 접근 제어 정보를 기록하는 접근 정보 DB를 포함하는 것을 특징으로 하는 운영체제 구성 장치.
  5. 청구항 4에 있어서,
    상기 시스템 자원 관리부는,
    상기 응용 프로그램에서 상기 시스템 자원에 대한 해제를 요구함에 따라 상기 접근 제어 정보에 기반하여 상기 응용 프로그램의 식별 정보에 상응하는 상기 시스템 자원에 대한 정보를 삭제하는 자원 해제 모듈을 포함하는 것을 특징으로 하는 운영체제 구성 장치.
  6. 삭제
  7. 청구항 1에 있어서,
    상기 시스템 자원 관리부는,
    상기 응용 프로그램을 구성하는 프로세스의 순서를 결정하는 스케줄링(scheduling)을 제공하는 것을 특징으로 하는 운영체제 구성 장치.
  8. 청구항 1에 있어서,
    상기 시스템 운영부는,
    상기 응용 프로그램에서 접근 가능한 상기 시스템 자원을 가상화하여 생성된 상기 시스템 자원에 대한 접근 주소를 이용하여 상기 응용 프로그램을 실행시키는 것을 특징으로 하는 운영체제 구성 장치.
  9. 청구항 1에 있어서,
    상기 시스템 자원은,
    상기 응용 프로그램의 실행에 이용되는 입출력 장치, 저장 장치 및 연산 장치 중 적어도 하나를 포함하는 것을 특징으로 하는 운영체제 구성 장치.
  10. 운영체제 구성 장치에서 수행되는 운영체제 구성 방법에 있어서,
    상기 운영체제 내의 제 1 영역을 통해 상기 운영체제와 연동되는 시스템 자원에 대한 제어 권한을 부여함으로써 상기 시스템 자원을 관리하는 단계; 및
    상기 제 1 영역과 독립된 제 2 영역을 통해 상기 시스템 자원을 활용하여 응용 프로그램을 실행시키는 단계를 포함하되,
    상기 시스템 자원을 관리하는 단계는,
    상기 응용 프로그램에서 상기 시스템 자원에 대한 접근이 요청됨에 따라 접근 제어 정보에 기반하여 상기 응용 프로그램의 식별 정보에 상응하는 상기 시스템 자원에 대한 정보의 기록 여부를 확인함으로써 상기 접근이 요청된 상기 시스템 자원에 대한 상기 응용 프로그램의 접근 권한 여부를 확인하여 상기 시스템 자원에 대한 접근을 제어하는 것을 특징으로 하는 운영체제 구성 방법.
  11. 청구항 10에 있어서,
    상기 시스템 자원을 관리하는 단계 및 상기 응용 프로그램을 실행시키는 단계는, 모놀리식 커널(monolithic kernel)의 분리된 영역에서 수행되는 것을 특징으로 하는 운영체제 구성 방법.
  12. 청구항 10에 있어서,
    상기 시스템 자원을 관리하는 단계는,
    상기 응용 프로그램에서 요구하는 상기 시스템 자원을 할당하고, 상기 응용 프로그램에 상응하는 상기 할당된 시스템 자원에 대한 정보를 매핑(mapping)하여 생성된 접근 제어 정보를 기록하는 것을 특징으로 하는 운영체제 구성 방법.
  13. 삭제
  14. 청구항 12에 있어서,
    상기 시스템 자원을 관리하는 단계는,
    상기 응용 프로그램에서 상기 시스템 자원에 대한 해제를 요청됨에 따라 상기 접근 제어 정보에 기반하여 상기 응용 프로그램의 식별 정보에 상응하는 상기 시스템 자원에 대한 정보를 삭제하는 것을 특징으로 하는 운영체제 구성 방법.
  15. 청구항 10에 있어서,
    상기 시스템 자원을 관리하는 단계는,
    상기 응용 프로그램을 구성하는 프로세스의 순서를 결정하는 스케줄링(scheduling)을 제공하는 것을 특징으로 하는 운영체제 구성 방법.
  16. 청구항 10에 있어서,
    상기 응용 프로그램을 실행시키는 단계는,
    상기 응용 프로그램에서 접근 가능한 상기 시스템 자원을 가상화하여 생성된 상기 시스템 자원에 대한 접근 주소를 이용하여 상기 응용 프로그램을 실행시키는 것을 특징으로 하는 운영체제 구성 방법.
KR1020130084601A 2013-07-18 2013-07-18 운영체제 구성 장치 및 방법 KR101535792B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020130084601A KR101535792B1 (ko) 2013-07-18 2013-07-18 운영체제 구성 장치 및 방법
EP14175759.1A EP2827246A1 (en) 2013-07-18 2014-07-04 Apparatus for configuring operating system and method therefor
JP2014140016A JP5976046B2 (ja) 2013-07-18 2014-07-07 オペレ−ティングシステム構成装置及び方法
US14/335,798 US9684525B2 (en) 2013-07-18 2014-07-18 Apparatus for configuring operating system and method therefor
CN201410342507.5A CN104298519B (zh) 2013-07-18 2014-07-18 用于配置操作***的装置及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130084601A KR101535792B1 (ko) 2013-07-18 2013-07-18 운영체제 구성 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20150010095A KR20150010095A (ko) 2015-01-28
KR101535792B1 true KR101535792B1 (ko) 2015-07-10

Family

ID=51229798

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130084601A KR101535792B1 (ko) 2013-07-18 2013-07-18 운영체제 구성 장치 및 방법

Country Status (5)

Country Link
US (1) US9684525B2 (ko)
EP (1) EP2827246A1 (ko)
JP (1) JP5976046B2 (ko)
KR (1) KR101535792B1 (ko)
CN (1) CN104298519B (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160141476A (ko) * 2015-06-01 2016-12-09 엘지전자 주식회사 이동 단말기
CN106713388B (zh) * 2015-11-13 2021-03-30 创新先进技术有限公司 一种突发业务处理方法及装置
US10305209B2 (en) * 2016-02-26 2019-05-28 Amphenol Fci Asia Pte Ltd Electrical connector and method of assembling the same
KR102111991B1 (ko) * 2018-08-17 2020-05-18 주식회사 한컴엠디에스 운영체제 시스템의 자원 관리 장치 및 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070005917A (ko) * 2003-09-30 2007-01-10 쟈루나 에스에이 운영체제
US20100017806A1 (en) * 2006-08-09 2010-01-21 Guennadi Maslov Fine grain os scheduling
KR101122962B1 (ko) * 2010-08-04 2012-03-16 삼성에스디에스 주식회사 사용자 단말장치 및 멀티 가상머신 전환 방법
WO2012082525A2 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Kernel awareness of physical environment

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6487547B1 (en) * 1999-01-29 2002-11-26 Oracle Corporation Database appliance comprising hardware and software bundle configured for specific database applications
KR100406532B1 (ko) 1999-07-26 2003-11-20 주식회사 케이티 내장형 시스템을 위한 운영체제 구현 방법
US7962950B2 (en) * 2001-06-29 2011-06-14 Hewlett-Packard Development Company, L.P. System and method for file system mandatory access control
US7509644B2 (en) * 2003-03-04 2009-03-24 Secure 64 Software Corp. Operating system capable of supporting a customized execution environment
GB2453284A (en) * 2004-04-02 2009-04-01 Symbian Software Ltd Mechanism for notifying a kernel of a thread entering a critical section.
US7721298B2 (en) 2004-12-03 2010-05-18 Microsoft Corporation Operating system performance
WO2006061481A1 (fr) * 2004-12-09 2006-06-15 France Telecom Dispositif et procede de controle d’acces, noyau a composants le comportant et son utilisation
WO2008096891A1 (ja) * 2007-02-09 2008-08-14 Ntt Docomo, Inc. 端末装置及びソフトウエア検査方法
US20090158299A1 (en) * 2007-10-31 2009-06-18 Carter Ernst B System for and method of uniform synchronization between multiple kernels running on single computer systems with multiple CPUs installed
JP5676845B2 (ja) * 2008-11-06 2015-02-25 イグジット−キューブ,インク. コンピュータシステム、カーネルスケジューリングシステム、リソース割当方法及びプロセス実行共有方法
US8898672B2 (en) * 2011-09-14 2014-11-25 Alcatel Lucent Method and apparatus for providing isolated virtual space
US9098726B2 (en) 2012-04-24 2015-08-04 Samsung Electronics Co., Ltd. Scalable and secure application resource management and access control for multicore operating systems

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070005917A (ko) * 2003-09-30 2007-01-10 쟈루나 에스에이 운영체제
US20100017806A1 (en) * 2006-08-09 2010-01-21 Guennadi Maslov Fine grain os scheduling
KR101122962B1 (ko) * 2010-08-04 2012-03-16 삼성에스디에스 주식회사 사용자 단말장치 및 멀티 가상머신 전환 방법
WO2012082525A2 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Kernel awareness of physical environment

Also Published As

Publication number Publication date
US9684525B2 (en) 2017-06-20
EP2827246A1 (en) 2015-01-21
CN104298519A (zh) 2015-01-21
US20150026447A1 (en) 2015-01-22
KR20150010095A (ko) 2015-01-28
CN104298519B (zh) 2018-04-24
JP5976046B2 (ja) 2016-08-23
JP2015022763A (ja) 2015-02-02

Similar Documents

Publication Publication Date Title
US9922045B2 (en) Data management in a multi-tenant distributive environment
US10176019B2 (en) Dynamic management of computing platform resources
CN108701058B (zh) 虚拟化传感器
CN103080912B (zh) 微处理器***及用于其上的存储器管理单元和管理方法
US8904400B2 (en) Processing system having a partitioning component for resource partitioning
JP2004220608A (ja) スレッド型に基づくコンピュータ・リソースの動的割り付け
US10228978B2 (en) Dynamic management of computing platform resources
WO2015114745A1 (ja) 計算機及び計算機のi/o制御方法
US20190190845A1 (en) Dynamic management of computing platform resources
KR20110094764A (ko) 트랜잭션 기반 입출력 인터페이스를 제공하는 가상화 장치 및 방법
KR101535792B1 (ko) 운영체제 구성 장치 및 방법
US7793051B1 (en) Global shared memory subsystem
JPWO2011039887A1 (ja) 計算機装置
US20220382672A1 (en) Paging in thin-provisioned disaggregated memory
US10228859B2 (en) Efficiency in active memory sharing
US11429412B2 (en) Guest protection from application code execution in kernel mode
CN114518962A (zh) 内存的管理方法及装置
CN116324706A (zh) 分离式存储器池分配
JP2007293639A (ja) アクセス制御方法、アクセス制御方法を用いた機器及びシステム
JP6951962B2 (ja) OpenCLカーネルを処理する方法、及びそれを遂行するコンピューティング装置
US20200348874A1 (en) Memory-fabric-based data-mover-enabled memory tiering system
US9251100B2 (en) Bitmap locking using a nodal lock
US11714753B2 (en) Methods and nodes for handling memory
KR20230081585A (ko) 연속 메모리 할당 영역의 크기를 조정하는 메모리 관리 방법 및 반도체 장치
CN118227304A (zh) 一种内存管理的方法及装置

Legal Events

Date Code Title Description
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: 20180702

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190617

Year of fee payment: 5