KR102292211B1 - 전자기기 - Google Patents
전자기기 Download PDFInfo
- Publication number
- KR102292211B1 KR102292211B1 KR1020190163771A KR20190163771A KR102292211B1 KR 102292211 B1 KR102292211 B1 KR 102292211B1 KR 1020190163771 A KR1020190163771 A KR 1020190163771A KR 20190163771 A KR20190163771 A KR 20190163771A KR 102292211 B1 KR102292211 B1 KR 102292211B1
- Authority
- KR
- South Korea
- Prior art keywords
- operating system
- driver
- controller
- installation
- electronics
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/302—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
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)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
Abstract
미 탑재된 운영체계를 설치하기 위한 전자기기는 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하기 위한 제1 드라이버 어플리케이션을 저장하는 메모리와, 운영체계의 설치 미디어를 부팅할 때, 제1 드라이버 어플리케이션을 실행하여, 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하도록 제어하는 제1 컨트롤러를 포함한다.
Description
실시예는 미 탑재된 운영체계를 설치하기 위한 전자기기에 관한 것이다.
다양한 전자기기가 원하는 동작을 수행하기 위해서는 운영체계가 설치되어야 한다. 운영체계는 전자기기의 하드웨어 시스템을 효율적으로 운영하도록 하여 주는 소프트웨어로서, 전자기기를 작동하고 시스템 전체를 감지하며, 처리할 데이터의 관리와 작업 계획 따위를 조정한다.
전자기기에 운영체계의 설치가 보다 더 용이해지고, 사용자들 또한 직접 운용체계를 설치하고자 하는 욕구가 커지며, 제조사 입장에서도 제품 단가를 낮출 수 있어, 최근 들어 전자기기가 운영체계가 미 탑재된 상태로 출시되어 판매되고 있다.
사용자들은 전자기기에 운영체계를 설치하여 사용하게 되는데, 운영체계를 설치할 때 운영체계에서 지원되지 않는 드라이버가 미처 설치되지 않아 해당 드라이버가 작동되지 않아 운영체계 설치가 어렵거나 운영체계 설치에 관한 불만이 제기되고 있다.
실시예는 전술한 문제 및 다른 문제를 해결하는 것을 목적으로 한다.
실시예의 다른 목적은 원활한 운영체계의 설치가 가능한 전자기기를 제공한다.
상기 또는 다른 목적을 달성하기 위해 실시예의 일 측면에 따르면, 미 탑재된 운영체계를 설치하기 위한 전자기기는, 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하기 위한 제1 드라이버 어플리케이션을 저장하는 메모리; 및 상기 운영체계의 설치 미디어를 부팅할 때, 상기 제1 드라이버 어플리케이션을 실행하여, 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하도록 제어하는 제1 컨트롤러를 포함한다.
실시예에 따른 전자기기의 효과에 대해 설명하면 다음과 같다.
실시예들 중 적어도 하나에 의하면, 운영체계의 설치 전, 즉 운영체계의 설치 미디어가 부팅될 때, 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하여, 제1 드라이버의 지원을 받아, 운영체계가 원활하게 설치되어 사용자의 편의성을 증진시킬 수 있다는 장점이 있다.
실시예들 중 적어도 하나에 의하면, 운영체계가 설치된 후 재부팅시 적어도 하나 이상의 제2 드라이버가 자동으로 설치되므로, 사용자가 개별적으로 제2 드라이버 각각을 설치하지 않아도 되므로 사용자의 편의성을 증진시킬 수 있다는 장점이 있다.
실시예들 중 적어도 하나에 의하면, 제1 컨트롤러에서 발생된 스캔코드가 제2 컨트롤러에 의해 특정 키 정보로 인식되고, 특정 키 정보에 따라 적어도 하나 이상의 제1 드라이버를 실행하여 줌으로써, 사용자가 제1 드라이버를 일일이 실행하여 줄 필요가 없어 사용자의 편의성을 증진시킬 수 있다는 장점이 있다.
실시예들 중 적어도 하나에 의하면, 운영체계의 설치 미디어가 부팅된 후 운영체계가 지원하지 않는 적어도 하나 이상의 제1 드라이버가 설치됨을 안내하는 표시창을 화면 상에 표시하여 줌으로써, 사용자가 운영체계의 설치 상황을 용이하게 파악할 있다는 장점이 있다.
실시예의 적용 가능성의 추가적인 범위는 이하의 상세한 설명으로부터 명백해질 것이다. 그러나 실시예의 사상 및 범위 내에서 다양한 변경 및 수정은 당업자에게 명확하게 이해될 수 있으므로, 상세한 설명 및 바람직한 실시예와 같은 특정 실시예는 단지 예시로 주어진 것으로 이해되어야 한다.
도 1은 실시예에 따른 전자기기를 도시한 블록도이다.
도 2는 실시예에 따른 전자기기에서 운영체계 설치 방법을 설명하는 순서도이다.
도 3은 도 2의 S220을 상세히 설명하는 순서도이다.
도 4는 도 3의 S360을 상세히 설명하는 순서도이다.
도 5는 스캔코드를 이용하여 제1 드라이버 어플리케이션의 실행 모습을 보여준다.
도 6은 도 4의 S430을 상세히 설명하는 순서도이다.
도 7은 도 2의 S230 및 S240을 상세히 설명하는 순서도이다.
도 8은 이벤트를 이용하여 제1 드라이버의 설치 및 실행 정보 등록 모습을 보여준다.
도 9는 도 2의 S260을 상세히 설명하는 순서도이다.
도 10은 운영체계 설치의 준비 과정을 보여주는 화면이다.
도 2는 실시예에 따른 전자기기에서 운영체계 설치 방법을 설명하는 순서도이다.
도 3은 도 2의 S220을 상세히 설명하는 순서도이다.
도 4는 도 3의 S360을 상세히 설명하는 순서도이다.
도 5는 스캔코드를 이용하여 제1 드라이버 어플리케이션의 실행 모습을 보여준다.
도 6은 도 4의 S430을 상세히 설명하는 순서도이다.
도 7은 도 2의 S230 및 S240을 상세히 설명하는 순서도이다.
도 8은 이벤트를 이용하여 제1 드라이버의 설치 및 실행 정보 등록 모습을 보여준다.
도 9는 도 2의 S260을 상세히 설명하는 순서도이다.
도 10은 운영체계 설치의 준비 과정을 보여주는 화면이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 기술 사상은 설명되는 일부 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 기술 사상 범위 내에서라면, 실시 예들간 그 구성 요소들 중 하나 이상을 선택적으로 결합, 치환하여 사용할 수 있다. 또한, 본 발명의 실시예에서 사용되는 용어(기술 및 과학적 용어를 포함)는, 명백하게 특별히 정의되어 기술되지 않는 한, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 일반적으로 이해될 수 있는 의미로 해석될 수 있으며, 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미를 고려하여 그 의미를 해석할 수 있을 것이다. 또한, 본 발명의 실시예에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함할 수 있고, “B 및(와) C 중 적어도 하나(또는 한 개 이상)”로 기재되는 경우 A, B, C로 조합할 수 있는 모든 조합 중 하나 이상을 포함할 수 있다. 또한, 본 발명의 실시 예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등으로 한정되지 않는다.
도 1은 실시예에 따른 전자기기를 도시한 블록도이다.
도 1을 참조하면, 실시예에 따른 전자기기(100)는 제1 컨트롤러(110), 제2 컨트롤러(115), 제1 메모리(130) 및 제2 메모리(140)를 포함할 수 있다. 실시예는 이보다 더 많은 구성 요소가 추가될 수 있다.
실시예에서 전자기기(100)는 데스크탑, 노트툭, 랩탑(Laptop), 테블릿, 모바일폰, 스마트폰, 5G폰, 가상현실(VR) 기기, 텔레비전와 같은 영상기기, 냉장고와 같은 가전기기 등을 포함할 수 있지만, 이에 대해서는 한정하지 않는다.
제1 컨트롤러(110)는 BIOS(Basic Input Output System)일 수 있다. BIOS는 전자기기(100), 예컨대 컴퓨터에서 전원을 켜면 맨 처음 컴퓨터의 제어를 맡아, 가장 기본적인 기능을 처리해 주는 프로그램을 말한다. 소프트웨어의 계층 중 가장 낮은 계층에 속하며 모든 소프트웨어는 BIOS를 기반으로 움직인다. 구성 루틴으로는 스타트업(start-up) 루틴과 서비스 처리 루틴, 하드웨어 인터럽트 처리 부분이 대표적이다. BIOS는 컴퓨터의 가장 기본적인 기능을 처리해 주는 프로그램들의 집합을 의미할 수 있다. 즉, 운영체제에서 입출력장치나 주변장치을 구동하기 위한 루틴들의 집합체로서 운영체제 가장 하위에 있는 부분이다. BIOS는 롬(ROM: Read Only Memory)에 저장되므로, 롬바이오스라고도 불린다.
제2 컨트롤러(115)는 임베디드 컨트롤러로서, 전자기기(100)의 전반적인 관리나 제어를 담당할 수 있다. 제1 컨트롤러(110)는 운영체계 및 제2 컨트롤러(115) 사이에서 운영체계와 제2 컨트롤러(115)를 연결시켜 주는 가교역할을 할 수 있다.
제2 컨트롤러(115)는 중앙처리장치(CPU: Central Processing Unit)일 수 있다.
제1 컨트롤러(110) 및 제2 컨트롤러(115)는 버스(120)를 통해 제1 메모리(130)나 제2 메모리(140) 그리고 그 외 다른 구성 요소를 제어할 수 있다.
제1 메모리(130)는 예컨대, 롬이고, 제2 메모리(140)는 예컨대, 램(RAM: Random Access Memory)일 수 있다.
제1 메모리(130)는 플래쉬 메모리와 같은 비휘발성 메모리로서, BIOS와 같은 펌웨어 또는 소프트웨어를 저장할 수 있다. 제1 메모리(130)는 비 휘발성 메모리로 구성되므로, 전자기기(100)의 전원이 공급되지 않아도 데이터가 유지되어야 하는 정보들을 저장하도록 구성될 수 있다.
제2 메모리(140)는 통상 주기억장치로 불리며, 전자기기(100)의 작업 수행을 함에 있어서 필요한 운영 CRP와 같은 데이터, 활성화되어 있는 프로그램과 같은 데이터 및/또는 연산해야 할 데이터 등을 저장할 수 있다.
실시예에 따른 전자기기(100)는 운영체계가 미 탑재된 상태로 출고되어 판매되며, 이후 운영체계가 전자기기(100)에 설치되는 과정을 거쳐, 운영체계가 전자기기(100)에 탑재될 수 있다.
실시예에서 운영체계는 예컨대, 마이크로소프트 사에서 배포된 윈도우일 수 있지만, 이에 대해서는 한정하지 않는다.
실시예는 미 탑재된 전자기기(100)에 운영체계를 설치할 때 발생되는 문제점을 해결하게 위해 제안되었다.
또한, 실시예에 따른 전자기기(100)는 복수의 드라이버(150)을 포함할 수 있다. 복수의 드라이버(150)는 전자기기(100)를 작동시키는데 필요한 하드웨어 드라이버나 소프트웨어 드라이버일 수 있다.
복수의 드라이버(150)는 적어도 하나 이상의 제1 드라이버(160) 및 적어도 하나 이상의 제2 드라이버(170)을 포함할 수 있다.
예컨대, 제1 드라이버(160)는 운영체계에서 지원하지 않는 드라이버로서, 운영체계를 설치 중, 구체적으로 운영체계의 설치 미디어가 부팅(booting)될 때 실행되어, 운영체계의 설치시 해당 드라이버가 작동되지 않아 운영체계 설치가 어렵거나 운영체계 설치에 관한 불만을 해소할 수 있다. 즉, 운영체계를 설치하기 위해 운영체계의 설치 미디어가 부팅될 때, 운영체계의 설치 이전에 먼저 운영체계에서 지원하지 않는 드라이버인 제1 드라이버(160)가 실행되어, 제1 드라이버(160)의 작동에 의해 운영체계 설치가 용이해질 수 있다. 운영체계의 설치 미디어는 제거 가능 미디어(removable media)의 일종으로서, 예컨대 전자기기(100)에 삽입하거나 제거할 수 있는 저장 매체일 수 있다. 예컨대, 운영체계의 설치 미디어는 예컨대, USB 디스크에 저장될 수 있지만, 이에 대해서는 한정하지 않는다.
예컨대, 제1 드라이버(160)는 하드웨어 드라이버나 소프트웨어 드라이버일 수 있다. 하드웨어 드라이버는 예컨대, 터치패드 드라이버 등과 같은 시리얼 IO 드라이버, CNVi(Integrated Connectivity) 드라이버 등과 같은 와이파이 드라이버 등을 포함할 수 있다. 소프트웨어 드라이버는 플랫폼 매니저 등을 포함할 수 있다. 플랫폼 매니저는 플랫폼 환경을 제어하는 드라이버로서, 나중에 설명하겠지만 운영체계의 설치시 발생된 로그 정보에 기초하여 운영체계 설치 프로그램을 모니터링하거나 운영체계가 설치 완료되는 경우 이벤트를 발생시켜 제1 드라이버(160)가 설치되거나 실행 정보가 등록될 수 있다. 실행 정보는 제2 드라이버 어플리케이션을 실행하는 명령을 포함할 수 있다.
앞서 설명한 바와 같이, 운영체계의 설치 미디어가 부팅되는 경우, 제1 드라이버(160)가 실행되어 운영체계가 원활하게 설치되도록 할 수 있다. 하지만, 제1 드라이버(160)가 설치되지 않는 경우, 전자기기(100)가 운영체계를 설치한 후 재부팅하면, 상기 실행 중이었던 제1 드라이버(160)는 삭제되어 더 이상 실행되지 않게 된다. 따라서, 제1 드라이버(160)가 지속적으로 실행될 수 있도록 제1 드라이버(160)가 설치될 필요가 있다. 실시예에서는 이벤트의 발생시 제1 드라이버(160)가 설치되도록 하여, 이후 재부팅되더라도 제1 드라이버(160)가 실행될 수 있도록 할 수 있다.
실행 정보는 제2 드라이버 어플리케이션을 실행하도록 하는 정보로서, 재부팅시 해당 실행 정보에 따라 제2 드라이버 어플리케이션이 실행될 수 있다. 이후, 제1 컨트롤러(110) 및/또는 제2 컨트롤러(115)의 제어 하에 제2 드라이버 어플리케이션에 의해 제2 드라이버가 설치될 수 있다.
한편, 제2 드라이버(170)는 운영체계에서 지원하는 드라이버로서, 운영체계 설치 이후에 설치될 수 있다. 따라서, 운영체계 설치 이후에는 제1 드라이버와 제2 드라이버의 지원을 받아, 전자기기(100)의 다양한 기능이 구현될 수 있다.
<미 탑재된 전자기기(100)에 운영체계를 설치하는 방법>
운영체계의 설치 방법으로서, 마이크로소프트사로부터 배포된 윈도우10을 전자기기(100)에 설치하는 방법을 설명한다.
제1단계: USB 디스크를 준비하는 단계로서, 'MS Media Creating Tool'를 실행하여 설치 미디어를 USB 디스크에 만들 수 있다.
제2 단계: USB 디스크를 전자기기(100)에 연결하고 전원을 켜면, 전자기기(100)는 자동으로 설치 미디어를 부팅할 수 있다.
제3 단계: 윈도우 설치 모드로 진입한 후, 전자기기(100)는 일련의 과정을 거쳐 윈도우10를 설치할 수 있다.
제4 단계: 전자기기(100)는 각종 서비스와 드라이버(또는 장치)를 설치하면서 여러 번 재부팅할 수 있다.
앞서 설명된 윈도우10의 설치 방법뿐만 아니라 다른 운영체계의 구체적인 설치 방법은 이미 널리 알려진 바 있으므로, 상세한 설명은 생략한다.
이하, 도 2 내지 도 10을 참조하면, 실시예에 따른 전자기기에서 운영체계 설치 방법을 설명한다.
도 2는 실시예에 따른 전자기기에서 운영체계 설치 방법을 설명하는 순서도이다.
도 2를 참조하면, 제1 컨트롤러(110)는 운영체계의 설치 미디어를 부팅할 수 있다(S210).
상술한 바와 같이, 제1 단계에서 준비된 USB 디스크가 전자기기(100)에 연결되고 전원이 켜지만, 제1 컨트롤러(110)는 운영체계의 설치 미디어를 부팅할 수 있다.
제1 컨트롤러(110)는 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행할 수 있다(S220).
제1 컨트롤러(110)는 운영체계의 설치 미디어의 부팅을 인식하면, 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행할 수 있다.
예컨대, 제1 컨트롤러(110)는 소정의 정보에 기초하여 제1 드라이버(160) 어플리케이션의 실행 여부를 획득할 수 있다. 소정의 정보는 운영체계 검증 정보, 플랫폼 매니저의 설치 정보, 드라이버 파티션 정보, 설치 미디어 부팅 정보 및 설치 미디어 부팅 후 경과 시간 정보 중 적어도 하나를 포함할 수 있다.
예컨대, 제1 컨트롤러(110)는 소정의 정보가 일정 조건을 만족하는 경우, 제1 드라이버(160) 어플리케이션을 실행할 수 있다.
도 3에 도시한 바와 같이, 제1 컨트롤러(110)는 검증된 운영체계 부팅인지 여부를 획득할 수 있다(S310). 즉, 제1 컨트롤러(110)는 S310으로부터 운영체계 검증 정보를 획득할 수 있다. S310을 통해 검증되지 않은 운영체계의 설치가 사전에 차단될 수 있다. 검증된 운영체계 부팅이 아닌 경우, 설치 미디어의 부팅 동작을 종료할 수 있다. 검증된 운영체계 부팅인 경우, 다음 단계, 즉 S320으로 이동될 수 있다.
제1 컨트롤러(110)는 플랫폼 매니저가 설치되어 있는지 여부를 획득할 수 있다(S320). 즉, 제1 컨트롤러(110)는 S320으로부터 플랫폼 매니저의 설치 정보를 획득할 수 있다. 플랫폼 매니저는 상술한 바와 같이, 플랫폼 환경을 제어하는 드라이버로서, 나중에 설명하겠지만 운영체계의 설치시 발생된 로그 정보에 기초하여 운영체계 설치 프로그램을 모니터링하거나 운영체계가 설치 완료되는 경우 이벤트를 발생시켜 제1 드라이버(160)가 설치되거나 실행 정보가 등록될 수 있다. 플랫폼 매니저가 설치되어 있는 경우, 이미 해당 드라이버가 설치되어 있거나 미 탑재 전자기기(100)가 아닌 경우로서, 이러한 경우에는 설치 미디어의 부팅 동작을 종료할 수 있다. 플랫폼 매니저가 설치되어 있지 않은 경우, 다음 단계, 즉 S330으로 이동될 수 있다.
제1 컨트롤러(110)는 드라이버 파티션이 존재하는지 여부를 획득할 수 있다(S 330). 즉, 제1 컨트롤러(110)는 S330으로부터 드라이버 파티션 정보를 획득할 수 있다. 드라이버 파티션은 전자기기(100)를 제조한 제조사에서 미리 운영체계 설치 중이거나 설치 이후에 추가로 설치할 어플리케이션이나 드라이버들을 설정 또는 저장해 놓은 파티션일 수 있다.
실시예에 따르면, 제1 컨트롤러(110) 및/또는 제2 컨트롤러(115)가 해당 드라이버 파티션을 검색하여 해당 어플리케이션을 실행하거나 해당 드라이버를 실행 또는 설치할 수 있다.
드라이버 파티션이 존재하지 않는 경우, 윈도우 설치와 관련된 추가 동작이 불가능하므로 설치 미디어의 부팅 동작을 종료할 수 있다. 드라이버 파티션이 존재하는 경우, 다음 단계, 즉 S340으로 이동될 수 있다.
제1 컨트롤러(110)는 운영체계의 설치 미디어 부팅인지 여부를 획득할 수 있다(S340). 즉, 제1 컨트롤러(110)는 S340으로부터 설치 미디어 부팅 정보를 획득할 수 있다. 이미 설치된 운영체계로 부팅하는 경우, 설치 미디어의 부팅 동작을 종료할 수 있다. 운영체계의 설치 미디어 부팅인 경우, 다음 단계, 즉 S350으로 이동될 수 있다.
이상에서 S310 내지 S340의 동작은 서로 순서가 변경되어도 무방하다.
제1 컨트롤러(110)는 운영체계의 설치 미디어의 부팅 후 설정 시간을 초과하는지 여부를 획득할 수 있다(S350). 즉, 제1 컨트롤러(110)는 S350으로부터 경과 시간 정보를 획득할 수 있다. 설정 시간은 전자기기(100) 내의 다양한 컴포넌트 간의 성능 차이로 인해 서로 간의 동작 처리 속도가 다르므로, 이를 고려하여 설정될 수 있다. 예컨대, 설정 시간은 대략 10초일 수 있지만, 이에 대해서는 한정하지 않는다.
전자기기(100) 내의 다양한 컴포넌트 간의 성능 차이가 균일한 경우, S350은 생략될 수 있다.
운영체계의 설치 미디어의 부팅 후 설정 시간을 초과하지 않은 경우 설정 시간이 될 때까지 대기할 수 있다. 운영체계의 설치 미디어의 부팅 후 설정 시간을 초과한 경우, 다음 단계, 즉 S360으로 이동될 수 있다.
제1 컨트롤러(110)는 드라이버 파티션을 검색하여 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행할 수 있다(S360). 즉, S310 내지 S350를 만족하는 경우, 제1 컨트롤러(110)는 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행하여 계속하여 운영체계를 설치하는 동작을 수행할 수 있다.
이를 위해 제1 컨트롤러(110)는 드라이버 파티션을 검색하여 제1 드라이버(160) 어플리케이션을 획득할 수 있다. 제1 드라이버(160) 어플리케이션은 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행하여 주는 어플리케이션일 수 있다. 예컨대, 제1 드라이버(160) 어플리케이션은 드라이버 파티션에 다른 어플리케이션, 드라이버, 명령어 등과 함께 등록될 수 있다. 제1 컨트롤러(110)는 드라이버 파티션에서 해당 제1 드라이버(160) 어플리케이션을 로딩하여, 해당 제1 드라이버(160) 어플리케이션을 이용하여 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행할 수 있다.
실시예에서 적어도 하나 이상의 제1 드라이버(160)의 실행을 위해 적어도 하나 이상의 제1 드라이버(160)가 임시 버퍼 등에 임시적으로 저장될 수 있다. 나중에 설명하겠지만, 제1 드라이버(160)가 임시 버퍼 등에 임시적으로 저장되므로, 운영체계의 설치 완료 후 재부팅되는 경우 제1 드라이버(160)가 삭제되어 실행되지 않을 수 있다. 이를 방지하기 위해 실시예에서는 제1 드라이버(160)는 임시가 아닌 반영구적으로 설치할 수 있다. 이와 같이 설치된 제1 드라이버(160)는 강제적으로 삭제되지 않는 한 반 영구적으로 설치될 수 있다.
다시 도 2를 참조하면, 제1 컨트롤러(110)는 운영체계 설치 완료 여부를 획득할 수 있다(S230).
S220에서 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)가 실행되므로, 운영체계가 원활하게 설치될 수 있다.
제1 컨트롤러(110)는 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 설치할 수 있다(S240).
상술한 바와 같이, S220에서 실행 중인 제1 드라이버(160)는 예컨대, 임시 버퍼 등에 임시적으로 설치되므로, 이후 재부팅시 삭제될 수 있다. 따라서, 재부팅에도 불구하고 삭제되지 않도록 제1 드라이버(160)를 설치할 수 있다.
S230 및 S240에 대해서는 나중에 도 7을 참조하여 상세히 설명한다.
제1 컨트롤러(110)는 재부팅을 수행할 수 있다(S250). 제1 컨트롤러(110)는 적어도 하나 이상의 제2 드라이버를 설치할 수 있다(S260).
제1 컨트롤러(110)는 재부팅시, 제1 드라이버(160)를 제외한 나머지 드라이버 즉, 제2 드라이버를 설치할 수 있다. 제2 드라이버는 제1 드라이버(160)와 함께 전자기기(100)의 다양한 기능을 구현하기 위해 필요한 드라이버일 수 있다.
실시예에 따르면, 운엉체계가 설치된 후 재부팅시 적어도 하나 이상의 제2 드라이버가 자동으로 설치되므로, 사용자가 개별적으로 제2 드라이버 각각을 설치하지 않아도 되므로 사용자의 편의성을 증진시킬 수 있다.
도 4는 도 3의 S360을 상세히 설명하는 순서도이고, 도 5는 스캔코드를 이용하여 제1 드라이버(160) 어플리케이션의 실행 모습을 보여주며, 도 6은 도 4의 S430을 상세히 설명하는 순서도이다.
도 4를 참조하면, 제1 컨트롤러(110)는 스캔코드를 전송할 수 있다(S410).
도 5에 도시한 바와 같이, 스캔코드는 제1 컨틀로러에서 발생되어 제2 컨트롤러(115)를 경유하여 운영체계(180)으로 전송할 수 있다. 스캔코드는 특정 기능에 관한 명령어일 수 있다. 제2 컨트롤러(115)는 키 맵(key map)을 구비할 수 있다. 키 맵은 스캔코드와 이에 대응하는 키 정보가 예컨대, 룩업테이블로 구성될 수 있다. 제2 컨트롤러(115)는 키맵을 이용하여 제1 컨트롤러(110)에서 제공된 스캔코드에 대응하는 키 정보를 운영체계(180)로 전송할 수 있다. 예컨대, 제1 컨트롤러(110)에서 제공된 특정 스캔코드에 대응하는 키 정보가 Shift Key + F10 key일 수 있다.
다시 도 4를 참조하면, 제1 컨트롤러(110)는 제1 스캔코드를 전송한 후 일정 시간을 대기할 수 있다(S420).
앞서 설명한 바와 같이, 전자기기(100) 내의 다양한 컴포넌트 간의 성능 차이로 인해 서로 간의 동작 처리 속도가 다르므로, 이를 고려하여 일정 시간이 설정될 수 있다. 일정 시간 동안 후속 동작을 대기하도록 하여 다양한 컴포넌트 간의 성능 차이를 보완하여 줄 수 있다.
컴포넌트 간의 성능 차이가 균일한 경우, S420은 생략될 수 있다.
제1 컨트롤러(110)는 제1 드라이버(160) 어플리케이션을 실행할 수 있다(S430).
도 6에 도시한 바와 같이, 제1 컨트롤러(110)는 스캔 코드에 대응하는 키 정보에 기초하여 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행할 수 있다(S510). 즉, 제1 컨트롤러(110)는 제1 컨트롤러(110)는 스캔 코드에 대응하는 키 정보에 기초하여 제1 드라이버(160) 어플리케이션을 실행하고, 상기 실행된 제1 드라이버(160) 어플리케이션을 이용하여 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행할 수 있다. 적어도 하나 이상의 제1 드라이버(160)는 임시 버퍼 등에 임시적으로 설치될 수 있고, 나중에 재부팅시 삭제될 수 있다.
아울러, 제1 컨트롤러(110)는 플랫폼 매니저를 설치할 수 있다(S520). 플랫폼 매니저는 기 설정된 파티션에 설치될 수 있다. 플랫폼 매니저는 상술한 바와 같이, 플랫폼 환경을 제어하는 드라이버로서, 나중에 설명하겠지만 운영체계의 설치시 발생된 로그 정보에 기초하여 운영체계 설치 프로그램을 모니터링하거나 운영체계가 설치 완료되는 경우 이벤트를 발생시켜 제1 드라이버(160)가 설치되거나 실행 정보가 등록될 수 있다.
플랫폼 매니저가 설치되지 않는 경우, 제1 드라이버(160)가 설치되지 않아 재부팅시 그 전에 실행 중이었던 제1 드라이버(160)가 삭제되며, 실행 정보를 등록할 수 없이 이후 절차에서 다른 드라이버, 즉 제2 드라이버를 설치할 수 있다.
실시예에 따르면, 제1 컨트롤러(110)에서 발생된 스캔코드가 제2 컨트롤러(115)에 의해 특정 키 정보로 인식되고, 특정 키 정보에 따라 적어도 하나 이상의 제1 드라이버(160)를 실행하여 줌으로써, 사용자가 제1 드라이버(160)를 일일이 실행하여 줄 필요가 없어 사용자의 편의성을 증진시킬 수 있다.
제1 컨트롤러(110)는 제1 드라이버(160)가 실행되는 경우, 스캔코드의 발생을 중지할 수 있다(S440).
한편, 도 10에 도시한 바와 같이, 제1 컨트롤러(110) 및/또는 제2 컨트롤러(115)는 적어도 하나 이상의 제1 드라이버(160)가 임시 버퍼 등에 설치되고 있음을 안내하는 표시창(125)을 화면 상에 표시할 수 있다. 표시창(125)은 스캔코드가 발생된 이후부터 스캔코드의 발생이 중지될 때까지의 시간 구간 동안 화면 상에 표시될 수 있지만, 이에 대해서는 한정하지 않는다. 사용자는 도 10에 도시된 표시창(125)을 통해 제1 드라이버(160)가 설치 및/또는 실행됨을 인식할 수 있다.
제1 드라이버(160)가 실행되는 경우, 제1 드라이버(160)의 기능이 작동되므로 제1 드라이버(160)의 기능을 이용하여 운용체계를 원활하게 설치할 수 있다.
도 7은 도 2의 S230 및 S240을 상세히 설명하는 순서도이다.
도 7을 참조하면, 제1 컨트롤러(110)는 운영체계의 설치에 관한 로그 정보를 획득할 수 있다(S610).
도 8에 도시한 바와 같이, 운영체계 설치 프로그램(184)는 운영체계(180)의 설치에 관한 로그 정보를 발생시킬 수 있다. 운영체계(180)의 설치에 관한 로그 정보는 적어도 운영체계(180)의 설치율에 관한 정보를 포함할 수 있다. 운영체계 설치 프로그램(184)은 BIOS에 포함될 수 있지만, 이에 대해서는 한정하지 않는다.
제1 컨트롤러(110)는 운영체계 설치 프로그램(184)을 모니터링하도록 플랫폼 매니저(182)를 제어할 수 있다. 즉, 제1 컨트롤러(110)는 운영체계 설치 프로그램(184)을 통해 운영체계 설치 프로그램(184)에서 발생되는 운영체계(180)의 설치에 관한 로그 정보를 주기적으로 또는 실시간으로 획득할 수 있다.
제1 컨트롤러(110)는 이벤트가 발행하는지 여부를 획득할 수 있다(S620).
플랫폼 매니저(182)는 상기 획득된 로그 정보에 기초하여 운영체계(180)의 설치가 완료되면, 운영체계(180)의 설치 완료를 나타내는 이벤트를 발생시키고, 제1 컨트롤러(110)는 해당 이벤트의 발생을 획득할 수 있다.
제1 컨트롤러(110)는 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 설치할 수 있다(S630).
도 8에 도시한 바와 같이, 해당 이벤트를 획득하는 경우, 제1 컨트롤러(110)는 제1 드라이버 어플리케이션(185)을 이용하여 운영체계(180)에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 기 설정된 파티션, 예컨대 C 드라이브 파티션, D 드라이브 파티션 등에 설치할 수 있다. 예컨대, 운영체계(180)에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)는 운영체계(180)가 설치된 드라이브 파티션에 함께 설치될 수 있지만, 이에 대해서는 한정하지 않는다.
제1 컨트롤러(110)는 제2 드라이버 어플리케이션을 실행하기 위한 실행 정보를 등록할 수 있다(S640).
실행 정보는 재부팅시 활성화되거나 실행될 수 있는 서비스 어플리케이션일 수 있지만, 이에 대해서는 한정하지 않는다. 예컨대, 실행 정보는 제2 드라이버 어플리케이션을 실행하는 명령을 포함할 수 있다.
실행 정보는 기 설정된 드라이브 파티션에 설치될 수 있다. 예컨대, 실행 정보는 운영체계(180)에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160) 및/또는 운영체계(180)가 설치된 드라이브 파티션에 함께 설치될 수 있지만, 이에 대해서는 한정하지 않는다.
S640은 S630보다 먼저 수행될 수도 있다.
도 7 및 도 8에서는 해당 동작의 주체로 제1 컨트롤러(110)로 도시하고 있지만, 제2 컨트롤러(115) 또한 해당 동작의 주체가 될 수도 있다.
도 9는 도 2의 S260을 상세히 설명하는 순서도이다.
도 9를 참조하면, 제1 컨트롤러(110)는 재부팅 여부를 획득할 수 있다(S710).
제1 컨트롤러(110)는 도 8에 도시한 바와 같이, 운영체계 설치 프로그램(도 8의 184)에서 발생된 로그 정보에 기초하여 재부팅 여부를 획득할 수 있지만, 이에 대해서는 한정하지 않는다.
제1 컨트롤러(110)는 실행 정보에 따라 제2 드라이버 어플리케이션을 실행할 수 있다(S720).
제1 컨트롤러(110)는 재부팅이 수행되는 경우, 상기 등록된 실행 정보를 기 설정된 드라이브 파티션에서 로딩한 후 해당 실행 정보에 따라 제2 드라이버 어플리케이션을 실행할 수 있다. 예컨대, 제2 드라이버 어플리케이션은 적어도 하나 이상의 제2 드라이버를 자동으로 설치하도록 하는 어플리케이션일 수 있다. 적어도 하나 이상의 제2 드라이버는 제1 드라이버(160)를 제외하고 전자기기(100)에 연결되어 사용 가능한 드라이버일 수 있다.
제1 컨트롤러(110)는 제2 드라이버 어플리케이션을 이용하여 적어도 하나 이상의 제2 드라이버를 설치할 수 있다(S730).
실시예에 따르면, 이미 설치된 제1 드라이버(160)(도 7의 S630)와 S730에서 설치된 제2 드라이버의 지원을 받아, 전자기기(100)는 다양한 기능을 구현할 수 있다.
실시예에 따르면, 운영체계의 설치 전, 즉 운영체계의 설치 미디어가 부팅될 때, 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버(160)를 실행하여, 제1 드라이버(160)의 지원을 받아, 운영체계가 원활하게 설치되어 사용자의 편의성을 증진시킬 수 있다.
본 문서에서 개시한 다양한 실시예들은 서로 개별적으로 또는 조합되어 실시될 수 있다. 또한 각 실시예를 구성하는 단계들은 다른 실시예를 구성하는 단계들과 서로 조합되어 실시될 수 있다.
본 발명의 다양한 실시예는 컴퓨터로 읽을 수 있는 매체(media)에 의하여 구현될 수 있다. 상기 매체는 예를 들어, 본 발명의 실시예를 구현하기 위한 프로그램 코드, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 이러한 매체의 예에는 자기 매체(magnetic media), CD 및 DVD와 같은 광기록 매체(optical recording media), 롬(ROM), 램(RAM), 플래시 메모리(flash memory) 등과 같은 프로그램 명령을 저장하고 수행하도록 구성된 매체가 포함될 수 있다. 프로그램 코드의 예에는 컴파일러에 의해 만들어지는 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 설명한 본 발명의 다양한 실시예들은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경할 수 있으므로 본 발명의 권리범위가 전술한 실시예 및 첨부한 도면에 의하여 한정되는 것은 아니다. 또한 본 문서에서 설명한 다양한 실시예들은 한정되어 적용될 수 있는 것이 아니라, 다양한 변형이 이루어져 실시될 수 있으며, 이러한 변형 실시예들도 본 발명의 권리범위에 속한다고 할 것이다.
Claims (14)
- 미 탑재된 운영체계를 설치하기 위한 전자기기에 있어서,
미 설치되어 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하기 위한 제1 드라이버 어플리케이션을 저장하는 메모리; 및
상기 운영체계의 설치 미디어를 부팅할 때, 상기 운영체계의 설치 이전에 상기 제1 드라이버 어플리케이션을 실행하여, 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하도록 제어하는 제1 컨트롤러를 포함하는
전자기기. - 제1항에 있어서,
상기 제1 컨트롤러는,
소정의 정보에 기초하여 상기 제1 드라이버 어플리케이션의 실행 여부를 획득하는
전자기기. - 제2항에 있어서,
상기 정보는 운영체계 검증 정보, 플랫폼 매니저의 설치 정보, 드라이버 파티션 정보, 설치 미디어 부팅 정보 및 경과 시간 정보 중 적어도 하나를 포함하는
전자기기. - 제2항에 있어서,
상기 제1 컨트롤러는,
상기 정보가 일정 조건을 만족하는 경우, 스캔 코드에 기초하여 상기 제1 드라이버 어플리케이션을 실행하는
전자기기. - 제4항에 있어서,
제2 컨트롤러를 더 포함하고,
상기 제2 컨트롤러는,
상기 스캔 코드에 대응하는 키 정보를 획득하고,
상기 제1 컨트롤러는,
상기 키 정보에 기초하여 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 실행하는
전자기기. - 제5항에 있어서,
상기 제1 컨트롤러는,
상기 적어도 하나 이상의 제1 드라이버가 실행된 경우, 플랫폼 매니저를 설치하는
전자기기. - 제6항에 있어서,
상기 제1 컨트롤러는,
상기 플랫폼 매니저의 설치 후 상기 스캔 코드의 발생을 중지하는
전자기기. - 제6항에 있어서,
상기 제1 컨트롤러는,
상기 운영체계의 설치 완료시, 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 설치하는
전자기기. - 제8항에 있어서,
상기 제1 컨트롤러는,
상기 운영체계의 설치에 관한 로그 정보에 기초하여 상기 운영체계의 설치 완료를 모니터링하도록 상기 플랫폼 매니저를 제어하는
전자기기. - 제9항에 있어서,
상기 제1 컨트롤러는,
상기 플랫폼 매니저로부터 발생된 상기 운영체계의 설치 완료에 관한 이벤트에 응답하여 상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버를 설치하는
전자기기. - 제9항에 있어서,
상기 제1 컨트롤러는,
상기 플랫폼 매니저로부터 발생된 상기 운영체계의 설치 완료에 관한 이벤트에 응답하여 제2 드라이버 어플리케이션을 실행하기 위한 실행 정보를 상기 운영체계에 등록하는
전자기기. - 제11항에 있어서,
상기 제1 컨트롤러는,
상기 운영체계 설치 이후 재부팅시, 상기 실행 정보에 따라 상기 제2 드라이버 어플리케이션을 실행하여, 적어도 하나 이상의 제2 드라이버를 설치하도록 제어하는
전자기기. - 제1항에 있어서,
상기 운영체계에서 지원하지 않는 적어도 하나 이상의 제1 드라이버는 하드웨어 드라이버 및 소프트웨어 드라이버 중 적어도 하나를 포함하는
전자기기. - 제13항에 있어서,
상기 소프트웨어 드라이버는 운영체계 관련된 드라이버, 시스템 드라이버 및 펌웨어를 포함하는
전자기기.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190163771A KR102292211B1 (ko) | 2019-12-10 | 2019-12-10 | 전자기기 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190163771A KR102292211B1 (ko) | 2019-12-10 | 2019-12-10 | 전자기기 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210073200A KR20210073200A (ko) | 2021-06-18 |
KR102292211B1 true KR102292211B1 (ko) | 2021-08-24 |
Family
ID=76623634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190163771A KR102292211B1 (ko) | 2019-12-10 | 2019-12-10 | 전자기기 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102292211B1 (ko) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140244988A1 (en) | 2013-02-26 | 2014-08-28 | Microsoft Corporation | Self-healing of operating system components |
US20170024223A1 (en) * | 2015-07-20 | 2017-01-26 | Dell Products, Lp | Installation of Device Drivers from Virtual Media |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6279109B1 (en) * | 1999-01-07 | 2001-08-21 | Dell U.S.A., L.P. | Computing system and operating method for booting and running a graphical user interface (GUI) with r/w hard drive partition unavailable |
KR101595043B1 (ko) * | 2008-09-18 | 2016-02-17 | 마벨 월드 트레이드 리미티드 | 적어도 부분적으로 부팅 동안에 어플리케이션들을 메모리에 프리로딩하는 방법 |
-
2019
- 2019-12-10 KR KR1020190163771A patent/KR102292211B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140244988A1 (en) | 2013-02-26 | 2014-08-28 | Microsoft Corporation | Self-healing of operating system components |
US20170024223A1 (en) * | 2015-07-20 | 2017-01-26 | Dell Products, Lp | Installation of Device Drivers from Virtual Media |
Also Published As
Publication number | Publication date |
---|---|
KR20210073200A (ko) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109542744B (zh) | 检测终端开机异常问题的方法、装置、存储介质及终端 | |
US10514930B2 (en) | Setting a startup parameter and controlling startup of a mainboard | |
US10228952B2 (en) | System and method for accelerated boot performance | |
JP5215324B2 (ja) | メディア装置における複数のオペレーティングシステム支援 | |
WO2018028055A1 (zh) | 在Windows系统上运行Android应用程序的方法及装置 | |
US6463531B1 (en) | Method and system for monitoring a boot process of a data processing system providing boot data and user prompt | |
US8312256B2 (en) | Display of a basic input/output system (BIOS) productivity display | |
US20100100719A1 (en) | Method for reducing booting time and computer using the same | |
US8103908B2 (en) | Method and system for recovery of a computing environment during pre-boot and runtime phases | |
US8499143B2 (en) | Method for shortening the boot time of a computer system | |
US12001285B2 (en) | System booting method and apparatus, node device, and computer-readable storage medium | |
US20130138938A1 (en) | Method, recording medium, and electronic device for reducing boot time | |
US5371848A (en) | Method for operating and displaying status of a computer system | |
CN109408122B (zh) | 一种设备启动方法、电子设备和计算机存储介质 | |
TWI450090B (zh) | 關於改變程式之啟動列表以判定電腦系統性能是否增進之方法及系統 | |
US7080244B2 (en) | System and method for configuring hardware devices using a menu for platforms with EFI and legacy option-ROMs | |
US20100049961A1 (en) | Update method for basic input/output system and update system thereof | |
US20130097412A1 (en) | Performing A Boot Sequence In A Multi-Processor System | |
CN112702647B (zh) | 一种播放控制方法、智能电视及计算机可读存储介质 | |
US20070214345A1 (en) | System and method for porting an operating system | |
KR102292211B1 (ko) | 전자기기 | |
WO2008048581A1 (en) | A processing device operation initialization system | |
US8762699B1 (en) | System, apparatus, and method for initiating a reboot of a personal computer system by pressing a button on an attached storage device and causing the operating system on the attached storage device to be booted | |
CN111930502A (zh) | 一种服务器管理方法、装置、设备及存储介质 | |
JP5332716B2 (ja) | 起動制御方法、情報処理装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |