KR20100037670A - 업무 프로그램의 자동 테스트 과정 동안 usb 장치의 동작을 가상적으로 대행하는 에뮬레이터 및 그 동작 방법 - Google Patents
업무 프로그램의 자동 테스트 과정 동안 usb 장치의 동작을 가상적으로 대행하는 에뮬레이터 및 그 동작 방법 Download PDFInfo
- Publication number
- KR20100037670A KR20100037670A KR1020080096875A KR20080096875A KR20100037670A KR 20100037670 A KR20100037670 A KR 20100037670A KR 1020080096875 A KR1020080096875 A KR 1020080096875A KR 20080096875 A KR20080096875 A KR 20080096875A KR 20100037670 A KR20100037670 A KR 20100037670A
- Authority
- KR
- South Korea
- Prior art keywords
- program
- usb
- information
- hub
- usb device
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000004891 communication Methods 0.000 claims abstract description 45
- 230000004044 response Effects 0.000 claims description 15
- 230000006399 behavior Effects 0.000 claims 1
- 238000011017 operating method Methods 0.000 abstract 1
- 101100010418 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) DSF1 gene Proteins 0.000 description 18
- 102100034033 Alpha-adducin Human genes 0.000 description 12
- 101000799076 Homo sapiens Alpha-adducin Proteins 0.000 description 12
- 101000629598 Rattus norvegicus Sterol regulatory element-binding protein 1 Proteins 0.000 description 12
- 238000012546 transfer Methods 0.000 description 10
- 101150018047 HBAD gene Proteins 0.000 description 8
- 101100533506 Schizosaccharomyces pombe (strain 972 / ATCC 24843) sif1 gene Proteins 0.000 description 6
- 102100026758 Serine/threonine-protein kinase 16 Human genes 0.000 description 5
- 101150108263 Stk16 gene Proteins 0.000 description 5
- 101150077668 TSF1 gene Proteins 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 102100031699 Choline transporter-like protein 1 Human genes 0.000 description 3
- 101000940912 Homo sapiens Choline transporter-like protein 1 Proteins 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 1
- 101000659879 Homo sapiens Thrombospondin-1 Proteins 0.000 description 1
- 102100023704 Spermatogenic leucine zipper protein 1 Human genes 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1218—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
- G06F3/122—Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
- G06K19/067—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
- G06K19/07—Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
- G06K19/077—Constructional details, e.g. mounting of circuits in the carrier
- G06K19/0772—Physical layout of the record carrier
- G06K19/07732—Physical layout of the record carrier the record carrier having a housing or construction similar to well-known portable memory devices, such as SD cards, USB or memory sticks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- Finance (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Mathematical Physics (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
Claims (20)
- 제1 USB(universal serial bus) 포트(port)를 통하여, 업무 프로그램이 설치된 PC(personal computer)에 접속되는 슬레이브 컨트롤러;통신 포트를 통하여, 외부의 통신망에 접속되는 네트워크 인터페이스 장치;제2 USB 포트를 통하여, 외부의 USB 허브(hub)에 접속되고, 상기 USB 허브에 접속한 적어도 하나의 USB 장치에 주소를 할당하고, 상기 적어도 하나의 USB 장치로부터 장치 정보 및 상세 정보를 수신하는 호스트 컨트롤러;상기 적어도 하나의 USB 장치의 동작을 가상적으로 대행하는 제1 가상의 USB 허브 동작, 또는 상기 PC와 상기 적어도 하나의 USB 장치 간의 통신을 상호 인터페이스 하는 제2 가상의 USB 허브 동작을 실행하기 위한 제어 프로그램들을 저장하는 메모리; 및상기 제어 프로그램들 중 일부를 실행시키고, 상기 호스트 컨트롤러로부터 수신되는 상기 장치 정보 및 상기 상세 정보에 기초하여 상기 적어도 하나의 USB 장치를 인식하는 CPU(central processor unit)를 포함하고,상기 CPU는 상기 슬레이브 컨트롤러를 통하여 상기 장치 정보 및 상기 상세 정보를 상기 PC에 전송함으로써 상기 적어도 하나의 USB 장치의 접속 상태를 상기 PC에 통보하고, 상기 슬레이브 컨트롤러를 통하여 상기 PC로부터 상기 적어도 하나의 USB 장치에 대한 동작 요청 데이터를 수신할 때, 상기 네트워크 인터페이스 장치로부터 재현 명령을 수신하였는지의 여부에 따라, 상기 제1 또는 제2 가상의 USB 허브 동작을 선택적으로 실행하고,상기 CPU가 상기 제1 가상의 USB 허브 동작을 실행하는 동안 상기 적어도 하나의 USB 장치는 동작을 정지하고, 상기 PC는 상기 CPU의 상기 제1 가상의 USB 허브 동작에 의해 상기 적어도 하나의 USB 장치가 동작하는 것으로 인식하고,상기 업무 프로그램이 상기 PC에서 실행될 때, 상기 업무 프로그램에 의해 처리되는 업무들 중 일부는 상기 적어도 하나의 USB 장치의 동작과 관련한 업무를 포함하는 에뮬레이터.
- 제1항에 있어서,상기 PC에는, 상기 업무 프로그램이 실행되는 동안 발생하는 이벤트들을 기록하고, 기록한 상기 이벤트들을 상기 업무 프로그램에서 재현함으로써 상기 업무 프로그램을 자동으로 실행시켜 테스트하는 자동 테스트 프로그램이 더 설치되고,상기 PC에서 상기 자동 테스트 프로그램에 의해 상기 이벤트들이 상기 업무 프로그램에서 재현될 때, 상기 PC는 상기 재현 명령을 출력하고,상기 네트워크 인터페이스 장치는 상기 통신망을 통하여 접속한 상기 PC로부터 상기 재현 명령을 수신하여 상기 CPU에 출력하는 에뮬레이터.
- 제2항에 있어서,상기 CPU는, 상기 재현 명령을 수신한 후 상기 동작 요청 데이터를 수신할 때, 상기 네트워크 인터페이스 장치를 통하여 상기 PC에 상기 적어도 하나의 USB 장치에 대한 테스트용 입력 데이터를 요청하여 수신하고, 상기 테스트용 입력 데이터에 기초하여 상기 테스트용 입력 정보를 생성하여 상기 슬레이브 컨트롤러를 통하여 상기 PC에 전송함으로써, 상기 제1 가상의 USB 허브 동작을 실행하고,상기 테스트용 입력 데이터는 상기 자동 테스트 프로그램에 의해 생성되고,상기 PC가 상기 슬레이브 컨트롤러로부터 수신한 상기 테스트용 입력 정보는, 상기 이벤트들이 상기 업무 프로그램에서 재현되는 동안 상기 업무 프로그램에 적용되는 에뮬레이터.
- 제2항에 있어서,상기 PC에서 상기 자동 테스트 프로그램에 의해 상기 이벤트들이 기록될 때, 상기 PC는 기록 명령을 더 출력하고,상기 네트워크 인터페이스 장치는 상기 통신망을 통하여 상기 PC로부터 상기 기록 명령을 수신하여 상기 CPU에 출력하고,상기 CPU는 상기 기록 명령을 수신한 후 상기 동작 요청 데이터를 수신할 때, 상기 호스트 컨트롤러를 통하여 상기 적어도 하나의 USB 장치의 동작에 따른 입력 데이터를 수신하고, 상기 입력 데이터에 기초하여 생성한 제1 및 제2 입력 정보를 상기 슬레이브 컨트롤러 및 상기 네트워크 인터페이스 장치를 통하여 각각 상기 PC에 전송하고, 상기 동작 요청 데이터만을 수신할 때, 상기 제1 입력 정보를 상기 슬레이브 컨트롤러를 통하여 상기 PC에 전송함으로써, 상기 제2 가상의 USB 허브 동작을 실행하고,상기 PC가 상기 네트워크 인터페이스 장치를 통하여 상기 CPU로부터 수신한 상기 제2 입력 정보는 상기 자동 테스트 프로그램에 의해 상기 이벤트들 중 하나로서 기록되고,상기 PC가 상기 슬레이브 컨트롤러로부터 수신한 상기 제1 입력 정보는 상기 업무 프로그램이 실행되는 동안 상기 업무 프로그램에 적용되는 에뮬레이터.
- 제1항에 있어서,상기 장치 정보는, 상기 적어도 하나의 USB 장치의 이름, 상기 적어도 하나의 USB 장치의 USB 스펙 버전(spec version) 정보, 및 상기 적어도 하나의 USB 장치에 전송되는 통신 패킷(packet)의 최대 길이 정보를 포함하고,상기 상세 정보는, 상기 적어도 하나의 USB 장치에 대한, 제조회사 ID(identification), 제품번호, 펌웨어(firm ware) 버전 정보, 및 제조회사 이름을 포함하고,상기 호스트 컨트롤러는, 상기 적어도 하나의 USB 장치에 할당한 주소와 함께 상기 장치 정보 및 상기 상세 정보를 저장하고, 상기 CPU가 상기 제2 가상의 USB 허브 동작을 실행할 때, 상기 CPU와 상기 적어도 하나의 USB 장치 간의 통신을 인터페이스하고, 상기 CPU와 상기 적어도 하나의 USB 장치 간의 통신을 인터페이스 할 때, 상기 주소를 이용하여 상기 적어도 하나의 USB 장치를 식별하는 에뮬레이터.
- 제1항에 있어서,상기 CPU는 상기 적어도 하나의 USB 장치의 접속 상태를 상기 PC에 통보한 후, 상기 슬레이브 컨트롤러를 통하여 상기 PC로부터 상기 적어도 하나의 USB 장치에 할당된 추가의 주소를 수신하고, 상기 추가의 주소와 함께 상기 장치 정보 및 상기 상세 정보를 저장하고, 상기 PC로부터 상기 동작 요청 데이터를 수신할 때, 상기 동작 요청 데이터에 포함된 상기 추가의 주소에 기초하여, 상기 적어도 하나의 USB 장치를 식별하는 에뮬레이터.
- 제6항에 있어서,상기 PC에는 상기 적어도 하나의 USB 장치에 대응하는 드라이버 프로그램이 더 설치되고, 상기 PC가 상기 장치 정보 및 상기 상세 정보를 수신할 때 상기 드라이버 프로그램이 실행되고,상기 제어 프로그램들 중 적어도 하나는, 상기 적어도 하나의 USB 장치에 대응하는 가상 드라이버 프로그램이고,상기 CPU는 상기 장치 정보 및 상기 상세 정보를 수신할 때, 상기 가상 드라이버 프로그램을 실행시키고, 상기 CPU가 상기 제2 가상의 USB 허브 동작을 실행하는 동안 상기 가상 드라이버 프로그램을 통하여 상기 적어도 하나의 USB 장치의 동작을 제어하는 에뮬레이터.
- 제7항에 있어서,나머지 제어 프로그램들은,상기 호스트 컨트롤러로부터 수신된 상기 장치 정보 및 상기 상세 정보에 기초하여 상기 적어도 하나의 USB 장치를 인식하고, 상기 적어도 하나의 USB 장치에 대응하는 상기 가상 드라이버 프로그램을 검색하고, 검색된 상기 가상 드라이버 프로그램을 실행시키는 운영체제 프로그램과,상기 가상 드라이버 프로그램의 실행이 완료된 후, 상기 가상 드라이버 프로그램으로부터 상기 장치 정보 및 상기 상세 정보를 수신하고, 상기 추가의 주소와 상기 장치 정보 및 상기 상세 정보를 기록하고, 상기 가상 드라이버 프로그램을 통하여, 상기 적어도 하나의 USB 장치의 동작을 제어하거나 또는 상기 적어도 하나의 USB 장치의 동작에 따른 입력 데이터를 수신하고, 상기 네트워크 인터페이스 장치를 통하여 상기 PC와 통신하는 주제어 프로그램과,상기 PC가 상기 에뮬레이터를 가상의 USB 허브로 인식하도록 동작하고, 상기 슬레이브 컨트롤러와 상기 주제어 프로그램 간의 통신을 인터페이스 하는 논리 허브 프로그램을 포함하는 에뮬레이터.
- 제7항에 있어서,상기 CPU가 추가의 가상 드라이버 프로그램을 상기 메모리에 저장하도록, 상기 CPU에 상기 추가의 가상 드라이버 프로그램을 입력하는 입력 장치; 및외부 전원에 기초하여 상기 내부 전원을 생성하고, 상기 내부 전원을 상기 슬레이브 컨트롤러, 상기 네트워크 인터페이스 장치, 상기 호스트 컨트롤러, 상기 메모리, 상기 CPU, 및 상기 입력 장치에 공급하는 전원 공급부를 더 포함하고,상기 CPU는 상기 내부 전원을 공급받을 때, 상기 제어 프로그램들 중 일부를 실행시키는 에뮬레이터.
- 업무 프로그램이 설치된 PC(personal computer)에 접속되는 단계;USB 포트를 통하여 접속된 외부의 USB 허브에 USB 장치가 접속될 때, 상기 USB 장치를 인식하는 단계;상기 PC에 상기 USB 장치의 접속 상태를 통보하는 단계;상기 PC로부터 상기 USB 장치에 대한 동작 요청 신호를 수신하는 단계;외부의 통신망을 통하여 재현 명령을 수신하였는지의 여부를 판단하는 단계;상기 재현 명령을 수신한 경우, 테스트용 입력 정보를 상기 PC에 출력함으로써, 상기 USB 장치의 동작을 가상적으로 대행하는 제1 가상의 USB 허브 동작을 실행하는 단계; 및상기 재현 명령을 수신하지 않은 경우, 동작 제어 신호를 상기 USB 장치에 출력하고, 상기 USB 장치의 동작에 따른 입력 정보를 상기 PC에 출력함으로써, 상기 PC와 상기 USB 장치 간의 통신을 상호 인터페이스 하는 제2 가상의 USB 허브 동작을 실행하는 단계를 포함하고,상기 업무 프로그램이 상기 PC에서 실행될 때, 상기 업무 프로그램에 의해 처리되는 업무들 중 일부는 상기 USB 장치의 동작과 관련한 업무를 포함하는 에뮬레이터의 동작 방법.
- 제10항에 있어서,상기 USB 허브에 추가의 USB 장치가 접속될 때마다, 상기 인식 단계 및 상기 통보 단계를 반복하는 단계를 더 포함하는 에뮬레이터의 동작 방법.
- 제10항에 있어서,상기 PC로부터 상기 USB 장치에 대한 추가의 동작 요청 신호를 수신할 때마다, 상기 판단 단계와 상기 제1 가상의 USB 허브 동작을 실행하는 단계를 반복하거나, 또는 상기 판단 단계와 상기 제2 가상의 USB 허브 동작을 실행하는 단계를 반복하는 단계를 더 포함하는 에뮬레이터의 동작 방법.
- 제10항에 있어서,상기 에뮬레이터는 슬레이브 컨트롤러, 메모리, CPU, 및 전원 공급부를 포함하고, 상기 CPU는 상기 전원 공급부로부터 내부 전원이 공급될 때, 상기 메모리에 저장된, 상기 제1 또는 제2 가상의 USB 허브 동작을 실행하기 위한 제어 프로그램들 중 일부인, 논리 허브 프로그램, 주제어 프로그램, 및 운영체제 프로그램을 실행하고,상기 PC에 접속되는 단계는,상기 에뮬레이터의 추가의 USB 포트가 상기 PC의 USB 포트에 연결된 후, 상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 PC의 호스트 컨트롤러로부 터 제1 요청 데이터를 수신하는 단계;상기 CPU에서 실행되는 상기 논리 허브 프로그램에 의해, 상기 제1 요청 데이터에 대한 응답으로서, 상기 논리 허브 프로그램에 의해 구현되는 가상의 USB 허브에 대한 장치 정보 데이터를 생성하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 장치 정보 데이터를 상기 호스트 컨트롤러에 전송하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 호스트 컨트롤러로부터 허브 주소를 수신하는 단계;상기 CPU에서 실행되는 상기 논리 허브 프로그램에 의해, 상기 허브 주소를 기록하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 호스트 컨트롤러로부터 제2 요청 데이터를 수신하는 단계;상기 논리 허브 프로그램에 의해, 상기 제2 요청 데이터에 대한 응답으로서, 상세 정보 데이터를 생성하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 상세 정보 데이터를 상기 호스트 컨트롤러에 전송하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 호스트 컨트롤러로부터 제3 요청 데이터를 수신하는 단계;상기 논리 허브 프로그램에 의해, 상기 제3 요청 데이터에 대한 응답으로서, 허브 정보 데이터를 생성하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 허브 정보 데이터를 상기 호스트 컨트롤러에 전송하는 단계;상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 호스트 컨트롤러로부터 허브 포트 초기화 명령을 수신하는 단계;상기 논리 허브 프로그램에 의해, 상기 허브 포트 초기화 명령에 대한 응답으로서, 초기화 완료 데이터를 생성하는 단계; 및상기 CPU에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 초기화 완료 데이터를 상기 호스트 컨트롤러에 전송하는 단계를 포함하고,상기 허브 정보 데이터는 상기 가상의 USB 허브의 포트 개수와 전원 공급 방식에 대한 정보를 포함하고,상기 호스트 컨트롤러는 상기 장치 정보 데이터 및 상기 상세 정보 데이터에 기초하여, 상기 에뮬레이터를 상기 가상의 USB 허브로 인식하는 에뮬레이터의 동작 방법.
- 제13항에 있어서,상기 CPU로부터 출력되는 상기 장치 정보 데이터, 상기 상세 정보 데이터, 상기 허브 정보 데이터, 및 상기 초기화 완료 데이터는 상기 슬레이브 컨트롤러에 의해 설정된 통신 프로토콜 형식의 제1 통신 신호들로 각각 변환되어 상기 호스트 컨트롤러에 전송되고, 상기 호스트 컨트롤러로부터 출력되는 제2 통신 신호들은 상기 슬레이브 컨트롤러에 의해 논리 데이터 형식의 상기 제1 내지 제3 요청 데이터 들과 상기 허브 포트 초기화 명령으로 각각 변환되어 상기 CPU에 전송되는 에뮬레이터의 동작 방법.
- 제10항에 있어서,상기 에뮬레이터는 메모리, CPU, 및 호스트 컨트롤러, 및 전원 공급부를 포함하고, 상기 CPU는 상기 전원 공급부로부터 내부 전원이 공급될 때, 상기 메모리에 저장된, 상기 제1 또는 제2 가상의 USB 허브 동작을 실행하기 위한 제어 프로그램들 중 일부인, 논리 허브 프로그램, 주제어 프로그램, 및 운영체제 프로그램을 실행하고,상기 USB 장치를 인식하는 단계는,상기 호스트 컨트롤러에 의해, 제1 정보 요청 신호를 상기 USB 장치에 전송하는 단계;상기 호스트 컨트롤러에 의해, 상기 USB 장치로부터 장치 정보를 수신하는 단계;상기 호스트 컨트롤러에 의해, 상기 USB 장치에 대한 주소를 할당하는 단계;상기 호스트 컨트롤러에 의해, 상기 USB 장치에 상기 주소를 전송하는 단계;상기 호스트 컨트롤러에 의해, 제2 정보 요청 신호를 상기 USB 장치에 전송하는 단계;상기 호스트 컨트롤러에 의해, 상기 USB 장치로부터 상세 정보를 수신하는 단계;상기 호스트 컨트롤러에 의해, 상기 주소, 상기 장치 정보, 및 상기 상세 정보를 저장하는 단계;상기 호스트 컨트롤러에 의해, 상기 장치 정보 및 상기 상세 정보를 상기 CPU에 출력하는 단계;상기 CPU에서 실행되는 상기 운영체제 프로그램에 의해, 상기 장치 정보 및 상기 상세 정보에 기초하여, 상기 USB 장치를 인식하고, 상기 USB 장치에 대응하는 가상 드라이버 프로그램을 상기 메모리에서 검색하는 단계; 및상기 운영체제 프로그램에 의해, 검색된 상기 가상 드라이버 프로그램을 실행시키는 단계를 포함하는 에뮬레이터의 동작 방법.
- 제15항에 있어서,상기 장치 정보는, 상기 USB 장치의 이름, 상기 USB 장치의 USB 스펙 버전 정보, 및 상기 USB 장치에 전송되는 통신 패킷의 최대 길이 정보를 포함하고,상기 상세 정보는, 상기 USB 장치에 대한, 제조회사 ID, 제품번호, 펌웨어 버전 정보, 및 제조회사 이름을 포함하는 에뮬레이터의 동작 방법.
- 제15항에 있어서,상기 에뮬레이터는 슬레이브 컨트롤러를 더 포함하고,상기 PC에 상기 USB 장치의 접속 상태를 통보하는 단계는,상기 가상 드라이버 프로그램의 실행이 완료될 때, 상기 CPU에서 실행되는 상기 주제어 프로그램에 의해, 접속 통보 데이터를 생성하는 단계;상기 논리 허브 프로그램에 의해, 상기 주제어 프로그램으로부터 수신되는 상기 접속 통보 데이터를 상기 슬레이브 컨트롤러를 통하여 상기 PC의 호스트 컨트롤러에 전송하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 PC의 호스트 컨트롤러로부터 제1 장치 정보 요청 데이터를 수신하는 단계;상기 주제어 프로그램에 의해, 상기 논리 허브 프로그램을 통하여 수신되는 상기 제1 장치 정보 요청 데이터에 응답하여, 상기 가상 드라이버 프로그램으로부터 수신한 상기 장치 정보를 상기 논리 허브 프로그램에 전달하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 장치 정보를 상기 PC의 호스트 컨트롤러에 전송하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 PC의 호스트 컨트롤러로부터 상기 USB 장치에 대한 추가의 주소를 수신하는 단계;상기 주제어 프로그램에 의해, 상기 논리 허브 프로그램을 통하여 수신되는 상기 추가의 주소를 상기 가상 드라이버 프로그램으로부터 수신한 상기 장치 정보 및 상기 상세 정보와 함께 기록하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 PC의 호스트 컨트롤러로부터 제2 장치 정보 요청 데이터를 수신하는 단계;상기 주제어 프로그램에 의해, 상기 논리 허브 프로그램을 통하여 수신되는 상기 제2 장치 정보 요청 데이터에 응답하여, 상기 상세 정보를 상기 논리 허브 프 로그램에 전달하는 단계; 및상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 상세 정보를 상기 PC의 호스트 컨트롤러에 전송하는 단계를 포함하는 에뮬레이터의 동작 방법.
- 제17항에 있어서,상기 장치 정보를 상기 PC의 호스트 컨트롤러에 전송하는 단계와, 상기 상세 정보를 상기 PC의 호스트 컨트롤러에 전송하는 단계에 의해, 상기 PC의 호스트 컨트롤러가 수신한 상기 장치 정보 및 상기 상세 정보는, 상기 PC의 CPU에서 실행되는 상기 PC의 운영체제 프로그램에 전달되고, 상기 PC의 운영체제 프로그램이, 상기 장치 정보 및 상기 상세 정보에 기초하여, 상기 USB 장치를 인식하고, 상기 USB 장치에 대응하는 드라이버 프로그램을 상기 PC의 메모리에서 검색하여 실행시키고,상기 PC의 호스트 컨트롤러가, 상기 업무 프로그램의 요청에 따라 상기 드라이버 프로그램에 의해 생성된 USB 장치 제어 데이터에, 상기 추가의 주소를 포함시켜 상기 동작 요청 신호를 생성하고, 상기 동작 요청 신호를 상기 슬레이브 컨트롤러에 전송하는 에뮬레이터의 동작 방법.
- 제13항에 있어서,상기 PC에는, 상기 업무 프로그램이 실행되는 동안 발생하는 이벤트들을 기록하고, 기록한 상기 이벤트들을 상기 업무 프로그램에서 재현함으로써 상기 업무 프로그램을 자동으로 실행시켜 테스트하는 자동 테스트 프로그램이 더 설치되고,상기 에뮬레이터는 통신망에 연결되는 네트워크 인터페이스 장치를 더 포함하고,상기 제1 가상의 USB 허브 동작을 실행하는 단계는,상기 슬레이브 컨트롤러에 의해 상기 동작 요청 신호를 논리 데이터 형식의 동작 요청 데이터로 변환하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러로부터 수신되는 상기 동작 요청 데이터를 상기 주제어 프로그램에 전달하는 단계;상기 주제어 프로그램에 의해, 상기 동작 요청 데이터에 포함된, 상기 통보 단계에서 상기 PC의 호스트 컨트롤러에 의해 할당된 주소를 이용하여, 미리 기록된 장치 정보들에서, 해당 USB 장치에 대한 장치 정보를 검색하는 단계;상기 주제어 프로그램에 의해, 해당 USB 장치에 대한 장치 정보에 기초하여, 해당 USB 장치의 이름을 확인하는 단계;상기 주제어 프로그램에 의해, 상기 USB 장치의 이름을 이용하여, 상기 네트워크 인터페이스 장치를 통하여, 상기 PC의 CPU에서 실행되는 상기 자동 테스트 프로그램에, 해당 USB 장치에 대한 테스트용 입력 데이터를 요청하는 단계;상기 주제어 프로그램에 의해, 상기 네트워크 인터페이스 장치를 통하여 상기 자동 테스트 프로그램으로부터 수신되는 상기 테스트용 입력 데이터에, 상기 PC의 호스트 컨트롤러에 의해 할당된 주소를 포함시켜, 상기 테스트용 입력 정보를 생성하는 단계;상기 주제어 프로그램에 의해, 상기 테스트용 입력 정보를 상기 논리 허브 프로그램에 전달하는 단계; 및상기 논리 허브 프로그램에 의해, 상기 테스트용 입력 정보를 상기 슬레이브 컨트롤러를 통하여 상기 PC의 호스트 컨트롤러에 전송하는 단계를 포함하고,상기 PC의 호스트 컨트롤러가 수신한 상기 테스트용 입력 정보는, 상기 이벤트들이 상기 업무 프로그램에서 재현되는 동안 상기 업무 프로그램에 적용되는 에뮬레이터의 동작 방법.
- 제17항에 있어서,상기 PC에는, 상기 업무 프로그램이 실행되는 동안 발생하는 이벤트들을 기록하고, 기록한 상기 이벤트들을 상기 업무 프로그램에서 재현함으로써 상기 업무 프로그램을 자동으로 실행시켜 테스트하는 자동 테스트 프로그램이 더 설치되고,상기 에뮬레이터는 통신망에 연결되는 네트워크 인터페이스 장치를 더 포함하고,상기 제2 가상의 USB 허브 동작을 실행하는 단계는,상기 슬레이브 컨트롤러에 의해 상기 동작 요청 신호를 논리 데이터 형식의 동작 요청 데이터로 변환하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러로부터 수신되는 상기 동작 요청 데이터를 상기 주제어 프로그램에 전달하는 단계;상기 주제어 프로그램에 의해, 상기 동작 요청 데이터에 포함된 상기 추가의 주소를 이용하여, 해당 USB 장치에 대응하는 상기 가상 드라이버 프로그램에 상기 동작 요청 데이터를 전달하는 단계;상기 가상 드라이버 프로그램에 의해, 상기 동작 요청 데이터에 기초하여, 동작 제어 데이터를 생성하는 단계;상기 호스트 컨트롤러에 의해, 상기 동작 제어 데이터에 상기 주소를 포함시켜 상기 동작 제어 신호를 생성하는 단계;상기 호스트 컨트롤러에 의해, 상기 USB 허브를 통하여 상기 동작 제어 신호를 해당 USB 장치에 전송하는 단계;상기 가상 드라이버 프로그램에 의해, 상기 호스트 컨트롤러를 통하여, 해당 USB 장치의 동작에 따른 입력 데이터를 수신하는 단계;상기 가상 드라이버 프로그램에 의해, 상기 입력 데이터를 상기 주제어 프로그램에 전달하는 단계;상기 주제어 프로그램에 의해, 상기 입력 데이터에 상기 추가의 주소를 포함시켜 상기 제1 입력 정보를 생성하는 단계;상기 주제어 프로그램에 의해, 상기 논리 허브 프로그램에 상기 제1 입력 정보를 전달하는 단계;상기 논리 허브 프로그램에 의해, 상기 슬레이브 컨트롤러를 통하여 상기 제1 입력 정보를 상기 PC의 호스트 컨트롤러에 전송하는 단계;상기 주제어 프로그램에 의해, 상기 네트워크 인터페이스 장치를 통하여, 상기 PC의 CPU에서 실행되는 상기 자동 테스트 프로그램으로부터 기록 명령을 수신한 경우, 상기 입력 데이터에 해당 USB 장치의 이름을 포함시켜, 제2 입력 정보를 생성하는 단계; 및상기 주제어 프로그램에 의해, 상기 제2 입력 정보를 상기 네트워크 인터페이스 장치를 통하여 상기 자동 테스트 프로그램에 전송하는 단계를 포함하고,상기 제2 입력 정보는 상기 자동 테스트 프로그램에 의해 상기 이벤트들 중 하나로서 기록되고, 상기 제1 입력 정보는 상기 업무 프로그램이 실행되는 동안 상기 업무 프로그램에 적용되는 에뮬레이터의 동작 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080096875A KR101033177B1 (ko) | 2008-10-02 | 2008-10-02 | 업무 프로그램의 자동 테스트 과정 동안 usb 장치의 동작을 가상적으로 대행하는 에뮬레이터 및 그 동작 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080096875A KR101033177B1 (ko) | 2008-10-02 | 2008-10-02 | 업무 프로그램의 자동 테스트 과정 동안 usb 장치의 동작을 가상적으로 대행하는 에뮬레이터 및 그 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20100037670A true KR20100037670A (ko) | 2010-04-12 |
KR101033177B1 KR101033177B1 (ko) | 2011-05-11 |
Family
ID=42214747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020080096875A Expired - Fee Related KR101033177B1 (ko) | 2008-10-02 | 2008-10-02 | 업무 프로그램의 자동 테스트 과정 동안 usb 장치의 동작을 가상적으로 대행하는 에뮬레이터 및 그 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101033177B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024001652A1 (zh) * | 2022-06-29 | 2024-01-04 | 京东方科技集团股份有限公司 | 设备间的网络适配方法及装置、存储介质、电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7162407B2 (en) | 2001-12-03 | 2007-01-09 | Ms1-Microsoft Corporation | Testing a host's support for peripheral devices |
JP2006127252A (ja) | 2004-10-29 | 2006-05-18 | Fujitsu Component Ltd | 切替機、切替方法及びプログラム |
-
2008
- 2008-10-02 KR KR1020080096875A patent/KR101033177B1/ko not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024001652A1 (zh) * | 2022-06-29 | 2024-01-04 | 京东方科技集团股份有限公司 | 设备间的网络适配方法及装置、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
KR101033177B1 (ko) | 2011-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6742055B2 (en) | Data transmission system, data transmission terminal, controller and interface method | |
US6769622B1 (en) | System and method for simulating universal serial bus smart card device connected to USB host | |
US8135871B2 (en) | Computer system and control method of the same | |
US7979600B2 (en) | Multifunction peripheral and device control system | |
US6892254B2 (en) | Device driver apparatus for I/O device simulation | |
US7797398B2 (en) | Communication system, and peripheral device having trigger generating device and computer program product that monitors whether a trigger has been generated | |
US20070245055A1 (en) | USB composite device, USB communication system, and USB communication method | |
JP6483142B2 (ja) | 周辺機器デバイスのユニバーサルシリアルバスエミュレーション | |
US20050223145A1 (en) | System, apparatus and method for migrating computer environment and associated computer readable recording medium | |
CN103853688B (zh) | 设备控制装置、主机装置以及主机装置的控制方法 | |
US7930708B2 (en) | Device control system, device control method, and device control program | |
KR20060084478A (ko) | Usb 디바이스의 클래스 설정 방법 및 장치 | |
KR101033177B1 (ko) | 업무 프로그램의 자동 테스트 과정 동안 usb 장치의 동작을 가상적으로 대행하는 에뮬레이터 및 그 동작 방법 | |
US20020099953A1 (en) | Debugging of chipcards | |
JP6860796B2 (ja) | 情報処理システム、情報処理装置およびプログラム | |
CN101329661A (zh) | 一种实现hid/scsi设备pc/sc接口的系统和方法 | |
CN101154144B (zh) | 外围设备、外围设备识别方法以及计算机产品 | |
KR100947860B1 (ko) | 임베디드 장비를 이용한 품질테스트 자동화방법 | |
CN110967614B (zh) | 芯片测试方法、芯片测试设备以及芯片 | |
US6009486A (en) | Cardbus docking station | |
JP2003337784A (ja) | 制御システム及びusbデバイス | |
CN102568602A (zh) | 闪速存储器发展系统 | |
JP4463658B2 (ja) | 情報処理システムの下位装置、下位装置用動作制御プログラムおよび下位装置用動作制御方法 | |
KR100807509B1 (ko) | Ata device 인터페이스를 저장장치용 usb host인터페이스로 전환하는 장치 또는 방법 | |
US7660978B2 (en) | System and method to provide device unique diagnostic support with a single generic command |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20081002 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20100827 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20110128 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20110428 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20110428 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20140428 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20140428 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20150428 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20150428 Start annual number: 5 End annual number: 5 |
|
LAPS | Lapse due to unpaid annual fee | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20170309 |