KR101465923B1 - 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템 및 방법 - Google Patents
컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템 및 방법 Download PDFInfo
- Publication number
- KR101465923B1 KR101465923B1 KR1020137007894A KR20137007894A KR101465923B1 KR 101465923 B1 KR101465923 B1 KR 101465923B1 KR 1020137007894 A KR1020137007894 A KR 1020137007894A KR 20137007894 A KR20137007894 A KR 20137007894A KR 101465923 B1 KR101465923 B1 KR 101465923B1
- Authority
- KR
- South Korea
- Prior art keywords
- computing device
- communication
- interface
- data communication
- processor
- 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/22—Microcontrol or microprogram arrangements
- G06F9/24—Loading of the microprogram
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/50—Service provisioning or reconfiguring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/60—Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Stored Programmes (AREA)
- Communication Control (AREA)
Abstract
컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템, 장치, 및 방법은 상기 컴퓨팅 장치의 프리-부팅 단계 동안 상기 컴퓨팅 장치에서 실행되는 통합 확장 펌웨어 인터페이스와 상기 컴퓨팅 장치의 무선 송수신기 사이에 통신 인터페이스를 구축하는 것을 포함한다. 상기 컴퓨팅 장치의 OOB 프로세서는 유선 및 무선 통신 표준 사이에서 데이터 통신을 재포맷팅하여 상기 프리-부팅 단계 동안 상기 통합 확장 펌웨어 인터페이스와 무선 통신 회로 사이의 데이터 통신을 처리한다.
Description
많은 컴퓨팅 장치는 컴퓨팅 장치에서 실행하는 운영 체제(OS)와 컴퓨팅 장치의 플랫폼 펌웨어 사이에 소프트웨어 인터페이스를 이용한다. 그러한 소프트웨어 인터페이스의 한 예는 2009년 5월 8일 발표된 UEFI Specification version 2.3에서 정의된 통합 확장 펌웨어 인터페이스(Unified Extensible Firmware Interface: UEFI)이다. UEFI 규격에서 정의된 인터페이스는 플랫폼 정보를 포함하는 데이터 테이블과, 운영 체제 로더(loader) 및 운영 체제에 이용가능한 부팅(boot) 및 런타임(runtime) 서비스를 포함한다. UEFI는 각종 장치 상에서 텍스트 및 그래픽 콘솔 지원을 포함하는 부팅 서비스, 버스, 블록(block) 및 파일 서비스, 및 날짜, 시간 및 NVRAM 서비스와 같은 런타임 서비스를 정의한다. UEFI 환경은 운영 체제의 로딩 전에 구축된다.
UEFI 규격은 현재 컴퓨팅 장치의 프리-부팅(pre-boot) 단계 동안(즉, 운영 체제의 부팅 전에) 유선 통신을 지원한다. 그러나, 비록 UEFI 규격이 무선 어댑터용 장치 드라이버를 구축하기 위한 일반적인 프레임워크(framework)를 지원하지만, 현재 UEFI 규격은 현재의 무선 기술 대부분을 지원하는 종합적인 무선 통신 스택이 부족하다. 이러한 것으로서, 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신의 이용 가능성이 제한된다.
본 명세서에서 기술된 시스템, 장치, 및 방법은 첨부의 도면에서 예를 들어 예시된 것이지, 제한하려 예시된 것은 아니다. 설명의 간결함과 명료성을 기하기 위해, 도면에 예시된 구성 요소는 반드시 축척대로 그려지지 않는다. 예를 들면, 일부 구성 요소의 치수는 명료성을 위해 다른 구성 요소에 비해 과장될 수 있다.
도 1은 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템의 일 실시예의 간략화된 블록도이다.
도 2는 도 1의 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 방법의 일 실시예의 간략화된 흐름도이다.
도 3은 도 1의 컴퓨팅 장치의 하드웨어 및 소프트웨어 환경의 간략화된 블럭도이다.
도 4는 도 1의 컴퓨팅 장치의 프리-부팅 단계 동안 통신 데이터를 처리하는 방법의 일 실시예의 간략화된 흐름도이다.
도 5는 도 1의 컴퓨팅 장치의 프리-부팅 단계 동안 통신 데이터를 처리하는 방법의 다른 실시예의 간략화된 흐름도이다.
도 6은 도 1의 컴퓨팅 장치의 간략화된 부팅 타임라인의 일 실시예이다.
도 1은 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템의 일 실시예의 간략화된 블록도이다.
도 2는 도 1의 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 방법의 일 실시예의 간략화된 흐름도이다.
도 3은 도 1의 컴퓨팅 장치의 하드웨어 및 소프트웨어 환경의 간략화된 블럭도이다.
도 4는 도 1의 컴퓨팅 장치의 프리-부팅 단계 동안 통신 데이터를 처리하는 방법의 일 실시예의 간략화된 흐름도이다.
도 5는 도 1의 컴퓨팅 장치의 프리-부팅 단계 동안 통신 데이터를 처리하는 방법의 다른 실시예의 간략화된 흐름도이다.
도 6은 도 1의 컴퓨팅 장치의 간략화된 부팅 타임라인의 일 실시예이다.
본 발명의 개념은 다양한 변형 및 대안의 형태가 가능하지만, 본 발명의 특정한 예시적인 실시예는 도면에서 예를 들어 제시되었고 본 명세서에서 상세히 기술될 것이다. 그러나, 본 발명의 개념을 개시된 특정 형태로 제한하려는 의도는 아니며, 반대로 본 발명은 첨부의 특허청구범위에 규정된 바와 같은 본 발명의 정신 및 범주 내에 속하는 변형, 등가물, 및 대안을 모두 망라함은 물론일 것이다.
다음의 설명에서, 본 발명에 대한 좀 더 철저한 이해를 제공하기 위해, 논리 구현, 연산코드, 오퍼랜드를 지정하는 수단, 자원 분할/공유/이중화 구현, 시스템 컴포넌트의 타입 및 상호 관계, 및 논리 분할/통합 선택과 같은 많은 구체적인 세부사항이 기술될 수 있다. 그러나, 당업자라면 본 발명의 실시예가 그러한 구체적인 세부사항 없이도 실시될 수 있음을 인식할 것이다. 다른 경우, 제어 구조, 게이트 레벨 회로, 및 전체(full) 소프트웨어 명령어 시퀀스는 본 발명을 불명확하게 하지 않도록 하기 위해 상세히 제시되지 않을 수 있다. 당업자는 포함된 설명에 따라 과도한 실험 없이도 적절한 기능을 구현할 수 있을 것이다.
명세서에서 "일 실시예", "실시예", "예시적인 실시예" 등에 대한 언급은 기술된 실시예가 특정한 특징, 구조, 또는 특성을 포함할 수 있다는 것을 의미하지만, 모든 실시예가 반드시 그러한 특정한 특징, 구조, 또는 특성을 포함하는 것은 아닐 수 있다. 더욱이, 그러한 문구는 반드시 동일한 실시예를 지칭하는 것은 아니다. 또한, 특정한 특징, 구조, 또는 특성이 일 실시예와 관련하여 기술된 경우, 이것은 명시적으로 기술되든 기술되지 않든 당업자의 지식 내에서 다른 실시예와 관련하여 그러한 특징, 구조, 또는 특성을 달성할 것으로 생각된다.
본 발명의 일부 실시예는 하드웨어, 펌웨어, 소프트웨어, 또는 이들의 어떤 조합으로 구현될 수 있다. 컴퓨터 시스템에서 구현된 본 발명의 실시예는 컴포넌트들 간의 하나 이상의 버스 기반 상호 연결 및/또는 컴포넌트들 간의 하나 이상의 점대점(point-to-point) 상호 연결을 포함할 수 있다. 본 발명의 실시예는 또한 하나 이상의 프로세서에 의해 판독되고 실행될 수 있는 머신 판독가능한 유형(tangible)의 매체에 저장된 명령어로서 구현될 수 있다. 머신 판독가능한 유형의 매체는 정보를 머신(예컨대, 컴퓨팅 장치)에 의해 판독가능한 형태로 저장하거나 전송하는 모든 유형의 메커니즘을 포함할 수 있다. 예를 들면, 머신 판독가능한 유형의 매체는 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 자기 디스크 저장 매체, 광학 저장 매체, 플래시 메모리 장치, 및 다른 유형의 매체를 포함할 수 있다.
이제 도 1을 참조하면, 컴퓨팅 장치의 프리-부팅(pre-boot) 단계 동안 무선 통신을 용이하게 하는 시스템(100)은 컴퓨팅 장치(102) 및 무선 액세스 포인트(104)를 포함한다. 시스템(100)은 또한 외부 네트워크(106) 및 하나 이상의 원격 컴퓨팅 장치(108)를 포함할 수 있다. 컴퓨팅 장치(102)는 네트워크(106)에 통신가능하게 연결된 무선 액세스 포인트(104)에 통신가능하게 커플링된다. 아래에서 더욱 상세히 설명된 바와 같이, 컴퓨팅 장치(102)는 무선 액세스 포인트(104)를 통해 프리-부팅 단계 동안 무선 통신을 송수신할 수 있다.
컴퓨팅 장치(102)는 본 명세서에서 기술된 기능들을 수행할 수 있는 어떠한 타입의 전자 장치로도 구체화될 수 있다. 예를 들면, 컴퓨팅 장치(102)는 개인용 컴퓨터, 워크스테이션, 랩탑 컴퓨터, 핸드헬드 컴퓨터, 모바일 인터넷 장치, 셀룰러폰, 개인 휴대정보 단말기(personal data assistant), 전화기, 네트워크 어플라이언스(appliance), 가상화(virtualization) 장치, 저장 제어기, 또는 다른 컴퓨터 기반 장치로서 구체화될 수 있다.
도 1의 예시적인 실시예에서, 컴퓨팅 장치(102)는 대역내(in-band) 프로세서(120), 대역외(out-of-band: OOB) 프로세서(122), 칩셋(126), 메모리(128), 유선 송수신기(130), 및 무선 송수신기(132)를 포함한다. 일부 실시예에서, 컴퓨팅 장치(102)는 또한 하나 이상의 데이터 저장 장치(140) 및/또는 하나 이상의 추가적인 주변 장치(142)를 포함할 수 있다. 일부의 예시적인 실시예에서, 전술한 컴포넌트들 중 몇 개는 컴퓨팅 장치(102)의 마더보드에 내장될 수 있으며, 반면에 다른 컴포넌트는, 예를 들어, 주변 포트를 통해 마더보드에 통신가능하게 커플링될 수 있다. 더욱이, 컴퓨팅 장치(102)는 통상 컴퓨터 및/또는 컴퓨팅 장치에서 찾아 볼 수 있지만, 설명의 명료성을 위해 도 1에 예시되지 않은 다른 컴포넌트, 서브 컴포넌트, 및 장치를 포함할 수 있음을 인식해야 할 것이다.
컴퓨팅 장치(102)의 대역내 프로세서(120)는 소프트웨어/펌웨어를 실행할 수 있는 어떤 타입의 프로세서, 이를 테면, 마이크로프로세서, 디지털 신호 프로세서, 또는 마이크로컨트롤러 등으로서 구체화될 수 있다. 대역내 프로세서(120)는 예시적으로 프로세서 코어(124)를 갖는 단일 코어 프로세서로서 구체화된다. 그러나, 다른 실시예에서, 대역내 프로세서(120)는 다중 프로세서 코어(124)를 갖는 다중 코어 프로세서로서 구체화될 수 있다. 추가적으로, 컴퓨팅 장치(102)는 하나 이상의 프로세서 코어(124)를 갖는 추가의 대역내 프로세서(120)를 포함할 수 있다. 대역내 프로세서(120)는 일반적으로 컴퓨팅 장치(102)에 상주하는 운영 체제(operating system) 및 각종 애플리케이션, 프로그램, 라이브러리, 및 드라이버를 포함할 수 있는 소프트웨어 스택(stack)을 실행하는 것을 담당한다.
컴퓨팅 장치(102)의 칩셋(126)은 메모리 제어기 허브(MCH 또는 "노스브리지(northbridge)"), 입/출력 제어기 허브(ICH 또는 "사우스브리지(southbridge)"), 및 펌웨어 장치를 포함할 수 있다. 이러한 실시예에서, 펌웨어 장치는 기본 입/출력 시스템(BIOS) 데이터 및/또는 명령어 및/또는 다른 정보를 저장하는 메모리 저장 장치로서 구체화될 수 있다. 추가로, 일부 실시예에서, OOB 프로세서(122)는 펌웨어 메모리(예컨대, 플래시 메모리)의 안전한 부분에 액세스할 수 있다. 물론, 다른 실시예에서, 다른 구성을 갖는 칩셋도 이용될 수 있다. 예를 들면, 일부 실시예에서, 칩셋(126)은 플랫폼 제어기 허브(PCH)로서 구체화될 수 있다. 이러한 실시예에서, 메모리 제어기 허브(MCH)는 대역내 프로세서(120)에 내장되거나 그렇지 않고 그 대역내 프로세서와 연계될 수 있다.
칩셋(126)은 여러 신호 경로를 통해 대역내 프로세서(120)에 통신가능하게 커플링된다. 이러한 신호 경로 (및 도 1에 예시된 다른 신호 경로)는 컴퓨팅 장치(102)의 컴포넌트들 사이에서 통신을 용이하게 할 수 있는 어떤 타입의 신호 경로로서 구체화될 수 있다. 예를 들면, 이러한 신호 경로는 임의 개수의 와이어, 케이블, 광 가이드(light guides), 인쇄 회로 기판 트레이스(traces), 비아(via), 버스, 및/또는 중간(intervening) 장치 등으로서 구체화될 수 있다.
또한, 컴퓨팅 장치(102)의 메모리(128)는 여러 신호 경로를 통해 칩셋(126)에 통신가능하게 커플링된다. 메모리(128)는, 예를 들어, 동적 랜덤 액세스 메모리 장치(DRAM), 동기식 동적 랜덤 액세스 메모리 장치(SDRAM), 이중 데이터 속도 동기식 동적 랜덤 액세스 메모리 장치(DDR SDRAM), 플래시 메모리 장치, 및/또는 다른 휘발성 메모리 장치를 포함하여 하나 이상의 메모리 장치 또는 데이터 저장 장소로서 구체화될 수 있다. 추가로, 비록 도 1에는 단지 단일 메모리 장치(128)만 예시되어 있지만, 다른 실시예에서, 컴퓨팅 장치(102)는 추가 메모리 장치를 포함할 수 있다. 대역내 프로세서(120)에 의해 실행되는 소프트웨어 스택을 구성하는 운영 체제, 애플리케이션, 프로그램, 라이브러리, 및 드라이버는 실행 동안 메모리(128)에 상주할 수 있다. 더욱이, 메모리(128)에 저장된 소프트웨어 및 데이터는 메모리(128)와 하나 이상의 데이터 저장 장치(140) 사이에서 메모리 관리 동작의 일환으로 스와핑(swapped)될 수 있다.
컴퓨팅 장치(102)의 유선 송수신기(130)는 유선 네트워크를 통해(즉, 네트워크(106)의 유선 부분을 통해) 컴퓨팅 장치(102)와 (원격 컴퓨팅 장치(108))와 같은 하나 이상의 원격 장치 사이에서 유선 통신을 가능하게 하는 임의 개수의 장치 및 회로로서 구체화될 수 있다. 예를 들면, 유선 송수신기(130)는 유선 통신을 용이하게 하기 위해 하나 이상의 유선 네트워크 인터페이스를 포함할 수 있다. 유선 송수신기(130)는 또한 여러 신호 경로를 통해 칩셋(126)에 통신가능하게 커플링되어, 대역내 프로세서(120) 및 OOB 프로세서(122)가 유선 송수신기(130)에 액세스하도록 한다.
유선 송수신기(130)와 유사하게, 무선 송수신기(132)는 컴퓨팅 장치(102)와 무선 액세스 포인트(104) 사이에서 무선 통신을 가능하게 하는 임의 개수의 장치 및 회로로서 구체화될 수 있다. 예를 들면, 무선 송수신기(132)는 무선 통신을 용이하게 하기 위해 하나 이상의 무선 네트워크 인터페이스를 포함할 수 있다. 일부 실시예에서, 무선 송수신기(132)는 OOB 프로세서(122)에 내장되거나 그렇지 않고 그 OOB 프로세서와 연계될 수 있다. 예를 들면, 무선 송수신기(132)는 직렬 주변 인터페이스 버스(SPI Bus), 제어기 링크 버스, 또는 다른 전용 상호 연결과 같은 전용 신호 경로(134)를 통해 OOB 프로세서(122)에 통신가능하게 커플링될 수 있다. 이러한 실시예에서, 대역내 프로세서(120)는 무선 송수신기(132)에 액세스하거나 액세스하지 못할 수 있다. 다른 실시예에서, 무선 송수신기(132)는 칩셋(126)에 통신가능하게 커플링되어, 대역내 프로세서(120)와 OOB 프로세서(122)가 무선 송수신기(132)에 액세스할 수 있게 한다. 아래에서 더욱 상세히 설명된 바와 같이, OOB 프로세서(122)는 컴퓨팅 장치(102)의 프리-부팅 단계 동안 무선 송수신기(132)를 이용하여 컴퓨팅 장치(102)에 무선 통신 능력을 제공하도록 구성된다.
대역내 프로세서(120), 칩셋(126), 메모리(128), 및 유선 및 무선 송수신기(130, 132)를 포함하는 컴퓨팅 장치(102)의 컴포넌트는 전원(미도시)에도 동작가능하게 커플링된다. 전원은 AC 상용 전원, DC 배터리 전원, 또는 둘 다로부터 전력을 끌어올 수 있는 회로로서 구체화될 수 있다. 에너지 보존을 위해, 컴퓨팅 장치(102)는 활성적으로 사용되지 않을 때 몇 가지 전력 절감 동작 상태에 있을 수 있다. 예를 들면, 컴퓨팅 장치(102)는 만일 있다면 컴퓨팅 장치(102)의 전원이 다운되거나 "오프" 상태에 있을 수 있으며, 이 상태에서 컴퓨터 장치(102)의 컴포넌트는 전원으로부터 전력을 받지 않는다. 대안으로, 컴퓨팅 장치(102)는 여러 "슬립(sleep)" 또는 "휴면(hibernate)" 상태에 있을 수 있으며, 이 상태에서 전부는 아니지만 컴퓨팅 장치(102)의 일부 컴포넌트는 전원으로부터 전력을 받는다. 예를 들면, "슬립" 상태에서는 (데이터 유지를 위해) 휘발성 메모리(128)에 전력을 공급할 수 있지만, 대역내 프로세서(120)에는 공급하지 않는다. 그러한 전력 절감 동작 상태에서는 컴퓨팅 장치(102)를 전(full) 전력 동작 상태로 신속하게 복귀하도록 하면서 에너지를 절약한다.
OOB 프로세서(122)는 대역내 프로세서(120)와 구별되고 일반적으로 대역내 프로세서(120)와 독립적으로 동작한다. OOB 프로세서(122)는 또한 하나 이상의 프로세서 코어(미도시)를 갖는 하나 이상의 프로세서를 포함하여 마이크로프로세서, 디지털 신호 프로세서, 또는 마이크로컨트롤러 등과 같은, 소프트웨어를 실행할 수 있는 어떤 타입의 프로세서로도 구체화될 수 있다. OOB 프로세서(122)는 마더보드 상의 칩셋(126)에 통합될 수 있거나 또는 여러 신호 경로를 통해 칩셋(126)에 통신가능하게 커플링된 확장 보드 상에 배치된 하나 이상의 개별의 집적 회로로도 구체화될 수 있다. OOB 프로세서(122)는 또한 전술한 바와 같은 메모리(128) 및 무선 송수신기(132)와 같은 컴퓨팅 장치(102)의 여러 컴포넌트에 통신가능하게 커플링될 수 있다. 대안으로 또는 추가로, OOB 프로세서(122)는 전용 메모리 및/또는 전용 통신 회로와 같은, 유사한 기능을 갖는 내장형 컴포넌트를 포함할 수 있다(예컨대, 무선 송수신기(132)는 OOB 프로세서(122)에 내장될 수 있다).
OOB 프로세서(122)는 대역내 프로세서(120)의 동작 상태와 상관없이 컴퓨팅 장치(102)의 특정 기능을 관리하고 수행하도록 구성된다. 그러한 독립적인 동작을 용이하게 하기 위해, OOB 프로세서(122)는 전원에 대한 독립적 연결을 구비하여, 컴퓨팅 장치(102)의 다른 컴포넌트가 전원이 다운되거나 턴 오프될 때에도 OOB 프로세서(122)가 전력을 유지하게 할 수 있다. 더욱이, OOB 프로세서(122)는 또한 전원에 대한 독립적 연결을 구비한 무선 송수신기(132)를 통해 독립적인 네트워크 인터페이스를 구비하여, 대역내 프로세서(120)의 동작 상태에 상관없이 액세스 포인트(104)를 통해 무선 통신을 가능하게 할 수 있다. 다시 말하면, OOB 프로세서(122)는 대역내 프로세서(120)에서 실행하는 운영 체제 밖에서 네트워크(106)를 통해 (원격 컴퓨팅 장치(108)와 같은) 장치와 직접 통신할 수 있다. 실제로, 이러한 통신은 사용자의 지식 없이도 일어날 수 있다. 요약하면, OOB 프로세서(122)는 인입(incoming) 질의(queries)/명령어에 기초하여 지능적으로 동작하며, 대역내 프로세서(120)가 턴 오프되든, 대기 중에서(on standby) 실행하든, 초기화되든, 정상 동작 중이든 간에, 그리고 운영 체제가 부팅하든, 실행하든, 충돌되든, 그렇지 않고 비기능적(nonfunctioning)이든 간에 액세스 포인트(104)를 통해 무선 통신을 송수신할 수 있다.
일부의 예시적인 실시예에서, OOB 프로세서(122)는 Intel® Active Management Technology(Intel®AMT)를 이용하여, Intel® AMT의 일부를 이용하여, Intel® Management Engine(Intel® ME)를 이용하여, 또는 Intel® vProTM Technology(Intel® vPro)를 이용하여 구현될 수 있으며, 모두는 캘리포니아주, 산타 클라라 소재의 인텔 코퍼레이션(Intel Corporation)에서 입수가능하고, 및/또는 인텔 코퍼레이션에서 판매하는 칩셋 내에 존재한다. Intel AMT® 임베디드 플랫폼 기술은 각 엔드포인트 장치 상의 비휘발성 메모리에 저장된 하드웨어 및 소프트웨어 정보에 대역외 액세스를 가능하게 하여, 기능적인 운영 체제 및 다른 관리 도구에서 찾아 볼 수 있는 많은 소프트웨어 에이전트를 필요로 하지 않는다.
전술한 바와 같이, 컴퓨팅 장치(102)는 또한 하나 이상의 데이터 저장 장치(140) 및 하나 이상의 주변 장치(142)를 포함할 수 있다. 이러한 실시예에서, 칩셋(126)은 또한 하나 이상의 데이터 저장 장치(140) 및 하나 이상의 주변 장치(142)에 통신가능하게 커플링된다. 데이터 저장 장치(들)(140)는, 예를 들어, 메모리 장치 및 회로, 메모리 카드, 하드 디스크 드라이브, 고체 상태 드라이브, 또는 다른 데이터 저장 장치와 같은 단기적 또는 장기적 데이터 저장을 위해 구성된 어떤 형태의 장치 또는 장치들로도 구체화될 수 있다. 주변 장치(들)(142)는 입력 장치, 출력 장치, 및 다른 인터페이스 장치를 포함하여 임의 개수의 주변 장치를 포함할 수 있다. 예를 들면, 주변 장치(142)는 컴퓨팅 장치(102)의 디스플레이, 마우스, 키보드, 및 외부 스피커를 포함할 수 있다. 주변 장치(142)에 포함된 특정 장치는, 예를 들어, 컴퓨팅 장치(102)의 사용 의도에 따라 결정될 수 있다.
무선 액세스 포인트(104)는 컴퓨팅 장치(102)와 네트워크(106) 사이에서 무선 통신을 용이하게 할 수 있는 어떤 형태의 무선 액세스 포인트로도 구체화될 수 있다. 예를 들면, 무선 액세스 포인트(104)는 무선 라우터, 스위치, 또는 허브로 구체화될 수 있다. 네트워크(106)는 근거리 네트워크, 광역 네트워크, 공개적으로 이용가능한 글로벌 네트워크(예컨대, 인터넷), 또는 다른 네트워크와 같은 어떤 타입의 유선 및/또는 무선 네트워크로도 구체화될 수 있다. 추가로, 네트워크(106)는 라우터, 스위치, 및 중간(intervening) 컴포넌트 등과 같이, 컴퓨팅 장치(102)와 원격 컴퓨팅 장치(108) 사이에서 통신을 용이하게 하는 임의 개수의 추가 장치를 포함할 수 있다.
하나 이상의 원격 컴퓨팅 장치(108)는 컴퓨팅 장치(102)와 분리된 어떤 형태의 컴퓨팅 장치로도 구체화될 수 있다. 예를 들면, 원격 컴퓨팅 장치(108)는 하나 이상의 개인용 컴퓨터, 워크스테이션, 랩탑 컴퓨터, 핸드헬드 컴퓨터, 모바일 인터넷 장치, 셀룰러폰, 개인 휴대정보 단말기, 전화기, 네트워크 어플라이언스, 가상화 장치, 저장 제어기, 또는 또한 네트워크(106)를 통해 컴퓨팅 장치(102)와 통신하도록 구성된 다른 컴퓨터 기반 장치로 구체화될 수 있다. 하나 이상의 원격 컴퓨팅 장치(108)는 각각 컴퓨팅 장치(102)의 구성과 유사한 구성을 가질 수 있다.
전술한 바와 같이, 컴퓨팅 장치(102)는 컴퓨팅 장치(102)의 프리-부팅 단계 동안 무선 송수신기(132)를 이용하여 무선 통신을 용이하게 하도록 구성된다. 즉, 컴퓨팅 장치(102)에서 운영 체제를 로딩하기 전에, 그리고 대역내 프로세서(120)의 동작 상태와 상관없이, OOB 프로세서(122)는 통합 확장 펌웨어 인터페이스(UEFI)와 무선 송수신기(132) 사이에서 데이터 통신을 용이하게 하여 액세스 포인트(104)와의 무선 통신을 달성하도록 구성된다. 그렇게 하기 위해, 컴퓨팅 장치(102)는 도 2에 예시된 바와 같은 방법(200)을 실행할 수 있다. 방법(200)은 컴퓨팅 장치(102)를 재시작하거나 재부팅하는 블록(202)에서 시작한다. 즉, 블록(202)에서 컴퓨팅 장치(102)는 오프 상태에서 전원이 온되거나, 슬립 상태에서 재부팅되거나, 또는 충돌 또는 에러 상태에서 재부팅되는 등이 될 수 있다. 다음에, 블록(204)에서, 컴퓨팅 장치(102)는 레지스터 및 메모리 장소와 같은 각종 장치 및 소프트웨어 요소를 초기화한다. 추가로, 블록(204)에서 UEFI 환경(302)(도 3 참조)이 시작될 수 있다.
블록(206)에서, 컴퓨팅 장치(102)는 무선 송수신기(132)와의 무선 연결성을 갖는 OOB 프로세서(122)가 컴퓨팅 장치(102)에 내장되는지를 판단한다. 예를 들면, 컴퓨팅 장치(102)는 무선 송수신기(132)가 대역내 프로세서(120)의 동작 상태와 상관없이 전원이 공급된 상태인지를 판단할 수 있다. 만일 그렇다면, 블록(208)에서 컴퓨팅 장치(102)는 OOB 프로세서(122)가 프리-부팅 무선 통신을 위해 구성되거나 그러한 프리-부팅 무선 통신을 지원하는지를 판단한다. 예를 들면, 컴퓨팅 장치(102)는 OOB 프로세서(122)가 후술하는 바와 같이 UEFI(302)와 무선 송수신기(132) 사이에서 데이터 통신을 용이하게 하는 펌웨어를 포함하는지를 판단할 수 있다. 만일 블록(206)에서 OOB 프로세서(122)가 존재하지 않거나, 또는 OOB 프로세서(122)가 존재하지만 블록(208)에서 무선 연결성을 위해 구성되어 있지 않다고 컴퓨팅 장치(102)가 판단하면, 방법(200)은 후술하는 블록(212)으로 진행한다.
그러나, 만일 컴퓨팅 장치(102)에서 무선 연결성을 갖는 OOB 프로세서(122)가 존재하고 프리-부팅 단계 동안 무선 통신을 위해 구성되어 있다고 판단하면, 방법(200)은 블록(210)으로 진행한다. 블록(210)에서, UEFI(302)와 무선 송수신기(132) 사이에 무선 통신 인터페이스(300)(도 3 참조)가 구축된다. 무선 통신 인터페이스(300)는 소프트웨어 및/또는 하드웨어 컴포넌트를 포함할 수 있다. 예를 들면, 도 3에 예시된 바와 같이, 직렬 통신 드라이버(304)가 UEFI(302)에 제공되거나 그렇지 않고 그 UEFI에 의해 실행되어 OOB 프로세서(122)의 직렬 통신 하드웨어 인터페이스(306)에 데이터를 전달하고 그 직렬 통신 하드웨어 인터페이스로부터 데이터를 수신할 수 있다. 한가지 특정 실시예에서, 직렬 통신 하드웨어 인터페이스(306)는 범용 비동기 수신기/송신기(UART) 장치로 구체화되고 UEFI(302)는 주변 컴포넌트 상호 연결(PCI) 버스를 통해 인터페이스(306)와 통신하지만, 다른 장치 및/또는 방법도 UEFI(302)와 OOB 프로세서(122) 사이에서 데이터를 전달하는데 사용될 수 있다.
OOB 프로세서(122)는 또한 무선 송수신기(132)의 무선 통신 하드웨어 인터페이스(310)로 데이터를 전달하고 그 인터페이스로부터 데이터를 수신하기 위해 무선 통신 소프트웨어 인터페이스(308)를 포함한다. 한가지 특정 실시예에서, OOB 프로세서(122)는 직렬 주변 인터페이스 버스(SPI Bus), 제어기 링크 버스, 또는 다른 전용 상호 연결로 구체화될 수 있는 직렬 버스를 통해 무선 송수신기(132)와 통신한다. 아래에서 더욱 상세히 설명된 바와 같이, OOB 프로세서(122)는 기설정된 유선 통신 표준(예컨대, IEEE 802.3), 기설정된 무선 통신 표준 포맷(예컨대, IEEE 802.11)에 따라 포맷화되어 UEFI(302)로부터 수신된 유선 통신 데이터를 재패키지(repackage)하거나 재포맷화 하도록 구성된다. 마찬가지로, OOB 프로세서(122)는 또한 기설정된 무선 통신 표준, 기설정된 유선 통신 표준에 따라 포맷화되어 무선 송수신기(132)로부터 수신된 무선 통신 데이터를 재패키지하거나 재포맷화 하도록 구성된다.
도 2를 다시 참조하면, 블록(210)에서 무선 통신 인터페이스(300)가 구축된 후, 블록(212)에서 컴퓨팅 장치(102)는 프리-부팅 초기화를 지속한다. 프리-부팅 초기화 동안, 블록(214)에서 컴퓨팅 장치(102)는 어떤 무선 통신 트랜잭션이 요청되거나 그렇지 않고 일어나는지를 판단한다. 만일 그렇다면, 컴퓨팅 장치(102)는 프리-부팅 단계 무선 통신이 컴퓨팅 장치(102)에서 가능하였는지를 판단한다(예컨대, 블록(206, 208) 참조).
만일 프리-부팅 단계 무선 통신이 컴퓨팅 장치(102)에서 가능하였다면, 방법(200)은 블록(216)으로 진행하고, 이 블록에서 OOB 프로세서(122)는 UEFI(302)와 무선 송수신기(132) 사이의 데이터 통신을 처리한다. 예를 들면, 도 4에 예시된 바와 같이, OOB 프로세서(122)는 UEFI(302)로부터 수신된 데이터 전송을 처리하는 방법(400)을 실행할 수 있다. 방법(400)은 블록(402)에서 시작하고, 이 블록에서 OOB 프로세서(122)는 기설정된 유선 통신 표준에 따라 포맷화된 데이터 통신을 UEFI(302)로부터 수신한다. 블록(404)에서, OOB 프로세서(122)는 통신 데이터를 유선 통신 표준 포맷에서 기설정된 무선 통신 표준 포맷으로 재포맷화하거나 그렇지 않고 변환한다. 예를 들면, OOB 프로세서(122)는 1988년 2월 발표된 RFC -1042 표준에 의해 정의된 인터넷 엔지니어링 태스크 포스(IETF) 캡슐화 표준, 1997년 8월 12일 발표된 IEEE 802.1H 표준에 의해 정의된 터널 캡슐화 표준, 또는 다른 변환 표준과 같이 통신 데이터를 변환하는 표준 방법을 이용할 수 있다. 블록(406)에서 OOB 프로세서(122)는 무선 통신 표준 포맷에 따라 포맷화된 통신 데이터를 무선 송수신기(132)로 제공하거나 그렇지 않고 전송한다. 그러면, 무선 송수신기(132)는 통신 데이터를 액세스 포인트(104)로 무선으로 전송할 수 있다.
이제 도 5를 참조하면, OOB 프로세서(122)는 또한 무선 송수신기(132)로부터 수신된 데이터 전송을 처리하는 방법(500)을 실행할 수 있다. 방법(500)은 블록(502)에서 시작하고, 이 블록에서 OOB 프로세서(122)는 기설정된 무선 통신 표준에 따라 포맷화된 데이터 통신을 무선 송수신기(132)로부터 수신한다. 블록(504)에서, OOB 프로세서(122)는 통신 데이터를 무선 통신 표준 포맷에서 기설정된 유선 통신 표준 포맷으로 재포맷화거나 그렇지 않고 변환한다. 예를 들면, 전술한 바와 같이, OOB 프로세서(122)는 1988년 2월 발표된 RFC -1042 표준에 의해 정의된 IETF 캡슐화 표준, 또는 1997년 8월 12일 발표된 IEEE 802.1H 표준에 정의된 터널 캡슐화 표준, 또는 다른 변환 표준을 이용할 수 있다. 블록(406)에서, OOB 프로세서(122)는 유선 통신 표준 포맷에 따라 포맷화된 통신 데이터를 UEFI(302)로 제공하거나 그렇지 않고 전송한다. 그러면, UEFI(302)는 통신 데이터를 처리하고 필요하다면 적절히 응답할 수 있다.
도 2를 다시 참조하면, 만일 무선 트랜잭션이 요청되지 않거나 프리-부팅 무선 통신이 가능하지 않다면, 방법(200)은 블록(220)으로 진행하고, 이 블록에서 컴퓨팅 장치(102)는 프리-부팅 단계가 완료되었는지를 판단한다. 만일 그렇지 않다면, 방법(200)은 프리-부팅 초기화가 지속되는 블록(214)으로 루프백한다. 그러나, 만일 프리-부팅 단계가 완료되었다면, 방법(200)은 블록(222)으로 진행하고, 이 블록에서 UEFI(302)와 무선 송수신기(132) 사이에 구축된 무선 통신 인터페이스(300)를 제거한다.
전술한 바와 같이, UEFI(302)와 무선 송수신기(132) 사이의 무선 통신 인터페이스(300)는 컴퓨팅 장치(102)의 프리-부팅 단계 동안에 구축된다. 예를 들면, 도 6에는 컴퓨팅 장치(102)의 예시적인 부팅 타임라인(timeline)(600)이 예시되어 있다. 부팅 타임라인(600)은 복수의 부팅 단계를 포함한다. 예를 들면, 컴퓨팅 장치(102)가 초기에 전원이 온이거나 그렇지 않고 재시작하면, 보안 단계(602)를 실행한다. 다음에, 대역내 프로세서(120)와 같은 컴퓨팅 장치(102)의 플랫폼의 하드웨어 장치를 초기화하는 프리-EFI 초기화(PEI) 환경 단계(604)를 실행한다. 다음에, 복수의 장치, 버스, 및/또는 서비스 드라이버를 로딩하고 및/또는 실행하는 드라이버 실행 환경(DXE) 단계(606)를 실행한다. 예시적인 실시예에서, UEFI(302)와 무선 송수신기(132) 사이의 무선 통신 인터페이스(300)는 드라이버 실행 환경 단계(606) 동안에 또는 그러한 단계의 완료시에 구축된다. 예를 들면, UEFI(302)는 직렬 통신 소프트웨어 드라이버(304)를 로딩하여 드라이버 실행 환경 단계(606) 동안 OOB 프로세서(122)와 통신할 수 있다. 드라이버 실행 환경 단계(606) 후에 부팅 장치 선택(BDS) 단계(608)를 실행한다. 다음에, 운영 체제 로더를 개시하는 과도 시스템 로드(TSL) 단계(610)를 실행한다. 추가로, OOB 프로세서(122)에 의해 UEFI(302)와 무선 송수신기(132) 사이에 구축된 무선 통신 인터페이스(300)는 TSL 단계(610) 동안 그리고 런타임(RT) 단계(612)에서 운영 체제의 실행 전에 제거된다.
본 발명은 도면 및 전술한 설명에서 상세히 예시되고 기술되었지만, 그러한 예시 및 설명은 예시적으로 간주되고 문자대로 제한하려는 것은 아니며, 단지 예시적인 실시예가 제시되고 기술된 것이며 본 발명 및 첨부의 특허청구범위의 정신 내에 속하는 모든 변경 및 변형이 보호되어야 함은 물론이다.
Claims (20)
- 컴퓨팅 장치의 프리-부팅(pre-boot) 단계 동안에 상기 컴퓨팅 장치의 무선 송수신기와 통합 확장 펌웨어 인터페이스(unified extensible firmware interface) 사이에 통신 인터페이스를 구축하는 단계; 및
상기 컴퓨팅 장치의 대역외(out-of-band: OOB) 프로세서를 이용하여 상기 프리-부팅 단계 동안에 상기 통합 확장 펌웨어 인터페이스와 상기 무선 송수신기 사이의 데이터 통신을 처리하는 단계
를 포함하는 방법. - 제1항에 있어서, 상기 통신 인터페이스를 구축하는 단계는, 범용 비동기 수신기/송신기(UART) 드라이버를 로딩하여 상기 통합 확장 펌웨어와 상기 OOB 프로세서 사이에서 직렬 통신을 용이하게 하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 통신 인터페이스를 구축하는 단계는, 상기 프리-부팅 단계의 드라이버 실행 환경(DXE) 단계 동안에 상기 통신 인터페이스를 구축하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 데이터 통신을 처리하는 단계는,
상기 통합 확장 펌웨어 인터페이스로부터 유선 통신 표준에 따라 포맷화된 데이터 통신을 수신하는 단계;
상기 데이터 통신을 무선 통신 표준에 따라 재포맷화하는 단계; 및
상기 무선 통신 표준으로 포맷화된 상기 데이터 통신을 상기 무선 송수신기에 제공하는 단계를 포함하는 방법. - 제1항에 있어서, 상기 데이터 통신을 처리하는 단계는,
상기 무선 송수신기로부터 무선 통신 표준에 따라 포맷화된 데이터 통신을 수신하는 단계;
상기 데이터 통신을 유선 통신 표준에 따라 재포맷화하는 단계; 및
상기 유선 통신 표준으로 포맷화된 상기 데이터 통신을 상기 통합 확장 펌웨어 인터페이스에 제공하는 단계를 포함하는 방법. - 제1항에 있어서, 상기 데이터 통신을 처리하는 단계는, 상기 OOB 프로세서의 직렬 하드웨어 인터페이스를 이용하여 상기 통합 확장 펌웨어 인터페이스로부터 데이터 통신을 수신하는 단계를 포함하는 방법.
- 제6항에 있어서, 상기 데이터 통신을 수신하는 단계는, 상기 OOB 프로세서와의 주변 컴포넌트 상호 연결(PCI) 버스를 통해 상기 데이터 통신을 수신하는 단계를 포함하는 방법.
- 제6항에 있어서, 상기 데이터 통신을 수신하는 단계는, 상기 OOB 프로세서의 범용 비동기 수신기/송신기(UART) 장치를 이용하여 상기 통합 확장 펌웨어 인터페이스로부터 데이터 통신을 수신하는 단계를 포함하는 방법.
- 제1항에 있어서, 상기 통신 인터페이스를 구축하는 단계 전에, 상기 컴퓨팅 장치가 상기 무선 송수신기를 포함하는지를 판단하는 단계를 더 포함하고,
상기 통신 인터페이스를 구축하는 단계는, 상기 컴퓨팅 장치가 상기 무선 송수신기를 포함한다고 판단하는 것에 응답하여 상기 통합 확장 펌웨어 인터페이스와 상기 무선 송수신기 사이의 통신을 확립하는 단계를 포함하는 방법. - 제1항에 있어서, i) 상기 프리-부팅 단계 동안에 상기 데이터 통신을 처리하는 단계 후에 그리고 ⅱ) 상기 컴퓨팅 장치에서 운영 체제를 로딩하기 전에 상기 통신 인터페이스를 제거하는 단계를 더 포함하는 방법.
- 복수의 명령어를 포함하는 비일시적(non-transitory) 머신 판독가능한 매체로서, 상기 명령어는 실행되는 것에 응답하여 컴퓨팅 장치가,
상기 컴퓨팅 장치의 프리-부팅(pre-boot) 단계 동안에 통합 확장 펌웨어 인터페이스(unified extensible firmware interface)와 무선 송수신기 사이에 통신 인터페이스를 구축하고;
상기 컴퓨팅 장치의 대역외(out-of-band: OOB) 프로세서에서, 상기 프리-부팅 단계 동안에 상기 통합 확장 펌웨어 인터페이스로부터 수신된 데이터 통신을 유선 통신 표준 포맷에서 무선 통신 표준 포맷으로 재포맷화하도록 하는
비일시적 머신 판독가능한 매체. - 제11항에 있어서, 상기 통신 인터페이스를 구축하는 것은, 범용 비동기 수신기/송신기(UART) 드라이버를 로딩하여 상기 통합 확장 펌웨어와 상기 OOB 프로세서 사이에서 직렬 통신을 용이하게 하는 것을 포함하는 비일시적 머신 판독가능한 매체.
- 제11항에 있어서, 상기 복수의 명령어는 상기 컴퓨팅 장치가 추가로,
상기 무선 송수신기로부터 무선 통신 표준에 따라 포맷화된 데이터 통신을 수신하고;
상기 데이터 통신을 유선 통신 표준에 따라 재포맷화하고;
상기 유선 통신 표준에 따라 포맷화된 상기 데이터 통신을 상기 통합 확장 펌웨어 인터페이스에 제공하도록 하는 비일시적 머신 판독가능한 매체. - 제11항에 있어서, 상기 데이터 통신을 처리하는 것은, 상기 OOB 프로세서의 직렬 인터페이스를 이용하여 상기 통합 확장 펌웨어 인터페이스로부터 데이터 통신을 수신하는 것을 포함하는 비일시적 머신 판독가능한 매체.
- 제11항에 있어서, 상기 데이터 통신을 수신하는 것은, 상기 OOB 프로세서와의 주변 컴포넌트 상호 연결(PCI) 버스를 통해 상기 데이터 통신을 수신하는 것을 포함하는 비일시적 머신 판독가능한 매체.
- 제15항에 있어서, 상기 데이터 통신을 수신하는 것은, 상기 OOB 프로세서의 범용 비동기 수신기/송신기(UART) 장치를 이용하여 상기 통합 확장 펌웨어 인터페이스로부터 데이터 통신을 수신하는 것을 포함하는 비일시적 머신 판독가능한 매체.
- 컴퓨팅 장치로서,
대역내 프로세서;
무선 송수신기;
상기 대역내 프로세서의 동작 상태와 상관없이 무선 통신 회로를 이용하여 무선 네트워크를 통해 통신하도록 구성된 대역외(OOB) 프로세서
를 포함하고, 상기 OOB 프로세서는,
상기 컴퓨팅 장치 상의 상기 대역내 프로세서의 프리-부팅(pre-boot) 단계 동안 상기 컴퓨팅 장치에서 실행되는 통합 확장 펌웨어 인터페이스(unified extensible firmware interface)와 상기 무선 송수신기 사이에 통신 인터페이스를 구축하고;
상기 프리-부팅 단계 동안 상기 통합 확장 펌웨어 인터페이스와 상기 무선 송수신기 사이의 데이터 통신을 처리하도록 구성되는 컴퓨팅 장치. - 제17항에 있어서, 상기 통신 인터페이스를 구축하는 것은 범용 비동기 수신기/송신기(UART) 드라이버를 로딩하여 상기 통합 확장 펌웨어와 상기 OOB 프로세서 사이에서 직렬 통신을 용이하게 하는 것을 포함하는 컴퓨팅 장치.
- 제17항에 있어서, 상기 데이터 통신을 처리하는 것은,
상기 통합 확장 펌웨어 인터페이스로부터 유선 통신 표준에 따라 포맷화된 데이터 통신을 수신하고;
상기 데이터 통신을 무선 통신 표준에 따라 재포맷화하고;
상기 무선 통신 표준에 따라 포맷화된 상기 데이터 통신을 상기 무선 송수신기에 제공하는 것을 포함하는 컴퓨팅 장치. - 제17항에 있어서, 상기 데이터 통신을 처리하는 것은,
상기 무선 송수신기로부터 무선 통신 표준에 따라 포맷화된 데이터 통신을 수신하고;
상기 데이터 통신을 유선 통신 표준에 따라 재포맷화하고;
상기 유선 통신 표준에 따라 포맷화된 상기 데이터 통신을 상기 통합 확장 펌웨어 인터페이스에 제공하는 것을 포함하는 컴퓨팅 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/889,583 US8386618B2 (en) | 2010-09-24 | 2010-09-24 | System and method for facilitating wireless communication during a pre-boot phase of a computing device |
US12/889,583 | 2010-09-24 | ||
PCT/US2011/053225 WO2012040694A2 (en) | 2010-09-24 | 2011-09-26 | System and method for facilitating wireless communication during a pre-boot phase of a computing device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130072243A KR20130072243A (ko) | 2013-07-01 |
KR101465923B1 true KR101465923B1 (ko) | 2014-11-26 |
Family
ID=45871800
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137007894A KR101465923B1 (ko) | 2010-09-24 | 2011-09-26 | 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템 및 방법 |
Country Status (7)
Country | Link |
---|---|
US (2) | US8386618B2 (ko) |
EP (1) | EP2619679B1 (ko) |
JP (1) | JP5657799B2 (ko) |
KR (1) | KR101465923B1 (ko) |
CN (1) | CN103250144B (ko) |
TW (1) | TWI482091B (ko) |
WO (1) | WO2012040694A2 (ko) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103221922A (zh) * | 2012-10-17 | 2013-07-24 | 华为技术有限公司 | 加载方法、装置和系统 |
US9509601B2 (en) * | 2012-11-01 | 2016-11-29 | Cisco Technology, Inc. | Device driver for a software router |
TWI492153B (zh) * | 2013-07-11 | 2015-07-11 | Insyde Software Corp | System platform for supporting infrared receiver / transmitter and method of operation thereof |
CN104427645A (zh) * | 2013-08-19 | 2015-03-18 | 中兴通讯股份有限公司 | 一种可接入移动宽带网的用户终端配置方法及装置 |
CN103733180A (zh) | 2013-09-29 | 2014-04-16 | 华为技术有限公司 | 服务器的控制方法和服务器的控制设备 |
US9195341B2 (en) | 2014-02-14 | 2015-11-24 | Texas Instruments Incorporated | Touchscreen controller and method for charger noise reduction through noise shaping |
CN103853586B (zh) * | 2014-03-05 | 2017-02-08 | 中南大学 | 一种在uefi层实现无线网卡驱动的方法 |
US10116619B2 (en) | 2014-03-19 | 2018-10-30 | Connectwise, Inc. | Systems and methods for provisioning, configuring, diagnosing, and maintaining out-of band management of computing devices |
DE102015109482B4 (de) * | 2015-06-15 | 2018-12-13 | Phoenix Contact Gmbh & Co. Kg | Feldbusgerät zur erfassung eines betriebszustandes eines automatisierungstechnikgerätes |
US9912528B2 (en) * | 2015-12-22 | 2018-03-06 | Mcafee, Llc | Security content over a management band |
WO2017116401A1 (en) * | 2015-12-28 | 2017-07-06 | Hewlett-Packard Development Company, L.P. | Booting a computer using a wireless network connection |
US10521216B2 (en) | 2017-01-17 | 2019-12-31 | Oracle International Corporation | Unified extensible firmware interface updates |
US11036408B2 (en) | 2017-03-26 | 2021-06-15 | Oracle International Corporation | Rule-based modifications in a data storage appliance monitor |
US10462224B2 (en) | 2017-06-29 | 2019-10-29 | Intel Corporation | Coordinator for low power sensor network with tree or star topology |
EP3718010B1 (en) | 2017-11-28 | 2023-04-26 | Hewlett-Packard Development Company, L.P. | Operating system repairs via electronic devices |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090240806A1 (en) | 2000-05-31 | 2009-09-24 | Wi-Lan Inc. | Wireless local area network |
Family Cites Families (68)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5944821A (en) | 1996-07-11 | 1999-08-31 | Compaq Computer Corporation | Secure software registration and integrity assessment in a computer system |
US5918048A (en) | 1997-03-17 | 1999-06-29 | International Business Machines Corporation | Booting an operating system using soft read-only storage (ROS) for firmware emulation |
US5991822A (en) | 1997-03-17 | 1999-11-23 | International Business Machines Corporation | System for modifying functions of static device driver using a registered driver extension extended dynamically by providing an entry point for the driver extension |
JP3593241B2 (ja) | 1997-07-02 | 2004-11-24 | 株式会社日立製作所 | 計算機の再起動方法 |
US6128732A (en) | 1997-12-15 | 2000-10-03 | Compaq Computer Corporation | Implementing universal serial bus support with a minimum of system RAM |
US5974547A (en) | 1998-03-20 | 1999-10-26 | 3Com Corporation | Technique for reliable network booting of an operating system to a client computer |
US6212592B1 (en) | 1998-09-17 | 2001-04-03 | Micron Technology, Inc. | Computer system for processing system management interrupt requests |
US6219828B1 (en) | 1998-09-30 | 2001-04-17 | International Business Machines Corporation | Method for using two copies of open firmware for self debug capability |
US6560712B1 (en) | 1999-11-16 | 2003-05-06 | Motorola, Inc. | Bus arbitration in low power system |
US6587951B1 (en) | 1999-12-23 | 2003-07-01 | Gateway, Inc. | Method of powering down a computer system by performing an unconditional shutdown after interrupts of first and second software systems respectively fail following a power button event |
US6615288B1 (en) | 1999-12-27 | 2003-09-02 | Dell Products L.P. | Generating system management interrupt in response to usb controller signal and processing interrupt routine in upper most level of system memory |
US7031945B1 (en) | 2000-07-24 | 2006-04-18 | Donner Irah H | System and method for reallocating and/or upgrading and/or rewarding tickets, other event admittance means, goods and/or services |
US6889340B1 (en) | 2000-10-13 | 2005-05-03 | Phoenix Technologies Ltd. | Use of extra firmware flash ROM space as a diagnostic drive |
US6745296B2 (en) | 2001-04-18 | 2004-06-01 | Phoenix Technologies, Ltd. | System and method for providing cacheable smram |
TW515959B (en) | 2001-05-10 | 2003-01-01 | Via Tech Inc | Method for memory data access by system management interrupt and computer system thereof |
US20020188789A1 (en) * | 2001-06-11 | 2002-12-12 | Cyberlane Inc. | Wireless modem device |
US6760804B1 (en) * | 2001-09-11 | 2004-07-06 | 3Com Corporation | Apparatus and method for providing an interface between legacy applications and a wireless communication network |
US7103529B2 (en) | 2001-09-27 | 2006-09-05 | Intel Corporation | Method for providing system integrity and legacy environment emulation |
US6775728B2 (en) | 2001-11-15 | 2004-08-10 | Intel Corporation | Method and system for concurrent handler execution in an SMI and PMI-based dispatch-execution framework |
US7082542B2 (en) | 2001-12-21 | 2006-07-25 | Intel Corporation | Power management using processor throttling emulation |
US6857041B2 (en) | 2002-03-29 | 2005-02-15 | Intel Corporation | Method and apparatus providing an interface to allow physical memory to be initialized using firmware/hardware methods |
US7321599B1 (en) * | 2002-07-30 | 2008-01-22 | Otc Wireless, Inc. | Wired protocol to wireless protocol converter |
US7143277B2 (en) | 2002-08-19 | 2006-11-28 | Intel Corporation | Methods and apparatus for event based console variable coherence maintenance in a pre-boot environment |
US7543048B2 (en) | 2002-11-22 | 2009-06-02 | Intel Corporation | Methods and apparatus for enabling of a remote management agent independent of an operating system |
US7231512B2 (en) | 2002-12-18 | 2007-06-12 | Intel Corporation | Technique for reconstituting a pre-boot firmware environment after launch of an operating system |
US7284136B2 (en) | 2003-01-23 | 2007-10-16 | Intel Corporation | Methods and apparatus for implementing a secure resume |
US7134125B2 (en) | 2003-02-07 | 2006-11-07 | Intel Corporation | Method for firmware to provide seamless regulation of system resources and extend additional configuration methods for system resource management |
US7320052B2 (en) | 2003-02-10 | 2008-01-15 | Intel Corporation | Methods and apparatus for providing seamless file system encryption and redundant array of independent disks from a pre-boot environment into a firmware interface aware operating system |
US20040230963A1 (en) | 2003-05-12 | 2004-11-18 | Rothman Michael A. | Method for updating firmware in an operating system agnostic manner |
US7136994B2 (en) | 2003-05-13 | 2006-11-14 | Intel Corporation | Recovery images in an operational firmware environment |
US7549055B2 (en) | 2003-05-19 | 2009-06-16 | Intel Corporation | Pre-boot firmware based virus scanner |
US20040255106A1 (en) | 2003-06-10 | 2004-12-16 | Rothman Michael A. | Recovery of operating system configuration data by firmware of computer system |
US20050021968A1 (en) | 2003-06-25 | 2005-01-27 | Zimmer Vincent J. | Method for performing a trusted firmware/bios update |
US20050015430A1 (en) | 2003-06-25 | 2005-01-20 | Rothman Michael A. | OS agnostic resource sharing across multiple computing platforms |
US7587750B2 (en) | 2003-06-26 | 2009-09-08 | Intel Corporation | Method and system to support network port authentication from out-of-band firmware |
US7478141B2 (en) | 2003-06-26 | 2009-01-13 | Intel Corporation | Accessing firmware of a remote computer system using a remote firmware interface |
US7146512B2 (en) * | 2003-06-30 | 2006-12-05 | Intel Corporation | Method of activating management mode through a network for monitoring a hardware entity and transmitting the monitored information through the network |
US7159105B2 (en) | 2003-06-30 | 2007-01-02 | Intel Corporation | Platform-based optimization routines provided by firmware of a computer system |
US20050044363A1 (en) | 2003-08-21 | 2005-02-24 | Zimmer Vincent J. | Trusted remote firmware interface |
US7165170B2 (en) | 2003-09-12 | 2007-01-16 | Intel Corporation | System and method for firmware to export pre-boot data into the operating system runtime environment |
US7275152B2 (en) | 2003-09-26 | 2007-09-25 | Intel Corporation | Firmware interfacing with network protocol offload engines to provide fast network booting, system repurposing, system provisioning, system manageability, and disaster recovery |
US7181610B2 (en) | 2003-10-07 | 2007-02-20 | Intel Corporation | Method and system to encapsulate a driver written for an operating system (OS) runtime environment in an OS independent environment firmware extension |
US7302593B2 (en) * | 2003-12-18 | 2007-11-27 | Intel Corporation | Method for remotely querying a blade server's physical location within a rack of blade servers |
US7185190B2 (en) | 2003-12-29 | 2007-02-27 | Intel Corporation | Pushing capabilities into firmware by an operating system |
US20050149711A1 (en) | 2003-12-30 | 2005-07-07 | Zimmer Vincent J. | Method and system for firmware-based run time exception filtering |
JP2005218046A (ja) * | 2004-02-02 | 2005-08-11 | Mitsubishi Electric Corp | 通信機器 |
US7269768B2 (en) | 2004-03-18 | 2007-09-11 | Intel Corporation | Method and system to provide debugging of a computer system from firmware |
US7809836B2 (en) * | 2004-04-07 | 2010-10-05 | Intel Corporation | System and method for automating bios firmware image recovery using a non-host processor and platform policy to select a donor system |
US7310725B2 (en) | 2004-06-30 | 2007-12-18 | Intel Corporation | Common platform pre-boot and run-time firmware services |
US8745273B2 (en) * | 2004-12-22 | 2014-06-03 | Intel Corporation | Out-of-band state machine |
US7383450B2 (en) | 2004-12-22 | 2008-06-03 | Intel Corporation | Low power firmware |
US20060143209A1 (en) * | 2004-12-29 | 2006-06-29 | Zimmer Vincent J | Remote management of a computer system |
US8539213B2 (en) * | 2004-12-31 | 2013-09-17 | Intel Corporation | Manageability extension mechanism for system firmware |
US7542467B2 (en) * | 2005-03-28 | 2009-06-02 | Intel Corporation | Out-of-band platform switch |
US7451301B2 (en) | 2005-03-30 | 2008-11-11 | Intel Corporation | OS independent device management methods and apparatuses having a map providing codes for various activations of keys |
US20070168161A1 (en) * | 2006-01-18 | 2007-07-19 | Vellore Jaichander K | System and method for monitoring and configuring multiple devices in a power distribution network |
JP2007328534A (ja) * | 2006-06-07 | 2007-12-20 | Toshiba Corp | 情報処理装置および情報処理装置の制御方法 |
US20080152142A1 (en) | 2006-12-20 | 2008-06-26 | Mark Buer | Memory scrambler unit (msu) |
US20080162809A1 (en) | 2006-12-28 | 2008-07-03 | Rothman Michael A | Operating system-independent remote accessibility to disk storage |
US7827371B2 (en) | 2007-08-30 | 2010-11-02 | Intel Corporation | Method for isolating third party pre-boot firmware from trusted pre-boot firmware |
US8583908B2 (en) | 2007-12-31 | 2013-11-12 | Intel Corporation | Enhanced network and local boot of Unified Extensible Firmware Interface images |
US8645965B2 (en) * | 2007-12-31 | 2014-02-04 | Intel Corporation | Supporting metered clients with manycore through time-limited partitioning |
JP2009211640A (ja) * | 2008-03-06 | 2009-09-17 | Nec Corp | 無線lanを使用したネットワークブート方法およびネットワークブート用端末 |
US7865775B2 (en) * | 2008-03-27 | 2011-01-04 | Intel Corporation | Remote firmware recovery |
US20090327741A1 (en) * | 2008-06-30 | 2009-12-31 | Zimmer Vincent J | System and method to secure boot uefi firmware and uefi-aware operating systems on a mobile internet device (mid) |
US8296553B2 (en) * | 2008-11-19 | 2012-10-23 | Intel Corporation | Method and system to enable fast platform restart |
US8561138B2 (en) * | 2008-12-31 | 2013-10-15 | Intel Corporation | System and method to provide added security to a platform using locality-based data |
US20100299510A1 (en) * | 2009-05-19 | 2010-11-25 | Chip Ueltschey | Bluetooth pre-boot authentication in bios |
-
2010
- 2010-09-24 US US12/889,583 patent/US8386618B2/en not_active Expired - Fee Related
-
2011
- 2011-09-23 TW TW100134375A patent/TWI482091B/zh not_active IP Right Cessation
- 2011-09-26 WO PCT/US2011/053225 patent/WO2012040694A2/en active Application Filing
- 2011-09-26 KR KR1020137007894A patent/KR101465923B1/ko not_active IP Right Cessation
- 2011-09-26 EP EP11827709.4A patent/EP2619679B1/en active Active
- 2011-09-26 JP JP2013529451A patent/JP5657799B2/ja not_active Expired - Fee Related
- 2011-09-26 CN CN201180045848.0A patent/CN103250144B/zh not_active Expired - Fee Related
-
2013
- 2013-02-25 US US13/775,630 patent/US20130311665A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090240806A1 (en) | 2000-05-31 | 2009-09-24 | Wi-Lan Inc. | Wireless local area network |
Also Published As
Publication number | Publication date |
---|---|
WO2012040694A2 (en) | 2012-03-29 |
US20120079118A1 (en) | 2012-03-29 |
EP2619679B1 (en) | 2019-06-19 |
JP2013539878A (ja) | 2013-10-28 |
US8386618B2 (en) | 2013-02-26 |
TWI482091B (zh) | 2015-04-21 |
EP2619679A2 (en) | 2013-07-31 |
KR20130072243A (ko) | 2013-07-01 |
US20130311665A1 (en) | 2013-11-21 |
JP5657799B2 (ja) | 2015-01-21 |
EP2619679A4 (en) | 2017-01-11 |
CN103250144B (zh) | 2016-03-16 |
CN103250144A (zh) | 2013-08-14 |
TW201227516A (en) | 2012-07-01 |
WO2012040694A3 (en) | 2012-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101465923B1 (ko) | 컴퓨팅 장치의 프리-부팅 단계 동안 무선 통신을 용이하게 하는 시스템 및 방법 | |
KR101832953B1 (ko) | 모바일 디바이스의 어플리케이션 프로세서의 원격 시동 | |
US9996142B2 (en) | Selective power management for pre-boot firmware updates | |
JP5916881B2 (ja) | ポータブルコンピューティングデバイス(pcd)上で動作可能なオペレーティングシステムに周辺構成要素インターフェースエクスプレス(pcie)結合デバイスを見せるための方法およびpcd | |
US8660817B2 (en) | Hardware test and diagnosis system and method | |
KR102244114B1 (ko) | 시스템 온 칩에서의 메모리 액세스들을 위한 전력 관리 | |
CN103345407B (zh) | 控制电路、连通控制器、连通控制方法及主板 | |
US8924702B2 (en) | Method for switching dual operating system on docking system | |
US8943232B2 (en) | System method for enumerating client devices embedded in a user device during reboot, wake up or restart of user device | |
US11550592B2 (en) | Methods and apparatus to utilize non-volatile memory for computer system boot | |
US20140280960A1 (en) | Methods and apparatus for dynamically allocating devices between multiple controllers | |
WO2012023152A2 (en) | Multi-processor electronic systems | |
JP2008287505A (ja) | 情報処理装置およびレガシーエミュレーション処理停止制御方法 | |
EP3063621A1 (en) | Flexible bootstrap code architecture | |
GB2463809A (en) | Peripheral device operation method, peripheral device and host | |
JP2009524126A (ja) | モバイル計算装置及びそのデータパケッジ受け取り方法 | |
CN110688235B (zh) | Uefi固件与os间共享无线连接信息的系统及方法 | |
EP2889719B1 (en) | Method and apparatus to manage power usage in a processor | |
GB2461660A (en) | Peripheral equipment operating method, peripheral equipment and host | |
WO2016040189A1 (en) | System and method for sharing a solid-state non-volatile memory resource | |
CN115291951A (zh) | Uefi启动方法、装置、电子设备以及存储介质 | |
US20240303086A1 (en) | Boot time reduction for an information handling system with a data processing unit |
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: 20171027 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |