KR900000092B1 - 데이터 처리장치 - Google Patents

데이터 처리장치 Download PDF

Info

Publication number
KR900000092B1
KR900000092B1 KR1019840003963A KR840003963A KR900000092B1 KR 900000092 B1 KR900000092 B1 KR 900000092B1 KR 1019840003963 A KR1019840003963 A KR 1019840003963A KR 840003963 A KR840003963 A KR 840003963A KR 900000092 B1 KR900000092 B1 KR 900000092B1
Authority
KR
South Korea
Prior art keywords
instruction
input
program
emulation
command
Prior art date
Application number
KR1019840003963A
Other languages
English (en)
Other versions
KR850001573A (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 가부시기가이샤 히다찌세이사꾸쇼
Publication of KR850001573A publication Critical patent/KR850001573A/ko
Application granted granted Critical
Publication of KR900000092B1 publication Critical patent/KR900000092B1/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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • 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/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45554Instruction set architectures of guest OS and hypervisor or native processor differ, e.g. Bochs or VirtualPC on PowerPC MacOS

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

내용 없음.

Description

데이터 처리장치
제1도 및 제2도의 채널형식이 아닌 입출력 명령체계를 갖는 처리장치의 입출력 명령군의 설명도와 1명령의 포오매트도면.
제3도는 본원 발명의 일실시예를 나타낸 에뮤레이션시의 프로그램 구조를 나타낸 도면.
제4도는 EXL명령의 포오매트 도면.
제5도는 본원 발명의 일실시예를 나타낸 에뮤레이션 방식의 처리 플로우차아트와 로우컬 실행리스트의 설명도.
* 도면의 주요부분에 대한 부호의 설명
10 : 네이티브 머신의 오퍼레이팅 시스템
11, 12, 13 : 네이티브 머신의 유우저 프로그램
20 : 에뮤레이션 죠브 21 : 인터훼이스 프로그램(ECP)
22 : 피에뮤레이션 프로그램 23 : 타게트 머신의 오퍼레이팅 시스템
24 : 타게트 머신의 유우저 프로그램
본원 발명은 데이터 처리장치에 관한 것이며, 특히 빈번하게 입출력 명령이 발행되는 온라인 프로그램의 에뮤레이션이 가능한 데이터 처리장치에 관한 것이다.
통상의 데이터 처리장치를 사용하여 죠브(Job)를 처리하기 위해서는 그 죠브의 처리수순을 프로그램의 형태로 기술하는 작업, 즉 프로그래밍이 필요하며, 이 프로그래밍을 용이하게 하기 위해 FORTRAN, COBOL등의 마크로 명령이 널리 사용되고 있다. 그러나 마크로 명령으로 쓰여진 소오스 프로그램은 그대로는 실행할 수 없으며, 콤파일러 방식, 인터프리터 방식 또는 콤파일러.인터프리터방식등에 의해 번역해서 기계어(機械語)의 프로그램으로 변환한 다음 실행한다.
통상의 데이터 처리장치는 그 장치에 고유의 프로그램, 즉 명령어군을 가지고 있으며, 각 명령어의 특정 피일드에 기술된 조작코오드에 의해 그 명령어의 기능이 정해져 있다.
그런데, 새로운 데이터 처리장치가 개발되어, 구기종과 대체될 경우에, 구기종에서 개발되어 사용되어 온 프로그램을 어떻게 해서 이어 받느냐 하는 문제가 있다. 그 경우, 소오스 프로그램이 마크로 명령으로 쓰여져 있으면 시스템 절환시에 재콤파일함으로써, 새로운 기종(네이티브 머신)의 목적 프로그램으로서 사용할 수 있다. 그러나 현실적으로는 각각의 데이터 처리장치의 언어사양에 차이가 있어서 완전한 호환성(互換性)이 없는 일이 많으며, 그 때문에 수정이 필요해지고, 또 콤파일후의 데스트런 등 때문에 사람에 의한 작업이 많이 필요해진다.
따라서, 신구기종 사이에 그 아아키텍츄어상에서 호환성이 없음에도 불구하고, 구기종(타게트 머신)의 프로그램을 그대로의 형태로 신기종의 데이터 처리장치(네이티브 머신)에 의해 실행할 경우, 또는 아아키텍츄어가 다른 가상 계산기의 프로그램을 실제의 데이터 처리장치로 실행할 경우에는 에뮤레이션이 필요해진다. 에뮤레이션은 마이크로 프로그래핑을 이용하여 새로운 처리장치(네이티브 머신)의 기능을 확장 또는 변경하고, 에뮤레이션을 고속으로 행하는 것이다.
에뮤레이션을 할 경우, 특히 문제가 되는 것은 입출력 명령의 에뮤레이션이다. 예를 들어 채널방식이 아닌 입출력 명령체제를 갖는 데이터 처리장치의 프로그램을 채널형식의 입출력 명령체제를 갖는 데이터장치에서 에뮤레이션할 경우에는 하아드웨어의 차이가 크기 때문에 마이크로 프로그램만으로 에뮤레이션하는 것은 곤란해진다. 이와 같은 경우, 에뮤레이션을 하는 데이터 처리장치의 오퍼레이팅 시스템의 하나의 구획에 리에뮤레이션 프로그램을 두고, 양자 사이에 인터훼이스용 프로그램을 설치하는 방법이 사용되고 있다. 이때, 마이크로 프로그램은 피에뮤레이션 프로그램에 입출력 명령을 인터프리트(해석실행)하여, 네이티브 머신의 신오 퍼레이팅 시스템의 입출력 마크도 명령 또는 입출력 명령을 검출하면, 인터훼이스용 프로그램에 통지하고, 소프트웨어에 의해 입출력 명령으로 치환하는 처리를 한다. 이 경우, 피에뮤레이션 프로그램중의 복수의 입출력 명령이 하나의 네이티브 머신용 오퍼레이팅 시스템의 입출력 마크로 명령 또는 입출력 명령으로 치환되는 것이 보통이다. 그러나 이 방식에서는 에뮤레이션을 제어하는 인터훼이스용 프로그램위에 다시 네이티브 머신용 오퍼레이팅 시스템이 존재하는 형태로 되기 때문에, 오우버 헤드가 크게 되는 것은 피할 수 없다.
통상, 에뮤레이션 기능중에서, 마이크로 프로그램이 분담하는 부분을 많게 하면 실행속도는 오르지만, 융통성은 적어지며, 반대로 소프트 웨어가 분담하는 부분을 많게하면, 실행속도는 늦어지지만 융통성은 증대한다.
일반적으로 채널형식이 아닌 입출력 명령체계의 데이터 처리장치에서는 하나의 입출력동작을 하기 위해서 복수의 입출력 명령이 발행된다. 이것에 대해 채널형식의 입출력 명령체계를 갖는 데이터 처리장치에서는 입출력 기동명령(SIO 명령) 하나를 발행하는 것만으로 입출력 동작이 가능하다.
예를 들면, 자기디스크장치에 대해 시이크 및 리이드동작을 시킬 경우, 채널형식의 입출력 명령체계에서는 채널코맨드 워어드(CCW)로 시아크동작과 리이드동작을 코맨드체인에 의해 지정해 두면, 채널에 대한 입출력 기동명령(SIO 명령)을 발행하는 것만으로 되는데 대해 채널형식이 아닌 입출력 명령체계에서는 디스크 제어장치내의 입출력 제어 레지스터군에 대해, 축일(逐一)시이크, 리이드동작의 각각에 필요한 파라미터류를 기입한 다음, 입출력을 기동하는 방법이 취해진다.
제1도는 채널형식이 아닌 입출력 명령체계를 갖는 처리장치의 자기디스크에 대한 입출력 명령군의 설명도, 제2도는 제1도의 하나의 명령 포오매트를 나타낸 도면이다.
타게트 머신이 채널형식이 아닌 입출력 명령체제를 사용하고 있을 경우, 자기디스크에 대해 시이크동작을 시키기 위해서는 제1도 (a)에 나타낸 것처럼 ①의 명령으로 자기디스크의 유니트 어드레스를 지정하고, ②의 명령으로 시이크하는 트랙 어드레스 및 섹터 어드레스를 입출력 제어 레지스터에 기입하고, ③의 명령으로 시이크동작의 코맨드를 입출력 제어 레지스터에 기입하는 동시에, 시이크동작의 기동을 한다. 또 자기디스크에 대해 라이드동작을 시키기 위해서는 제1도 (b)에 나타낸 것처럼 ①,②의 명령으로 읽어넣는 곳의 주기억장치 어드레스의 상위, 하위를 입출력 제어 레지스터에 기입하고, ③의 명령으로 리이드하는 데이터의 워어드수를 지정하여, ④의 명령으로 리이드 코맨드를 입출력 제어 레지스터에 기입하는 동시에, 리이드동작의 기동을 한다. 다음에 이들 명령 포오매트에 대해 설명한다. 제2도는 제1도에 있어서의 기입 명령 WIO(Write I/O)의 포오매트를 나타내고 있다.
WIO 명령은 자기디스크 제어장치내의 입출력 제어 레지스터에의 데이터 기입 및 기동을 하는 것이다. 명령요소의 WIOn(B,F)중 WIO는 입출력장치에의 기입을 지시하는 오퍼레이션 코오드(OP) n부는 입출력 제어 레지스터번호, B부는 입출력장치 어드레스가 세트되는 범용 레지스터번호, F군은 입출력 동작의 기동을 지정하는 비트로서 "1"일 때 기동의 지시를 나타내고 있다. R부는 입출력 제어 레지스터에 기입되는 데이터를 유지하는 범용 레지스터번호이다. 실제의 명령 포오매트는 제2도처럼 OP, B, F, n, R의 순서로 배열되어 있다.
그리고, 입출력 제어 레지스터번호를 나타내는 n부가, (000)일 때에는 워어드 어드레스 레지스터(WAR), (001)일 때에는 콘트롤 레지스터 0(CTRO), (010)일 때에는 콘트롤 레지스터 1(CTR1), (011)일 때에는 유니트 어드레스 레지스터(UNR), (100)일 때에는 어드레스 콘트롤 레지스터(ACR)를 각기 나타내고 있다(제2도 참조).
이처럼 채널형식이 아닌 입출력 명령어 체계의 데이터 처리장치에서는 하나의 입출력 동작(제1도에서는 시이크, 리이드동작)을 하기 위해 복수개(제1도에서는 7개)의 입출력 명령을 발행할 필요가 있다. 따라서, 종래, 타게트머신이 채널형식이 아닌 입출력 명령어 체계를 가질 경우의 에뮤레이션을 채널형식의 입출력 명령어 체계를 갖는 네이티브 머신으로 할 경우에는 WIO명령이 발행될 때마다 이것을 인터프리트하는 인터훼이스 프로그램이 기동되어 몇개의 WIO명령의 세트를 채널형식의 입출력 명령 또는 신오퍼레이팅 시스템에 대한 입출력 마크로 명령으로 치환하고 있다.
이 경우, WIO명령의 인터프리트에 요하는 소프트웨어의 오우버 헤드가 매우 커지는 것은 명백하다. 에뮤레이션되는 프로그램이 패치처리를 할 경우처럼 그다지 고속성이 요구되지 않을 때에는 상기 방식에 의해서도 커다란 문제는 생기지 않지만, 에뮤레이션되는 프로그램이 온라인 시스템의 프로그램처럼 고속 레스폰스를 요구하고, 또한 입출력 동작이 빈번히 행해질 경우에는 성능적 견지에서 이것을 채용할 수는 없다.
본원 명령의 목적은 이와 같은 종래의 문제점을 개선하고, 입출력 명령의 에뮤레이션을 효율좋게 실행하여, 빈번히 입출력 명령이 발행되어 온라인 프로그램의 에뮤레이션을 적은 오우버 헤드로 실현할 수 있는 데이터처리장치를 제공하는데 있다.
상기 목적을 달성하기 위해 본원 발명의 에뮤레이션은 명령어 체계가 다른 데이터 처리장치의 프로그램을 에뮤레이션하는 마이크로 프로그램 제어의 데이터 처리장치에 있어서, 리에뮤레이션 프로그램중의 슈우퍼바이저코올 명령 또는 직접 오퍼레이팅 시스템에 할입하는 명령을 검출하고, 이 명령의 오퍼랜드치에 의해 입출력 제어 마크로 명령에 의한 명령인지 아닌지를 판정하여, 입출력 제어 마크로 명령에 의한 명령일 때에는 에뮤레이션을 콘트롤하는 프로그램에 할입이 발생하며, 상기 피에뮤레이션 프로그램에서 출력되는 입출력 제어 마크로 명령을 네이티브 머신의 오페레이팅 시스템에 대한 입출력 제어 마크로 명령으로 변환하는 것이다.
제3도는 본원 발명의 일실시예를 나타낸 에뮤레이션시의 프로그램 구조를 나타낸 도면이다.
제3도에 있어서, (10)은 네이티브 머신의 오퍼레이팅 시스템, (11)∼(13)은 네이트브 머신의 유우저 프로그램(UP), (20)은 에뮤레이션 죠브(즉, 타게트 머신의 프로그램에 의한 죠브), (21)은 ECP(Emulation Control program)라고 불리우는 인터훼이스 프로그램, (22)는 에뮤레이션되는 프로그램, (23)은 타게트 머신의 오퍼레이팅 시스템, (24)는 타게트 머신의 유우저 프로그램(UP)이다.
본원 발명에 있어서는 네이티브 머신의 오퍼레이팅 시스템(10)과 타게트 머신의 프로그램(22) 사이에 ECP(21)가 설치되며, 이 ECP(21)가 에뮤레이션되는 프로그램(22)에 대해 EXL 명령(Execute Local)을 발행하여 에뮤레이션의 기동을 하며, 또 타게트 머신의 유우저 프로그램(24)에서 발행되는 입출력 제어 마크로 명령을 네이티브 머신의 오퍼레이팅 시스템(10)에 대한 입출력 제어 마크로 명령으로 변환한다.
제4도는 EXL 명령의 포오매트도이다. EXL 명령은 프로그램 처리상태를 에뮤레이션이 동작하는 모우드로 절환하여, PSW(Program Status Word)나 범용 레지스터등을 설정하는 것이다. 그 포오매트 제4도에 나타낸 것처럼 명령 코오드부(EXL)와, B2부(4비트로 베이스 레지스터로 되는 범용 레지스터를 지정함)와 D2부(12비트에서 2진수치를 나타냄)로 구성된다. 이 명령이 나오면 B2부에서 지정된 범용 레지스터의 내용을 D2부에 더하여 제2오퍼랜드 어드레스로 한다. 제2오퍼랜드 어드레스는 주기억장치의 어드레스를 가리키고 있으며, 여기에 격납되어 있는 제2오퍼랜드는 로우컬 실행리스트이다. 로우컬 실행리스트에는 에뮤레이터의 동작에 필요한 PSW 범용 레지스터, 그밖의 정보가 포함되어 있으며, 그 길이는 40바이트이다. EXL 명령을 실행하면, CPU는 PSW, 범용 레이스터의 값을 로우컬 실행리스트의 내용을 사용하여 설정하고, 그후 로우컬 실행모우드(에뮤레이터 동작 모우드)로 된다.
본원 발명의 에뮤레이션 방식에서는 피에뮤레이션 프로그램(22)내의 유우저 프로그램(24)에서 발행되는 입출력 제어 명령은 피에뮤레이션 프로그램(22)의 오퍼레이팅 시스템(23)의 입출력 제어 마크로 명령의 형태로 발행되는 일, 그리고 통상의 슈우퍼바이저코올 명령(SVC 명령)과 같은 오퍼레이팅 시스템에의 할입명령이라는 것에 착안하여 종래처럼 입출력 명령을 기계어의 레벨에서 에뮤레이션하는 것이 아니라. 마크로 명령의 레벨에서 에뮤레이션을 하도록 했다.
이것에 의해 타게트 머신의 유우저 프로그램(24)내에서 발행된 입출력 제어 마크로 명령을 네이티브 머신의 오퍼레이팅 시스템에 대한 입출력 제어 마크로 명령으로 변환하는 조작이 용이해지는 동시에 복수개의 입출력 명령에 대해 그때마다 처리를 할 필요가 없으므로, 적은 오우버 헤드로 에뮤레이션을 실행할 수 있다.
즉, 본원 발명에서는 에뮤레이션을 실행하는 마이크로 프로그램에 있어서 피에뮤레이션 프로그램(22)중에 슈우퍼바이저코올 명령을 검출했을 때에는 그 명령의 오퍼랜드, 즉 SVC 코오드를 미리 준비된 테이블(로우컬 실행리스트의 엔트리에서 취득됨)에 의해 검색하고, 입출력 제어 마크로 명령에 의한 슈우퍼바이저코올 명령인지 아닌지의 판정을 하고, 입출력 제어 마크로 명령에 의한 슈우퍼바이저코올 명령이었을 때는 피에뮤레이션 프로그램(22)의 오퍼레이팅 시스템(23)에 할입이 발생하지 않으며, 일단 에뮤레이션 모우드를 해제하며, 에뮤레이션 콘트롤 프로그램이라고 불리우며, 네이티브 모우드로 동작하는 인터훼이스 프로그램(ECP21)에 할입을 발생시킨다. 에뮤레이션 콘트롤 프로그램(ECP21)에서는 피에뮤레이션 프로그램(22)에서 발행된 입출력 제어 출력 제어 마크로 명령을 해석하고, 네이티브 모우드 오퍼레이팅 시스템(10)의 입출력 제어 마크로 명령을 변환하여 발생한다.
제5도는 본원 발명의 실시예를 나타낸 에뮤레이션 방식의 처리 플로우차아트 및 로우컬 실행리스트의 설명도이다.
제5a도에는 입출력 제어 마크로 변환을 하기까지의 에뮤레이션 마이크로 프로그램의 동작 플로우가 표시되어 있다.
에뮤레이션 마이크로 프로그램이 타게트 머신의 기계어를 축차 실행해 가는 도중에서 슈우퍼바이저코올 명령(SVC 명령)의 명령 코오드를 검출하면, 제5b도에 나타낸 바와 같은 에뮤레이션 기동시에 설정되어 있는 로우컬 실행리스트(에뮤레이션 모우드 제어 레이블)(41)을 참조하여, 그중의 하나의 앤트리인 SVC 점프 테이블 선두 어드레스를 취득한다(스텝 31,33). 취득한 선두 어드레스와 점프 테이블(42)의 SVC 코오드(SVC 명령의 오퍼랜드치로서, 0∼255의 값을 취한다)에 대응하는 번지 1바이트에 세트되어 있는 값을 참조한다. 이 SVC 점프 테이블(42)의 값은 타게트 머신 오퍼레이팅 시스템(23)의 SVC 코오드를 판정하여, 미리 코오팅되어 있는 것이며, 입출력 제어 마크로 명령에 관한 SVC 코오드에 대응하는 엔트리에는(FF)16가 세트되며, 그밖의 엔트리에는 (FF)16이외의 값이 세트되어 있다.
에뮤레이션 마이크로 프로그램은 테이블(42)의 엔트리의 값을 판별하고, 그 SVC 코오드에 대응하는 엔트리의 값이 (FF)16이 아닐 경우에는 타게트 머신의 오퍼레이팅 시스템(23)내에서 처리가능한 SVC 명령이라고 판정하여, 타게트 머신의 아아키텍츄어로 정해진 SVC 명령의 동작을 하도록 에뮤레이션 한다(스텝 34,35). 엔트리의 값이 (FF)16일 경우에는 입출력 제어 마크로 명령에 관한 SVC 명령이라고 판정하고, 현재의 에뮤레이션 모우드의 상태를 나타내는 PSW를 제5b도에 나타낸 로우컬 실행리스트(41)내의 PSW 퇴피 에이리어에 퇴피시키는 동시에, ECP(21)의 타게트 머신의 입출력 제어 마크로 명령의 변환을 하기 위한 입구 어드레스를 나타내는 ECP 할입신 PSW를 PSW에 로오드하고, 에뮤레이션 모우드를 해제하여, ECP(21)에 제어를 넘긴다(스텝 34∼39).
이와 같이 해서 에뮤레이션 마이크로 프로그램의 제어에 의해, 입출력 제어 마크로 명령에 관한 SVC 명령이 검출되며, ECP(21)에 제어가 건내진다. ECP(21)는 로우컬 실행리스트(41)중의 도우컬 PSW를 참조하여, SVC 명령의 어드레스를 알 수 있으므로 SVC 명령에 부수하는 입출력 제어에 관련하는 파라미더군을 읽을 수 있으며, 용이하게 네이티브 머신의 오퍼레이팅 시스템(10)에 대한 입출력 마크로 명으로 변환할 수 있다. 또 이것에 의해 타게트 머신의 오퍼레이팅 시스템(23)이 입출력 제어 마크로 명령 처리 루우틴은 전혀 동작하지 않아도 되므로, 소프트 웨어의 오우버 헤드는 매우 적어진다.
이상 설명한 것처럼 본원 발명에 의하면 상이한 아아키텍츄어를 갖는 데이터 처리장치의 에뮤레이션에 있어서, 슈우퍼바이저코올 명령에 의해 타게트 머신의 유우저 프로그램에서 발행되는 입출력 제어 마크로 명령을 판별하고, 이것을 인터훼이스 프로그램에 연락하는 기능을 구비했으므로, 기계어 레벨에서 에뮤레이션하는 일 없이, 마이크로 명령 레벨에서 에뮤레이션할 수 있으며, 매우 간단하게 네이티브 머신의 입출력 제어 마크로 명령으로 변환할 수 있게 된다. 따라서 적은 오우버 헤드에 의해 에뮤레이션할 수 있으므로 빈번하게 입출력 명령을 발행하는 온라인 프로그램의 에뮤레이션에 적합하다.

Claims (1)

  1. 명령어 체계가 다른 데이터 처리장치의 프로그램을 에뮤레이션하는 마이크로 프로그램 제어의 데이터 처리장치에 있어서, 피에뮤레이션 프로그램(22)중의 슈우퍼 바이저코올 명령 또는 직접 오퍼레이팅 시스템(23)에 할입하는 명령을 검출하며, 이 명령의 오퍼랜드치에 의해 입출력 제어 마크로 명령에 의한 명령인지 아닌지를 판정하여, 입출력 제어 마크로 명령에 의한 명령일 때는 에뮤레이션을 콘트롤하는 프로그램(21)에 할입이발생하고, 상기 피에뮤레이션 프로그램(22)에서 출력되는 입출력 제어 마크로 명령을 네이티브 머신의 오퍼레이팅 시스템(10)에 대한 입출력 제어 마크로 명령으로 변환하는 것을 특징으로 하는 데이터 처리장치.
KR1019840003963A 1983-07-11 1984-07-07 데이터 처리장치 KR900000092B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP83-126322 1983-07-11
JP58126322A JPS6017539A (ja) 1983-07-11 1983-07-11 エミユレ−シヨン方式

Publications (2)

Publication Number Publication Date
KR850001573A KR850001573A (ko) 1985-03-30
KR900000092B1 true KR900000092B1 (ko) 1990-01-19

Family

ID=14932312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019840003963A KR900000092B1 (ko) 1983-07-11 1984-07-07 데이터 처리장치

Country Status (3)

Country Link
US (1) US4812975A (ko)
JP (1) JPS6017539A (ko)
KR (1) KR900000092B1 (ko)

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5027273A (en) * 1985-04-10 1991-06-25 Microsoft Corporation Method and operating system for executing programs in a multi-mode microprocessor
US5088033A (en) * 1986-04-28 1992-02-11 Xerox Corporation Data processing system emulation in a window with a coprocessor and I/O emulation
GB2203572B (en) * 1987-03-24 1991-11-27 Insignia Solutions Limited Improvements in data processing means
US5226122A (en) * 1987-08-21 1993-07-06 Compaq Computer Corp. Programmable logic system for filtering commands to a microprocessor
JPH0628036B2 (ja) * 1988-02-01 1994-04-13 インターナショナル・ビジネス・マシーンズ・コーポレーシヨン シミュレーシヨン方法
CA2002201C (en) * 1988-12-06 1999-04-27 John Charles Goettelmann Translation technique
US5369767A (en) * 1989-05-17 1994-11-29 International Business Machines Corp. Servicing interrupt requests in a data processing system without using the services of an operating system
US5283868A (en) * 1989-05-17 1994-02-01 International Business Machines Corp. Providing additional system characteristics to a data processing system through operations of an application program, transparently to the operating system
US5113522A (en) * 1989-05-17 1992-05-12 International Business Machines Corporation Data processing system with system resource management for itself and for an associated alien processor
CA2009780C (en) * 1989-05-17 1999-07-27 Ernest D. Baker Method and apparatus for the direct transfer of information between application programs running on distinct processors without utilizing the services of one or both operating systems
US5325517A (en) * 1989-05-17 1994-06-28 International Business Machines Corporation Fault tolerant data processing system
US5155809A (en) * 1989-05-17 1992-10-13 International Business Machines Corp. Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware
US5077657A (en) * 1989-06-15 1991-12-31 Unisys Emulator Assist unit which forms addresses of user instruction operands in response to emulator assist unit commands from host processor
US5276811A (en) * 1989-06-30 1994-01-04 Icom, Inc. Method for emulating programmable logic controller by exchanging information between debug program which emulates I/O devices and ladder logic program
JP2708608B2 (ja) * 1990-05-25 1998-02-04 富士通株式会社 仮想計算機のipl処理方式
US5519873A (en) * 1990-08-31 1996-05-21 International Business Machines Corporation Apparatus for switching digital command execution between a general purpose microprocessor and dedicted execution logic
SG52380A1 (en) 1991-09-23 1998-09-28 Intel Corp A computer system and method for executing interrupt instructions in two operating modes
IL105638A0 (en) * 1992-05-13 1993-09-22 Southwest Bell Tech Resources Storage controlling system and method for transferring information
JPH0773046A (ja) * 1992-12-07 1995-03-17 Intel Corp コンピュータシステムで回路をエミュレートする 方法及び装置
US5452456A (en) * 1992-12-18 1995-09-19 Apple Computer, Inc. Apparatus for executing a plurality of program segments having different object code types in a single program or processor environment
WO1994027215A1 (en) * 1993-05-07 1994-11-24 Apple Computer, Inc. Method for decoding guest instructions for a host computer
WO1994027214A1 (en) * 1993-05-07 1994-11-24 Apple Computer, Inc. Method for decoding sequences of guest instructions for a host computer
JP3248992B2 (ja) * 1993-07-13 2002-01-21 富士通株式会社 マルチプロセッサ
US5768598A (en) * 1993-09-13 1998-06-16 Intel Corporation Method and apparatus for sharing hardward resources in a computer system
US5574887A (en) * 1993-09-20 1996-11-12 Apple Computer, Inc. Apparatus and method for emulation routine pointer prefetch
US5408622A (en) * 1993-09-23 1995-04-18 Apple Computer, Inc. Apparatus and method for emulation routine control transfer via host jump instruction creation and insertion
US5619682A (en) * 1993-09-28 1997-04-08 Bull Hn Information Systems Inc. Executing network layered communications of a first system on a second system using a communication bridge transparent to the different communication layers
US5481684A (en) * 1994-01-11 1996-01-02 Exponential Technology, Inc. Emulating operating system calls in an alternate instruction set using a modified code segment descriptor
US5542059A (en) * 1994-01-11 1996-07-30 Exponential Technology, Inc. Dual instruction set processor having a pipeline with a pipestage functional unit that is relocatable in time and sequence order
US5781750A (en) * 1994-01-11 1998-07-14 Exponential Technology, Inc. Dual-instruction-set architecture CPU with hidden software emulation mode
EP0667573A1 (en) * 1994-02-14 1995-08-16 International Business Machines Corporation Incorporation of services written in one operating system environment into another operating system environment
GB9405729D0 (en) * 1994-03-23 1994-05-11 Vantage Analysis Systems Europ Software execution systems
US6179488B1 (en) 1994-03-23 2001-01-30 Synopsys, Inc. Software execution systems
US5481693A (en) * 1994-07-20 1996-01-02 Exponential Technology, Inc. Shared register architecture for a dual-instruction-set CPU
US5685009A (en) * 1994-07-20 1997-11-04 Exponential Technology, Inc. Shared floating-point registers and register port-pairing in a dual-architecture CPU
US5664156A (en) * 1994-09-16 1997-09-02 Philips Electronics North America Corporation Microcontroller with a reconfigurable program status word
US5956680A (en) * 1995-06-02 1999-09-21 National Semiconductor Corporation Virtual audio generation and capture in a computer
US5845133A (en) * 1995-07-06 1998-12-01 Cyrix Corporation Virtualized functions within a microprocessor
US5768562A (en) * 1995-09-26 1998-06-16 Altera Corporation Methods for implementing logic in auxiliary components associated with programmable logic array devices
US5799169A (en) * 1995-10-02 1998-08-25 Chromatic Research, Inc. Emulated registers
US5838987A (en) * 1995-10-06 1998-11-17 National Semiconductor Corporation Processor for eliminating external isochronous subsystems
US5786825A (en) * 1995-12-13 1998-07-28 National Semiconductor Virtual display subsystem in a computer
US7464044B2 (en) * 1998-12-08 2008-12-09 International Business Machines Corporation Method and system for using emulation objects for developing point of sale
US6954923B1 (en) 1999-01-28 2005-10-11 Ati International Srl Recording classification of instructions executed by a computer
US8074055B1 (en) 1999-01-28 2011-12-06 Ati Technologies Ulc Altering data storage conventions of a processor when execution flows from first architecture code to second architecture code
US6826748B1 (en) 1999-01-28 2004-11-30 Ati International Srl Profiling program execution into registers of a computer
US8121828B2 (en) * 1999-01-28 2012-02-21 Ati Technologies Ulc Detecting conditions for transfer of execution from one computer instruction stream to another and executing transfer on satisfaction of the conditions
US8127121B2 (en) 1999-01-28 2012-02-28 Ati Technologies Ulc Apparatus for executing programs for a first computer architechture on a computer of a second architechture
US7275246B1 (en) 1999-01-28 2007-09-25 Ati International Srl Executing programs for a first computer architecture on a computer of a second architecture
US7013456B1 (en) 1999-01-28 2006-03-14 Ati International Srl Profiling execution of computer programs
US7111290B1 (en) 1999-01-28 2006-09-19 Ati International Srl Profiling program execution to identify frequently-executed portions and to assist binary translation
US7941647B2 (en) 1999-01-28 2011-05-10 Ati Technologies Ulc Computer for executing two instruction sets and adds a macroinstruction end marker for performing iterations after loop termination
US7065633B1 (en) 1999-01-28 2006-06-20 Ati International Srl System for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU
US6978462B1 (en) 1999-01-28 2005-12-20 Ati International Srl Profiling execution of a sequence of events occuring during a profiled execution interval that matches time-independent selection criteria of events to be profiled
US6487587B1 (en) * 1999-03-01 2002-11-26 Sun Microsystems, Inc. Method and system for data processing by proxy
US6779107B1 (en) 1999-05-28 2004-08-17 Ati International Srl Computer execution by opportunistic adaptation
US6549959B1 (en) 1999-08-30 2003-04-15 Ati International Srl Detecting modification to computer memory by a DMA device
US6934832B1 (en) 2000-01-18 2005-08-23 Ati International Srl Exception mechanism for a computer
US7331040B2 (en) * 2002-02-06 2008-02-12 Transitive Limted Condition code flag emulation for program code conversion
GB0202728D0 (en) * 2002-02-06 2002-03-27 Transitive Technologies Ltd Condition code flag emulation for program code conversion
US20080271025A1 (en) * 2007-04-24 2008-10-30 Stacksafe, Inc. System and method for creating an assurance system in a production environment
US20080271018A1 (en) * 2007-04-24 2008-10-30 Andrew Gross System and Method for Managing an Assurance System
US8073676B2 (en) * 2007-09-21 2011-12-06 Sony Computer Entertainment Inc. Method and apparatus for emulation enhancement
JP5491952B2 (ja) * 2010-05-07 2014-05-14 カヤバ工業株式会社 空圧緩衝器

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2253435A5 (ko) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
US3955180A (en) * 1974-01-02 1976-05-04 Honeywell Information Systems Inc. Table driven emulation system
US4031517A (en) * 1974-04-24 1977-06-21 Honeywell Information Systems, Inc. Emulation of target system interrupts through the use of counters
US4084235A (en) * 1975-04-14 1978-04-11 Honeywell Information Systems Inc. Emulation apparatus
US4482953A (en) * 1980-05-30 1984-11-13 Fairchild Camera & Instrument Corporation Computer with console addressable PLA storing control microcode and microinstructions for self-test of internal registers and ALU
US4370709A (en) * 1980-08-01 1983-01-25 Tracor, Inc. Computer emulator with three segment microcode memory and two separate microcontrollers for operand derivation and execution phases
US4434462A (en) * 1980-11-24 1984-02-28 Texas Instruments Incorporated Off-chip access for psuedo-microprogramming in microprocessor
JPS59501684A (ja) * 1982-10-22 1984-10-04 インタ−ナシヨナル・ビジネス・マシ−ンズ・コ−ポレ−シヨン 目的命令ストリ−ムへ殆んど実時間で插入するためのソ−スおよび目的命令ストリ−ムの外部における加速式命令写像
US4727480A (en) * 1984-07-09 1988-02-23 Wang Laboratories, Inc. Emulation of a data processing system

Also Published As

Publication number Publication date
JPS6017539A (ja) 1985-01-29
US4812975A (en) 1989-03-14
KR850001573A (ko) 1985-03-30

Similar Documents

Publication Publication Date Title
KR900000092B1 (ko) 데이터 처리장치
US5781758A (en) Software emulation system with reduced memory requirements
US5129064A (en) System and method for simulating the I/O of a processing system
Richards The portability of the BCPL compiler
US8578351B2 (en) Hybrid mechanism for more efficient emulation and method therefor
US5764962A (en) Emulation of asynchronous signals using a branch mechanism
US7010671B2 (en) Computer system and method for executing interrupt instructions in two operating modes
KR101159603B1 (ko) Risc 프로세서 장치 및 그의 부동 소수점 스택 조작 에뮬레이션 방법
CN100428184C (zh) 具有自驱动功能的指令仿真解析系统及其实现方法
EP0310600B1 (en) Arrangement for software emulation
KR920003044B1 (ko) 가상 머신 시스템용의 게스트 머신 실행 제어 시스템
EP0458626B1 (en) Initial program loading system
Hansen Concurrent PASCAL machine
JPS60142428A (ja) エミユレ−シヨン方式
EP0327197B1 (en) I/O simulation
JPH0754469B2 (ja) 仮想計算機システムのための入出力命令実行装置
JPS595354A (ja) デ−タ処理装置
Hughes An applied approach to teaching the fundamentals of operating systems
Ruschitzka An operating systems implementation project for an undergraduate course
JP2003099254A (ja) 異種実行環境における計算機システム構成方法、および、異種実行環境で実行させるためのプログラム
Trimble Jr Emulation of the IBM system/360 on a microprogrammable computer
Hall A microprogrammed P‐CODE interpreter for the data general eclipse S/130 minicomputer
Crain et al. Modeling efficiently with GPSS/H
JPH0638238B2 (ja) 仮想計算機システム
JP2899009B2 (ja) 情報処理装置

Legal Events

Date Code Title Description
A201 Request for examination
G160 Decision to publish patent application
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20021113

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee