KR20000026428A - 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법 - Google Patents

실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법 Download PDF

Info

Publication number
KR20000026428A
KR20000026428A KR1019980043954A KR19980043954A KR20000026428A KR 20000026428 A KR20000026428 A KR 20000026428A KR 1019980043954 A KR1019980043954 A KR 1019980043954A KR 19980043954 A KR19980043954 A KR 19980043954A KR 20000026428 A KR20000026428 A KR 20000026428A
Authority
KR
South Korea
Prior art keywords
service
operating system
resource
real
service quality
Prior art date
Application number
KR1019980043954A
Other languages
English (en)
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 KR1019980043954A priority Critical patent/KR20000026428A/ko
Publication of KR20000026428A publication Critical patent/KR20000026428A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

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

Abstract

본 발명은 실시간 운영 시스템에서의 서비스 품질 관리에 관한 것으로, 특히 해당 운영 시스템에서 서비스 품질을 관리함으로써, 응용범주의 변화에 따라 달라진 응용에 적합한 시스템의 자원 관리를 수행하여 해당 시스템 자원의 정확한 스케쥴링이 가능하도록 한 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법에 관한 것이다.
종래의 실시간 운영 시스템은 응용 분야가 확산되고 있음에도 불구하고, 서비스 품질과는 무관하게 전체 시스템의 실시간성을 보장하기 위한 자원 할당과 스케쥴링을 수행함으로써, 보다 많은 응용에 적용할 수 없을 뿐 아니라 해당 서비스를 효율적으로 제공할 수 없다는 문제점이 있었다.
본 발명은 사용자의 포괄적인 서비스 요구를 실시간 운영 시스템에서 해석하여 시스템의 자원 사용도에 따라 사용자의 서비스 요구 수준을 실시간으로 만족시킬 수 있도록 서비스 품질을 관리함으로써, 서비스별로 자원 관리 기능을 통하여 대응하는 응용 프로그램의 구동이 가능한지를 검사하여 자원을 할당하므로 보다 효율적인 자원 할당이 가능하게 되고, 이에 따라 실시간성 보장을 위한 정확한 스케쥴링이 가능하게 된다.

Description

실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법
본 발명은 실시간 운영 시스템에서의 서비스 품질 관리에 관한 것으로, 특히 해당 운영 시스템에서 서비스 품질을 관리함으로써, 응용범주의 변화에 따라 달라진 응용에 적합한 시스템의 자원 관리를 수행하여 해당 시스템 자원의 정확한 스케쥴링이 가능하도록 한 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법에 관한 것이다.
일반적으로, 실시간 운영 시스템(Realtime Operation System)은 고신뢰도의 실시간성을 요하는 제어 시스템에 사용되어 왔다. 예를 들자면, 원자력 발전소 제어 시스템, 항공기 제어 시스템, 군사 무기 제어 시스템 등에 사용되어, 제어하고자 하는 전체 시스템의 실시간성을 보장하기 위한 자원 할당과 스케쥴링(Scheduling)을 담당하였다.
항공기 충돌 방지 시스템의 경우 상대 항공기의 현재 위치, 추진 방향, 속도 등의 입력을 정해진 시간 내에 계산하여 시스템이 탑재된 항공기와의 충돌 가능성을 출력하고, 이를 바탕으로 충돌을 방지하는 역할을 수행하도록 하는데, 이 경우 실시간성을 만족시키는 것이 필수적인 요소가 되고 이를 보장하기 위해 실시간 운영 시스템을 사용해 왔다.
또한, 해당 실시간 운영 시스템을 적용하는 시스템으로는 통신분야의 ATM(Asynchronous Transfer Mode) 교환 시스템이 널리 사용되고 있는데, 해당 교환 시스템에서의 통신 서비스의 품질을 유지하기 위해 사용자의 요청에 대해 정해진 시간 내에 반응할 수 있도록 해당 실시간 운영 시스템에서 지원해야 한다.
최근 들어, 이러한 실시간 운영 시스템은 단순한 내재 제어 시스템(Embedded Control System)의 응용 프로그램에 국한되던 사용범주를 벗어나 여러 가지 범용 시스템 즉, 멀티미디어 시스템, 통신망의 교환 시스템, 홈오토메이션 시스템 등 보다 일반적이고 폭 넓게 응용 분야가 확산되고 있다.
따라서, 이러한 응용범주의 변화에 따라 달라진 응용에 적합하게 시스템의 자원관리를 수행할 수 있는 실시간 운영 시스템의 개발 필요성이 강조되고 있다.
한편, 종래의 실시간 운영 시스템은 시간적인 오류가 시스템에 치명적인 결과를 주는 응용에서 많이 이용되었으나, 최근의 실시간 운영 시스템의 응용은 이러한 엄격한 실시간성 보다는 연성 실시간 운영 시스템의 성격이 강하므로, 종래의 실시간 운영 시스템에서 적용되던 시스템 자원 관리와는 다른 형식의 좀 더 유연한 관리 방법이 요구된다.
전술한 바와 같은 종래의 실시간 운영 시스템은 응용 분야가 확산되고 있음에도 불구하고, 서비스 품질과는 무관하게 전체 시스템의 실시간성을 보장하기 위한 자원 할당과 스케쥴링을 수행함으로써, 보다 많은 응용에 적용할 수 없을 뿐 아니라 해당 서비스를 효율적으로 제공할 수 없다는 문제점이 있었다.
본 발명은 전술한 바와 같은 문제점을 해결하기 위한 것으로 그 목적은, 사용자의 포괄적인 서비스 요구를 실시간 운영 시스템에서 해석하여 시스템의 자원 사용도에 따라 사용자의 서비스 요구 수준을 실시간으로 만족시킬 수 있도록 서비스 품질을 관리함으로써, 서비스별로 자원 관리 기능을 통하여 대응하는 응용 프로그램의 구동이 가능한지를 검사하여 보다 효율적인 자원 할당이 가능하게 함과 동시에 이에 따른 실시간성 보장을 위한 정확한 스케쥴링이 가능하도록 하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 특징은, 실시간 처리요구에 대한 다양한 응용 프로그램을 갖는 실시간 운영 시스템에 있어서, 마이크로 커널 구조를 갖되, 프로세스가 요청하는 서비스 품질을 모니터링하고, 이를 수행할 수 있는 자원의 활용성을 판단하여 동적으로 자원을 할당하며, 프로세스 스케쥴링 기증을 수행하는 운영체제 커널과; 서비스 품질 관리 서비스와 서비스 품질 파라미터를 지원하여 해당 서비스 품질에 따른 자원 할당과 상기 응용 프로그램의 프로세스 스케쥴링을 상기 운영체제 커널로 요청하는 기능을 수행하는 API를 포함하는데 있다.
본 발명의 다른 특징은, 응용 프로그램의 서비스 실행을 위해 필요한 자원을 쉘 프로그램으로 요청하는 과정과; 요청한 자원의 할당이 가능한지를 확인하는 과정과; 상기 응용 프로그램을 주메모리로 로딩하여 프로세스를 전달하는 과정과; 상기 프로세스에 필요한 자원을 할당하여 서비스를 실행하게 하는 과정과; 상기 프로세서의 실행 결과를 소정의 메모리에 저장하고, 자원을 반납받아 상기 응용 프로그램의 실행을 종료하는 과정을 포함하는데 있다.
도 1은 본 발명에 따른 실시간 운영 시스템에서의 서비스 품질 관리 동작을 도시한 다이어그램.
도 2는 본 발명에 따른 실시간 운영 시스템에서의 서비스 품질 관리 동작 순서도.
이하, 본 발명의 실시예를 첨부한 도면을 참조하여 상세하게 설명하면 다음과 같다.
본 발명의 구현을 위해서는 종래의 실시간 운영 시스템에서 운영체제 커널(OS Kernel)을 확장하여 서비스 품질을 관리하며, 해당 실시간 운영 시스템을 통신 시스템에 탑재하여 해당 통신 시스템의 각종 서비스를 서비스 품질에 따라 동적으로 관리하여 자원의 활용을 극대화하고, 서비스 품질을 향상시킬 수 있도록 하는데, 이와 같은 본 발명에 따른 실시간 운영 시스템에서의 서비스 품질 관리 시스템은 크게 운영체제 커널과 해당 운영체제 커널에 대한 응용 프로그램의 요청을 구현하기 위한 API(Application Programming Interface)로 구성된다.
해당 운영체제 커널은 마이크로 커널 구조를 갖되, 프로세스가 요청하는 서비스의 품질을 모니터링(Monitoring)하고, 이를 수행할 수 있는 자원의 활용성을 판단하여 동적으로 자원을 할당하며, 프로세스를 스케쥴링하는 기능을 수행한다.
해당 API는 서비스 품질 관리 서비스와 서비스 품질 파라미터를 지원하여 해당 서비스 품질에 따른 시스템의 자원 할당과 응용 프로그램의 프로세스 스케쥴링을 운영체제 커널로 요청하는 기능을 수행한다.
이때, 시스템의 자원 할당과 스케쥴링은 운영체제 커널에서 서비스 품질에 따라 시스템에 대한 요청에 부합할 수 있도록 구현하며, 응용 프로그램의 요청은 해당 운영체제 커널에 의해 서비스가 가능한지, 가능하지 않은지가 판단된다.
또한, 해당 운영체제 커널에서 허용된 응용 프로그램은 시스템에 로딩(loading)되어 멀티스레드(Mutithread)를 가지는 프로세스의 형태를 취하는데, 이때, 멀티스레드 구조와 해당 멀티스레드 구조에서 허용될 수 있는 스케쥴링 스레드를 지원하고, 다양한 파일 시스템을 지원하며, 파일 처리시 실시간 서비스를 제공할 수 있게 하기 위하여 디스크 헤드 스케쥴링, 응용에 적합한 디스크 블록 할당 기법을 수용한다.
한편, 해당 응용 프로그램이 구동된 프로세스는 동적으로 운영체제 커널과 통신하여 서비스 품질을 관리하는데, 동적으로 관리되는 서비스 품질은 운영체제 커널의 서비스 품질 모니터링과 서비스 품질의 재조정이 수행된다.
이와 같은 서비스 품질 관리 기능은 운영체제 커널의 시스템 호출(System Call)이나 API 등을 이용하여 수행할 수 있으며, 해당 서비스 품질 관리 기능을 갖는 실시간 운영 시스템을 통신 시스템에 적용하여 각종 통신 서비스를 서비스 품질에 따라 스케쥴링할 수 있게 되는데, 이를 위해서 통신 시스템에 맞게 해당 실시간 운영 시스템을 적용하며, 해당 실시간 운영 시스템이 적용된 통신 시스템에서 응용 프로그램은 서비스별로 작성되되, 예를 들어, 호 처리를 위한 호 제어, 통화로 정합, 번호 처리, 통화로 구성 등의 서비스가 API나 운영체제 커널에서 제공하는 시스템 호출의 형태로 필요한 서비스 품질 수준의 요청을 해당 실시간 운영 시스템에서 동적으로 처리할 수 있게 된다.
한편, 상술한 바와 같은 본 발명에 따른 실시간 운영 시스템에서의 서비스 품질 관리 동작을 첨부한 도면 도 1의 다이어그램(Diagram) 및 도 2의 순서도를 참조하여 설명하면 다음과 같다.
먼저, 소정의 서비스를 처리하기 위한 응용 프로그램이 입력되면(스텝 S21), 해당 응용 프로그램은 자신의 실행을 위해 필요한 자원(중앙처리장치, 주메모리 용량)을 요청하기 위해 프로세스 승인요구 신호(Process Admission Request)를 쉘(Shell) 프로그램으로 전송한다.
이에, 해당 쉘 프로그램은 응용 프로그램이 요청한 자원의 할당이 가능한지, 가능하지 않은지를 확인하기 위해 운영체제 커널(OS Kernel)로 QoS 절충신호(QoS Negotiation)를 전송하는데(스텝 S22), 필요에 따라서는 상호 대화에 의해서 자원의 할당 범위를 결정하게 된다.
그리고, 해당 운영체제 커널은 현재 실행중인 응용 프로그램들이 사용하고 있는 자원들을 제외한 나머지 자원이 현재 응용 프로그램이 요구한 정보를 만족시켜 주는지 즉, 자원 할당이 가능한가를 확인하여(스텝 S23), 해당 자원 할당이 가능한 경우 해당 응용 프로그램의 실행을 허용한다는 것을 쉘 프로그램에 통지하기 위해 QoS 확립신호(QoS Establishment)를 해당 쉘 프로그램으로 전송하고, 해당 쉘 프로그램은 승인신호(Admission)를 전송하여 해당 응용 프로그램을 실행시키게 되는데, 이때, 해당 쉘 프로그램은 응용 프로그램을 주메모리로 로딩(Program Loading)하여 실행시킴으로써(스텝 S24, S25), 하나의 프로세스로 운영체제 커널에 전달하게 되고, 해당 운영체제 커널은 해당 자원을 할당(Resource Allocation)하게 된다.
이에, 해당 운영체제 커널은 로딩된 새로운 프로세스를 스케쥴링 기능에 의해 작업을 개시한 후, 해당 프로세스가 자원을 활용하는 정도를 모니터링(QoS Monitoring)하여 문제가 발생하면 해결하기 위한 폴리싱(QoS Policing) 기능을 수행한다.
그리고, 해당 프로세스의 작업이 종료(Process Quit)되면, 현재까지의 실행 결과를 소정의 메모리에 저장하여(Save to Disk) 해당 응용 프로그램을 다시 실행하는 경우에 자원의 협상을 위한 자료로 재활용한다.
또한, 작업이 종료된 프로세스는 자신의 자원들을 운영체제 커널에 의해서 반납(Resource Release)하고, 해당 응용 프로그램의 실행을 종료한다(스텝 S26).
한편, 스텝 S23에서 만약, 해당 자원 할당이 가능하지 않은 경우 해당 운영체제 커널은 자원 부족 메시지를 출력한 후(스텝 S27), 동작을 종료하게 된다.
이와 같은 본 발명에 따른 실시간 운영 시스템은 기존의 방위산업, 통신 시스템, 산업자동화 시스템, 의료기기 분야에서 사용되던 실시간 운영 시스템에 비해 범용성을 갖게 되며, 가전기기 등의 분야에 적용이 가능하게 된다. 또한, 응용 프로그램의 서비스 품질을 관리하는 기능이 있어서, 사용자가 요구하는 서비스에 대해서 만족할 수 있는 서비스의 성능을 보여줄 수 있도록 자원을 효율적으로 할당할 수 있게 된다.
또한, 시간 제약 사항이 서비스의 질을 좌우하는 고신뢰도 시스템뿐 아니라, 시간 제약 사항이 중요하지 않은 시스템에서도 높은 품질의 서비스를 제공하기 위한 방편으로 사용될 수 있게 된다.
이상과 같이, 본 발명은 사용자의 포괄적인 서비스 요구를 실시간 운영 시스템에서 해석하여 시스템의 자원 사용도에 따라 사용자의 서비스 요구 수준을 실시간으로 만족시킬 수 있도록 서비스 품질을 관리함으로써, 서비스별로 자원 관리 기능을 통하여 대응하는 응용 프로그램의 구동이 가능한지를 검사하여 자원을 할당하므로 보다 효율적인 자원 할당이 가능하게 되고, 이에 따라 실시간성 보장을 위한 정확한 스케쥴링이 가능하게 된다.

Claims (4)

  1. 실시간 처리요구에 대한 다양한 응용 프로그램을 갖는 실시간 운영 시스템에 있어서,
    마이크로 커널 구조를 갖되, 프로세스가 요청하는 서비스 품질을 모니터링하고, 이를 수행할 수 있는 자원의 활용성을 판단하여 동적으로 자원을 할당하며, 프로세스 스케쥴링 기증을 수행하는 운영체제 커널과; 서비스 품질 관리 서비스와 서비스 품질 파라미터를 지원하여 해당 서비스 품질에 따른 자원 할당과 상기 응용 프로그램의 프로세스 스케쥴링을 상기 운영체제 커널로 요청하는 기능을 수행하는 API를 포함하는 것을 특징으로 하는 실시간 운영 시스템에서의 서비스 품질 관리 시스템.
  2. 응용 프로그램의 서비스 실행을 위해 필요한 자원을 쉘 프로그램으로 요청하는 과정과; 요청한 자원의 할당이 가능한지를 확인하는 과정과; 상기 응용 프로그램을 주메모리로 로딩하여 프로세스를 전달하는 과정과; 상기 프로세스에 필요한 자원을 할당하여 서비스를 실행하게 하는 과정과; 상기 프로세서의 실행 결과를 소정의 메모리에 저장하고, 자원을 반납받아 상기 응용 프로그램의 실행을 종료하는 과정을 포함하는 것을 특징으로 하는 실시간 운영 시스템에서의 서비스 품질 관리 방법.
  3. 제 2항에 있어서,
    상기 요청한 자원의 할당이 가능하지 않은지를 확인하여 자원 부족 메시지를 출력하는 것을 특징으로 하는 실시간 운영 시스템에서의 서비스 품질 관리 방법.
  4. 제 2항에 있어서,
    상기 프로세스에 필요한 자원을 할당하여 서비스를 실행하게 하는 과정은, 상기 프로세스를 스케쥴링 기능에 의해 작업을 개시하는 단계와; 해당 프로세스가 자원을 활용하는 정도를 모니터링하는 단계와; 자원 활용에 대한 문제 발생을 해결하기 위한 폴리싱 기능을 수행하는 단계를 더 포함하는 것을 특징으로 하는 실시간 운영 시스템에서의 서비스 품질 관리 방법.
KR1019980043954A 1998-10-20 1998-10-20 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법 KR20000026428A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980043954A KR20000026428A (ko) 1998-10-20 1998-10-20 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980043954A KR20000026428A (ko) 1998-10-20 1998-10-20 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR20000026428A true KR20000026428A (ko) 2000-05-15

Family

ID=19554719

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980043954A KR20000026428A (ko) 1998-10-20 1998-10-20 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR20000026428A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010064807A (ko) * 1999-12-18 2001-07-11 이계철 프로세스 동적 제어 장치 및 그 방법
KR100702779B1 (ko) * 2001-06-20 2007-04-03 주식회사 케이티 데이터 통신 품질 측정 장치를 제어하는 제어 장치 및 그제어 방법
KR100727901B1 (ko) * 1999-07-10 2007-06-14 삼성전자주식회사 마이크로 스케듈링 방법 및 운영체제 커널 장치
CN102316589A (zh) * 2002-10-01 2012-01-11 摩托罗拉公司(在特拉华州注册的公司) 管理数据链路资源使用的方法和设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100727901B1 (ko) * 1999-07-10 2007-06-14 삼성전자주식회사 마이크로 스케듈링 방법 및 운영체제 커널 장치
KR20010064807A (ko) * 1999-12-18 2001-07-11 이계철 프로세스 동적 제어 장치 및 그 방법
KR100702779B1 (ko) * 2001-06-20 2007-04-03 주식회사 케이티 데이터 통신 품질 측정 장치를 제어하는 제어 장치 및 그제어 방법
CN102316589A (zh) * 2002-10-01 2012-01-11 摩托罗拉公司(在特拉华州注册的公司) 管理数据链路资源使用的方法和设备

Similar Documents

Publication Publication Date Title
US7765552B2 (en) System and method for allocating computing resources for a grid virtual system
KR101116615B1 (ko) 자바 가상 머신 상에서 이뤄지는 애플리케이션 및 스레드의자원 관리 시스템 및 방법
RU2481618C2 (ru) Иерархическая инфраструктура планирования резервирования ресурсов
US8276145B2 (en) Protected mode scheduling of operations
CN113037538B (zh) 分布式资源管理中低时延节点本地调度的系统和方法
EP0362105A2 (en) Method for processing program threads of a distributed application program by a host computer and an intelligent work station in an SNA LU 6.2 network environment
Pyarali et al. Evaluating and optimizing thread pool strategies for real-time CORBA
KR20040068600A (ko) 운영 시스템 기능 실행 방법 및 시스템, 전자 기기
JP2005534116A (ja) 複数の消費者をもつコンピュータシステムで資源を動的に割当てて管理する方法
KR100791296B1 (ko) 멀티 코어 시스템에서 협력적 스케줄링을 제공하는 장치 및방법
CN115858083A (zh) 容器cpu资源调度与隔离方法和装置、存储介质及电子设备
US8464258B2 (en) Virtual computer and CPU allocation method
Marau et al. Performing flexible control on low-cost microcontrollers using a minimal real-time kernel
Krishnamurthy et al. The design and implementation of real-time CORBA 2.0: Dynamic scheduling in TAO
KR20000026428A (ko) 실시간 운영 시스템에서의 서비스 품질 관리 시스템 및 방법
CN109462663B (zh) 一种限制系统资源占用的方法、语音交互系统及存储介质
Munk et al. Position paper: Real-time task migration on many-core processors
Boeke et al. Flexible Resource Management: A Framework for Self-Optimizing Real-Time Systems
CN100462923C (zh) 任务管理系统
KR101085763B1 (ko) 멀티-프로세서 시스템에서의 메모리 할당
Zouaoui et al. CPU scheduling algorithms: Case & comparative study
CN115576683A (zh) 一种协程池调度管理方法、系统、装置及存储介质
CN112114967A (zh) 一种基于服务优先级的gpu资源预留方法
CN110968418A (zh) 基于信号-槽的大规模有约束并发任务的调度方法与装置
Zahaf et al. Migrate when necessary: toward partitioned reclaiming for soft real-time tasks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application