KR101330508B1 - Bios 구성 기술을 위한 컴퓨터 판독가능 매체 및 시스템 - Google Patents

Bios 구성 기술을 위한 컴퓨터 판독가능 매체 및 시스템 Download PDF

Info

Publication number
KR101330508B1
KR101330508B1 KR1020087025848A KR20087025848A KR101330508B1 KR 101330508 B1 KR101330508 B1 KR 101330508B1 KR 1020087025848 A KR1020087025848 A KR 1020087025848A KR 20087025848 A KR20087025848 A KR 20087025848A KR 101330508 B1 KR101330508 B1 KR 101330508B1
Authority
KR
South Korea
Prior art keywords
rule
qualifier
bios configuration
attribute
bios
Prior art date
Application number
KR1020087025848A
Other languages
English (en)
Other versions
KR20080112322A (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 KR20080112322A publication Critical patent/KR20080112322A/ko
Application granted granted Critical
Publication of KR101330508B1 publication Critical patent/KR101330508B1/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/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram
    • 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/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • 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

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)
  • Stored Programmes (AREA)

Abstract

본 BIOS 구성 업데이트 기술은 시스템 관리자가 다양한 제조업자들로부터의 컴퓨팅 시스템들의 집합을 단일 관리자 콘솔로부터 원격으로 구성할 수 있도록 하는 능력을 제공한다. 컴퓨팅 시스템 내의 하드웨어 설정들을 정의하는 데 BIOS 구성 기술(description)이 사용된다. BIOS 구성 기술은 다양한 제조업자들이 그들의 컴퓨팅 시스템 내의 구성가능한 요소들에 대한 인터페이스를 설계할 때 사용하는 스키마를 미리 정의할 수 있다. 대안적으로, BIOS 구성 기술은 다양한 제조업자들이 그들의 컴퓨팅 시스템 내의 구성가능한 요소들에 대한 인터페이스를 설계할 때 사용하는 규칙들의 집합을 정의할 수 있다. BIOS 구성 기술을 사용하여, 한 관리 애플리케이션은 다양한 제조업자들로부터의 컴퓨팅 시스템들에 있는 구성가능한 요소들을 액세스할 수 있다.
BIOS 구성 업데이트 기술, BIOS 구성 기술, 스키마, 관리 애플리케이션, 한정자

Description

BIOS 구성 기술을 위한 컴퓨터 판독가능 매체 및 시스템{BIOS CONFIGURATION UPDATE TECHNIQUE}
컴퓨팅 시스템은 컴퓨팅 시스템 내의 하드웨어 구성요소들을 제어하는 기본 입/출력 시스템(BIOS)을 갖는다. 예를 들어, BIOS는 키보드, 디스플레이 화면, 디스크 드라이브 등을 제어하기 위한 코드를 포함할 수 있다. 통상적으로, BIOS는 컴퓨팅 시스템의 일부인 판독 전용 메모리(read-only memory, ROM) 칩에 저장된다. BIOS가 ROM에 있기 때문에, 컴퓨팅 시스템을 부팅하는 데 항상 사용가능하다. 몇몇 컴퓨팅 시스템들에서, BIOS는 컴퓨팅 시스템이 부팅될 때마다 ROM으로부터 더 빠른 랜덤 액세스 메모리(RAM)로 복사되고 압축 해제될 수 있다. 이는 컴퓨팅 시스템을 더 빨리 부팅할 수 있게 하고 ROM 저장 크기를 더 작게 하는 것을 가능하게 한다. BIOS는 필요한 경우 BIOS가 업데이트되도록 하는 플래시 메모리 칩에 저장될 수도 있다.
BIOS에 의해 제어되는 하드웨어 요소들에 대한 설정을 구성하기 위해, 사용자는 컴퓨터 시스템 제조업자(즉, OEM(original equipment manufacturer))에 의해 제공되는 BIOS 설정 유틸리티와 상호작용한다. BIOS 설정 유틸리티는 로컬 BIOS 설정 유틸리티를 실행하고 있는 컴퓨팅 시스템과 물리적으로 상호작용하고 있는 사용자에 의해 액세스될 수 있다. 또한, 몇몇 제조업자들은 네트워크를 통해 사용자 가 컴퓨터 시스템을 구성할 수 있도록 하는 원격 BIOS 설정 유틸리티를 제공한다. 그러나, 로컬 유틸리티와 원격 유틸리티 모두 시스템-의존적(system-dependent)이다. 따라서, 한 제조업자로부터의 원격 네트워크 유틸리티는 다른 제조업자로부터의 컴퓨팅 시스템에서 BIOS 설정들을 변경할 수 없다. 또한, BIOS 설정 유틸리티와 상호작용하는 동안 운영 체제가 제공되지 않는다. 따라서, 시스템 관리자는, 운영 체제가 제공된 상태에서, 단일 원격 관리자 콘솔에서 실행되는 관리 애플리케이션을 사용하여 다양한 제조업자들로부터의 컴퓨팅 시스템들의 집합을 원격으로 구성할 수 없다.
<발명의 요약>
본 BIOS 구성 업데이트 기술(BIOS configuration update technique)은 시스템 관리자가 다양한 제조업자들로부터의 컴퓨팅 시스템들의 집합을 단일 관리자 콘솔로부터 원격으로 구성할 수 있도록 하는 능력을 제공한다. 컴퓨팅 시스템 내의 하드웨어 설정들을 정의하는 데 BIOS 구성 기술(BIOS configuration description)이 사용된다. BIOS 구성 기술은 다양한 제조업자들이 그들의 컴퓨팅 시스템 내의 구성가능한 요소들(configurable elements)에 대한 인터페이스를 설계할 때 사용하는 스키마를 미리 정의할 수 있다. 대안적으로, BIOS 구성 기술은 다양한 제조업자들이 그들의 컴퓨팅 시스템 내의 구성가능한 요소들에 대한 인터페이스를 설계할 때 사용하는 규칙들의 집합을 정의할 수 있다. BIOS 구성 기술을 사용하여, 한 관리 애플리케이션은 다양한 제조업자들로부터의 컴퓨팅 시스템들에 있는 구성가능한 요소들을 액세스할 수 있다.
본 발명의 요약은 아래의 상세한 설명에서 더 상세히 설명되는 개념들의 선택을 간략한 형태로 소개하기 위해 제공된 것이다. 본 발명의 요약은 청구된 본 발명의 주요 특징 또는 본질적 특징들을 식별하기 위한 것이 아니며, 또한 청구된 본 발명의 범위를 결정하는 데 있어 보조물로서 사용되도록 하기 위한 것이 아니다.
비제한적(non-limiting)이고 모든 것을 망라하지는 않는(non-exhaustive) 실시예들이 아래의 도면들을 참조하여 설명되며, 여기서 같은 참조 번호는 달리 명기되지 않는 한 다양한 도면들에 걸쳐 같은 부분들을 나타낸다. 편리함을 위해, 참조 번호의 가장 좌측의 숫자는 참조 번호가 가장 먼저 나타나는 특정 도면을 식별한다.
도 1은 일 실시예에 따라 여기에 설명된 BIOS 구성 업데이트 기술을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 시스템이다.
도 2는 도 1의 컴퓨팅 시스템과 같은 하나 이상의 컴퓨팅 시스템에 상주하고(resident) 있는 본 BIOS 구성 업데이트 기술의 일 실시예를 구현하는 컴포넌트들의 기능 블록도이다.
도 3은 도 2의 예시적인 BIOS 구성 기술을 설명하는, 무선 컨트롤러에 대한 미리 정의된 스키마를 구현하기 위한 예시적인 BIOS 구성 기술이다.
도 4는 도 2의 또 다른 예시적인 BIOS 구성 기술을 설명하는, 프레임워크-기반 스키마를 구현하는 예시적인 BIOS 구성 기술이다.
도 5는 예시적인 BIOS 업데이트 프로세스의 일 실시예를 도시하는 흐름도이다.
도 6은 BIOS 구성 기술에 기초한 사용자-인터페이스를 구축하기 위한 프로세스의 일 실시예를 도시하는 흐름도이다.
도 7은 구성가능한 요소들의 설정을 변경할 때 도 4에서의 사용에 적합한, BIOS 메소드들과 도 1의 컴퓨팅 시스템 내의 구성가능한 요소들 사이의 매칭을 나타내는 예시적인 표이다.
다음의 설명은 한 애플리케이션으로 하여금 다양한 제조업자로부터의 컴퓨팅 시스템들에서 BIOS 설정들을 구성할 수 있도록 하는 BIOS 구성 업데이트 기술에 관한 것이다. 개략적으로, 본 기술은 컴퓨팅 시스템 내의 구성가능한 하드웨어 구성요소들을 기술하기 위한 BIOS 구성 기술(BIOS configuration description)을 이용한다. 본 BIOS 구성 업데이트 기술의 이러한 양상들 및 다른 양상들이 이제 상세히 설명될 것이다.
도 1은 여기에 설명된 BIOS 구성 업데이트 기술의 일 실시예를 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 시스템이다. 시스템은 컴퓨팅 장치(100)와 같은 컴퓨팅 장치를 포함한다. 컴퓨팅 장치(100)는 개인용 컴퓨터, 랩톱, 서버, 핸드헬드 또는 휴대용 장치(예를 들어, 휴대 전화, 휴대용 정보 단말기(digital assistant) 기타 등등과 같은 임의의 유형의 컴퓨팅 장치를 나타낸다. 가장 기본적인 구성에서, 컴퓨팅 장치(100)는 통상적으로 적어도 하나의 처리 장치(102) 및 시스템 메모리(104)를 포함한다. 컴퓨팅 장치의 정확한 구성 및 유형에 따라, 시스템 메모리(104)는 (RAM과 같은) 휘발성, (ROM, 플래시 메모리 등과 같은) 비휘발성 또는 이 둘의 어떤 조합일 수 있다. 시스템 메모리(104)는 통상적으로 BIOS(140), 운영 체제(106), 하나 이상의 프로그램 모듈(108)을 포함하고, 프로그램 데이터(110)를 포함할 수 있다. 본 BIOS 구성 업데이트 기술에 대해서, BIOS(140)는 BIOS 구성 업데이트 기술을 구현하기 위한 하나 이상의 컴포넌트(142)를 포함할 수 있다. 또한, 운영 체제(106)는 BIOS 구성 업데이트 기술을 구현하기 위한 하나 이상의 컴포넌트(144)를 포함할 수 있다. 컴포넌트들(142 및 144)은 도 2와 함께 아래에서 상세히 설명될 것이다. 프로그램 모듈(108)은 컴포넌트들(142 및 144) 내에 구현되는 BIOS 구성 업데이트 기술을 이용하는 관리 애플리케이션(146)을 포함할 수 있다. 이 기본 구성은 점선(112) 내의 컴포넌트들에 의해 도 1에서 도시된다.
컴퓨팅 장치(100)는 추가적인 특징 또는 기능들을 가질 수 있다. 예를 들어, 컴퓨팅 장치(100)는, 예를 들어, 자기 디스크, 광학 디스크, 또는 테이프와 같은 추가적인 데이터 저장 장치들(이동식 및/또는 비이동식) 또한 포함할 수 있다. 이러한 추가적인 저장소는 도 1에서 이동식 저장소(120) 및 비이동식 저장소(122)에 의해 도시된다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술에 구현된 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함할 수 있다. 시스템 메모리(104), 이동식 저장소(120) 및 비이동식 저장소(122) 모두 컴퓨터 저장 매체의 예이다. 따라서, 컴퓨터 저장 매체는, RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 기타 광학 저장소, 자기 카세트, 자기 테이프, 자기 디스크 저장소 또는 기타 자기 저장 장치, 또는 원하는 정보를 저장하는 데 사용될 수 있고 컴퓨팅 장치(100)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만 이에 제한되지는 않는다. 임의의 이러한 컴퓨터 저장 매체는 장치(100)의 일부일 수 있다.
컴퓨팅 장치(100)는 또한 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등과 같은 입력 장치(들)(124)를 가질 수 있다. 컴퓨팅 장치(100)는, 예를 들어 네트워크를 통해 장치가 다른 컴퓨팅 장치들(130)과 통신할 수 있도록 하는 통신 연결(128)들을 포함할 수 있고, 따라서 한 컴퓨팅 시스템 상의 애플리케이션(146)이 본 BIOS 구성 업데이트 기술에 따라 다른 컴퓨팅 시스템 상의 하드웨어 설정들을 변경할 수 있다. 통신 연결(들)(128)은 통신 매체의 한 예이다. 통신 매체는 통상적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터에 의해 구현될 수 있다. 예로서, 통신 매체는 유선 네트워크 또는 직접 배선 접속(direct-wired connection)과 같은 유선 매체, 그리고 음향, RF, 적외선, 기타 무선 매체와 같은 무선 매체를 포함하지만 이에 제한되지는 않는다. 컴퓨터 판독가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 사용가능한 매체일 수 있다. 예로서, 컴퓨터 판독가능 매체는 "컴퓨터 저장 매체" 및 "통신 매체"를 포함할 수 있지만 이에 제한되지는 않는다.
다양한 모듈 및 기술들은 일반적으로 하나 이상의 컴퓨터 또는 다른 장치들 에 의해 실행되는 프로그램 모듈과 같은 컴퓨터-실행가능 명령어들과 관련하여 여기에서 설명될 것이다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 이 프로그램 모듈 및 이와 유사한 것 기타 등등은 네이티브 코드(native code)로서 실행되거나, 가상 기계 또는 다른 JIT(just-in-time) 컴파일 실행 환경에서와 같이 다운로드되어 실행될 수 있다. 통상적으로, 프로그램 모듈들의 기능은 다양한 실시예에서 원하는 바에 따라 결합되거나 분산될 수 있다. 이들 모듈 및 기술의 구현은 컴퓨터 판독가능 매체의 어떤 형태에 저장되거나 이들 사이에 전송될 수 있다.
도 2는 도 1의 컴퓨팅 시스템과 같은 하나 이상의 컴퓨팅 시스템에 상주하는 본 BIOS 구성 업데이트 기술의 일 실시예를 구현하는 컴포넌트들의 기능 블록도이다. 섹션(202) 내에서 동작하는 컴포넌트들은 일반적으로 사용자 모드라 불리는 권한이 없는 모드(unprivileged mode)에서 동작한다. 섹션(204) 내에서 동작하는 컴포넌트들은 일반적으로 커널 모드라 불리는 권한이 있는 모드에서 동작한다. 당업자들에게 알려진 바와 같이, "커널 모드"는 운영 체제(operating system, os)의 가장 권한 있고(privileged) 보호되는(protected) 레벨에서 발생하는 프로세싱을 말한다. 커널 모드 컴포넌트들은 보호되는 메모리에 존재하며 기본 운영 체제 서비스들을 제공한다. "사용자 모드"는 애플리케이션 계층에서 발생하고 커널 모드 드라이버들에 대한 일반적인 액세스가 없는 프로세싱을 말한다. 섹션(206) 내의 컴포넌트들은, 하드웨어 구성요소들 상의 레지스터와 같이, 하드웨어 레벨에 있으 며, 이로써 하드웨어가 구성가능하게 되도록 한다. 이 하드웨어 컴포넌트들(예를 들어, 구성가능한 요소들(230-236))은 통상적으로 변경될 수 있는 적어도 하나의 설정을 갖는다. 구성가능한 요소들은 무선 네트워크 카드, 디스플레이, CD-ROM 드라이브 등과 같은 임의의 유형의 하드웨어 장치일 수 있다.
본 BIOS 구성 업데이트 기술의 일 실시예는 관리 계층 컴포넌트(212), 매핑 컴포넌트(214), 운영 체제와 보드 간 인터페이스 컴포넌트(operating system to board interface component)(216), 및 BIOS(218)에 대해 여러 잘 알려진 컴포넌트들을 이용할 수 있다. 예를 들어, 관리 계층 컴포넌트(212)는, 사용자 모드 및 커널 모드 모두에서, 하드웨어 구성요소와 같은 계측 컴포넌트(instrumented component)들이 사용자 모드의 관리 애플리케이션(210)에 정보 및 통지를 제공할 수 있는 인터페이스를 제공하는 WINDOWS Management Instrumentation(WMI) 시스템을 포함할 수 있다. BIOS(218)는 ACPI-컴플라이언트 하드웨어(ACPI-compliant hardware)의 특징(feature)들을 제어하는 메소드를 포함하는 Advanced Configuration and Power Interface(ACPI) 코드(도시되지 않음)를 포함할 수 있다. ACPI 코드는 BIOS의 일부로서 컴파일되고 저장될 수 있다. 그러면, ACPI 코드의 메소드들은 ACPI 하드웨어의 특징들과 통신하는 잘 알려진 ACPI 드라이버와 같은 커널 모드 드라이버(예를 들어, 운영 체제와 보드 간 인터페이스 컴포넌트(216))에 내장되는 가상 기계에 의해 해석되고 실행될 수 있다. 다음, 매핑 컴포넌트(214)는 WMI(즉, 관리 계층 컴포넌트(212))로부터 명령을 수신하고, 명령을 ACPI 컴플라이언트 명령으로 변환하고, ACPI 드라이버(즉, OS와 보드 간 인터페이스 컴포넌 트(216))를 통해 ACPI 컴플라이언트 명령을 발행(issue)하도록 구성된 ACPI-WMI 매핑 드라이버를 포함한다. 관리 계층 컴포넌트, 매핑 컴포넌트, OS와 보드 간 인터페이스 컴포넌트 및 BIOS를 위한 이들 기본적인 컴포넌트들(conventional components) 사이의 상호작용은 잘 알려진 것이다. 그러나, 이들 컴포넌트는 예시적인 목적을 위한 것일 뿐이며, 다른 운영 환경에서 다른 적용가능한 컴포넌트들을 사용하지 못하도록 본 BIOS 구성 업데이트 기술의 적용가능성(applicability)을 제한하지 않는다.
개략적으로, 컴포넌트들(212, 214, 216, 및 218)은 데이터가 관리 애플리케이션(210)으로부터 하드웨어 요소들(230-236)로 흐르는 "파이프(pipe)"를 제공한다. 그러나, 위에서 논의된 바와 같이, BIOS(218)의 구성은 컴퓨터 제조업자, BIOS 설계자 기타 등등에 좌우된다. 따라서, 관리 애플리케이션(210)은 각 제조업자가 그들의 컴퓨팅 시스템에 대한 BIOS를 어떻게 구성하는지 알 수 없고, 따라서, 이러한 서로 다른 컴퓨팅 시스템들의 구성 설정들을 관리할 수 없다.
그러나, 본 BIOS 구성 업데이트 기술에 따라, BIOS 구성 기술(BIOS configuration description)(220)이 제공된다. 개략적으로, BIOS 구성 기술(220)은 컴퓨터 제조업자들이 그들의 하드웨어 구성요소들(즉, 구성가능한 요소들)을 정의하는 방식을 기술한다. 도 3과 관련하여 이후에 설명되는 일 실시예에서, BIOS 구성 기술(220)은 구성가능한 요소들 및 구성가능한 요소들에 대한 잠재적인 값들을 상술하는(detail) 미리 정의된 스키마를 포함한다. 도 4와 관련하여 이후에 설명되는 다른 실시예에서, BIOS 구성 기술(220)은 구성가능한 요소들 및 구성가능한 요소들에 대한 잠재적 값들을 정의하기 위한 규칙들의 집합을 포함한다. 또 다른 개선(refinement)에서, 구성가능한 요소들에 대한 객체 정의(222)들은 선택적으로 BIOS(218)에 저장될 수 있다. 간단히 말해서, 도 3과 관련하여 이후에 설명되는 이들 객체 정의는 BIOS 구성 기술(220)에 따른다(conform). 또한 BIOS(218)는 맵(224)을 포함한다. 간단히 말해서, 도 7과 관련하여 이후에 설명되는 맵(224)은 관련된 구성가능한 요소(들)를 구성하기 위한 하나 이상의 메소드에 고유 식별자를 관련시킨다. 고유 식별자는 BIOS 구성 기술에 정의되고, 관리 계층 컴포넌트(212) 및 관리 애플리케이션(210)에 사용가능하다. 따라서, 관리 애플리케이션은 구체적 고유 식별자를 알 필요가 없다. 대신, BIOS 내의 대응한 설정을 변경하기 위해, 친숙한 이름(friendly name) 및/또는 객체 이름이 관리 애플리케이션에 의해 사용될 수 있다. 관리 애플리케이션(210)은 구성가능한 요소들과 동일한 컴퓨팅 시스템에서 실행되거나(즉, 로컬 모드) 다른 컴퓨팅 시스템에서 실행(즉, 원격 모드)될 수 있음을 유의해야 한다.
도 3은 도 2의 예시적인 BIOS 구성 기술을 설명하는, 무선 컨트롤러에 대한 미리 정의된 스키마를 구현하는 예시적인 BIOS 구성 기술이다. 일 실시예에서, BIOS 구성 기술(300)은 산업 표준 공통 정보 모델(common information model, CIM)을 구현할 수 있다. 당업자들이 이해하는 바와 같이, CIM은 객체 클래스, 속성, 방법 기타 등등에 대한 일관된 정의 및 데이터의 구조를 제공하기 위해 객체-지향 프로그래밍(object-oriented programming)의 기술들을 사용한다. 일 실시예에서, CIM은 MOF(Managed Object Format) 언어를 이용하여 구현될 수 있다. 따라서, 이 실시예에 대해, BIOS 구성 기술은 MOF(Managed Object Format) 클래스들의 목록을 수반할 수 있다. 그러면, 각 MOF 클래스는 구성가능한 요소들 중 하나를 설명한다.
상술된 바와 같이, BIOS 구성 기술은 스키마를 미리 정의함으로써 구현될 수 있다. 그러면, 미리 정의된 스키마는 BIOS를 설계할 때 제조업자들에 의해 이용된다. 스키마가 미리 정의되기 때문에, 관리 애플리케이션이 개발될 때 관리 애플리케이션들은 스키마를 인식한다. 따라서, 관리 애플리케이션은 스키마에 대한 이 지식을 관리 애플리케이션에 대한 코드에 통합한다. 도 3은 예시적인 미리 정의된 스키마에 구성가능한 요소를 미리 정의하기 위한 한 형식을 도시한다.
BIOS 구성 기술(300)은 메타데이터(310), 클래스 정보(330), 및 속성 정보(350)를 포함한다. 메타데이터(310)는 구성가능한 요소에 대한 한정자(qualifier) 또는 구성가능한 요소의 속성을 설명한다. 예를 들어, 예시적인 스키마(300)에서, 메타데이터(310)는 지원되는 관리 계층 컴포넌트의 유형을 명시하는(specify) 제1 메타데이터 한정자(312)(예를 들어, "WMI")를 포함한다. 제2 메타데이터 한정자(314)(예를 들어, "Dynamic")는 관리 애플리케이션이 값을 쿼리(query)할 때마다 구성가능한 요소의 값이 발견되었음을 명시한다. 제3 메타데이터 한정자(316)(예를 들어, "Provider") 및 대응하는 메타데이터 값(317)(예를 들어, "WMIProv")은 어느 관리 계층 서브-컴포넌트(제공자(provider)라고도 알려짐)가 구성가능한 요소 값을 검색하는 데 책임이 있는지를 명시한다. 다시 말해, 한정자(317) 및 메타데이터 값(317)은 구성가능한 요소들을 어떻게 액세스하는지에 대해 관리 계층 컴포넌트에게 세부 사항들을 명시한다. 제4 메타데이터 한정자(318)(예를 들어, "DisplayName") 및 대응하는 메타데이터 값(319)(예를 들어, "Onboard 802.11x Wireless Controller Configuration")은 정의되고 있는 구성가능한 요소와 관련된 디스플레이 이름을 명시한다. 제5 메타데이터 한정자(320)(예를 들어, "Description") 및 대응하는 메타데이터 값(321)(예를 들어, "Configures the onboard 802.11x wireless controller")은 정의되고 있는 관련된 구성가능한 요소에 대한 기술을 명시한다. 제6 메타데이터 한정자(322)(예를 들어, "Locale") 및 대응하는 메타데이터 값(323)(예를 들어, "ox409)은 (복수의 지리(geography) 및 언어들에 대한 텍스트의 지역화(localization)를 위해) DisplayName(318) 및 Description(320)의 텍스트 로캘(textual locale)을 명시한다. 제7 메타데이터 한정자(324)(예를 들어, "GUID") 및 대응하는 메타데이터 값(325)(예를 들어, "2E5EC0CD-784F-4e3f-B63D-6FCBF5AEB6OF")은 구성가능한 요소에 대한 고유 식별자를 명시한다. 이후에 설명되는 바와 같이, 고유 식별자는 관련된 구성가능한 요소의 구성 설정을 변경하기 위한 메소드를 식별하기 위해 BIOS에 의해 사용된다. 도 3에는 여러 메타데이터 한정자들이 도시되어 있지만, BIOS 구성 기술은 이 메타데이터 한정자들의 서브셋만을 정의하거나, 추가적인 메타데이터 한정자들을 정의하거나, 기타 등등을 할 수 있다. 또한, 도 3에 도시된 텍스트 이름이 변경될 수 있다. 스키마가 미리 정의되고 관리 애플리케이션 개발자들 및 BIOS 구현자(implementor)들에 의해 고수되는(adhered) 한, 결과적인 형식(format) 및 명명 규칙(naming convention)은 여러 방식 중 하나일 수 있다.
상술된 바와 같이, BIOS 구성 기술(300)은 또한 클래스 정보(330) 및 속성 정보(350)를 포함한다. 클래스 정보(330)는 다른 클래스(333)(예를 들어, MS_BIOSSettings)로부터 상속될 수 있는 클래스(332)(예를 들어, "Onboard80211 Wireless")를 식별한다. 클래스 정보(330)는 또한 두 변수인 변수(334)(예를 들어, string InstanceName) 및 변수(336)(예를 들어, Boolean Active))와 그들의 대응하는 특성(attribute)(335)(예를 들어, "[read, key]") 및 특성(337)(예를 들어, "[read]")을 각각 포함한다. 이 변수들은, 한 순간에, 구성가능한 요소의 하나의 인스턴스가 존재하도록 보장하기 위해 관리 애플리케이션에 의해 사용될 수 있다. 가변적 선언들(variable declarations)을 갖는 특성들의 사용은 본 기술 분야에 잘 알려진 것이다. 클래스 정보(330)가 정의되고 나면, 속성 정보(350)가 정의된다. BIOS 구성 기술(300)은 클래스(332)와 관련된 하나의 속성 정보(350)를 도시하지만, 하나의 구성가능한 요소에 대해 복수의 속성 정보가 같은 방식으로 정의될 수 있다. 각 속성 정보(350)는 클래스의 그루핑(grouping) 내에서 정의되고 속성 식별자(339) 및 속성 번호(338)에 의해 식별된다. 각 속성 정보(350)에는 여러 한정자들(예를 들어, 한정자(340-348))이 있다. 한정자(342-348)들과 같이, 몇몇 한정자들은 관련된 값을 갖는다. 사용 권한 한정자(permission qualifier)(340)는 관련된 속성이 판독 및/또는 기입될 수 있는지를 식별한다. 속성 디스플레이 이름 한정자(342)는 속성 디스플레이 이름 데이터(342)와 관련되며 속성 디스플레이 이름이 사용가능한지 또는 사용 불가능한지를 명시한다. 다시 말해, 속성 디스플레이 이름 한정자(342)는 BIOS 설정들을 변경하기 위한 사용자 인터페이스가 속성에 대한 디스플레이 이름을 나타낼 수 있는지를 제어한다. 속성 기술 한정자(344)는 속성 기술 데이터(345)와 관련되며 디스플레이 이름 한정자가 사용가능한 경우 디스플레이될 수 있는 기술(description)을 명시한다. 값 한정자(346)는 값 데이터(347)와 관련되며, 관련된 속성에 대해 사용자 인터페이스에 나타날 수 있는 문자열을 명시한다. 값 데이터는, 제1 문자열이 0의 값과 관련되는 등의 제로 인덱스 목록(zero indexed list)의 형태일 수 있다. 디폴트 한정자(348)는 디폴트 값(349)과 관련되며, 초기에 사용자 인터페이스에 디스플레이되거나 또는 관련된 구성가능한 요소의 리셋(reset) 시에 디스플레이되는 디폴트 값을 식별한다. 속성 정보(350)는 또한 속성에 대한 선언(352)(예를 들어, "Boolean Enable")을 포함한다.
따라서, 스키마(300)는 구성가능한 요소들 및 관련된 메타데이터를 미리 정의한다. 따라서, 관리 애플리케이션들은 개발 동안 이 스키마에 대해 알며, 관리 애플리케이션이 개발될 때 임의의 특정 설정과 어떻게 상호작용해야 하는지를 결정할 수 있다. 그러나, DisplayName 및 Descriptions가 스키마에 정의되어 있지만, 관리 애플리케이션은 관련된 구성가능한 요소에 대해 자기 자신의 디스플레이 이름 및 기술을 사용할 수 있다. 미리 정의된 스키마(300)는 컴퓨터 제조업자들에게 배포되어, 그들의 컴퓨팅 시스템에 대한 BIOS가 스키마에 맞도록 한다.
또 다른 실시예에서, 스키마(300)는 미리 정의되지 않고, 오히려 BIOS 구성 기술이 스키마 요소들을 설명하기 위한 규칙들을 명시한다. 그러면, 이 규칙들은 관리 애플리케이션의 개발 전에 제공되는 프레임워크-기반 스키마를 제공한다. 실 제 스키마 코드는 관리 애플리케이션이 개발된 후에 제공된다. 따라서, 관리 애플리케이션은 BIOS 구성 스키마 내의 구성가능한 요소들의 전체 목록을 알지 않고서도 생성될 수 있다. 규칙들은 위의 미리 정의된 스키마에서 정의된 한정자들의 사용을 명시할 수 있지만, 한정자들과 관련된 실제 값들은 컴퓨터 시스템 제조업자에 의해 결정되도록 할 수 있다.
도 4는 도 2의 또 다른 예시적인 BIOS 구성 기술을 설명하는, 프레임워크-기반 스키마를 구현하는 예시적인 BIOS 구성 기술이다. 예시적인 프레임워크-기반 스키마는 두 개의 표(400 및 430)를 이용하여 설명된다. 표(400)는 한정자 및 그와 관련된 규칙을 명시하기 위한 두 열(402 및 404)을 갖는다. 각 행(410-424)은 예시적인 프레임워크-기반 스키마의 한정자들 중 하나 및 그와 관련된 규칙을 명시한다. 한정자들은 디스플레이 이름 한정자(410), 기술 한정자(description qualifier)(412), 기입 한정자(write qualifier)(414), 디폴트 한정자(416), 값 한정자(418), 속성 디스플레이 이름 한정자(420), 속성 기술 한정자(422), 및 도움말 한정자(help qualifier)(424)를 포함할 수 있다. 이 한정자들 중 다수는 미리 정의된 스키마에 대해 위에 설명된 대응하는 한정자를 갖는다. 따라서, 간결함을 위해, 이 한정자들에 대한 설명은 반복하지 않는다. 프레임워크-기반 스키마가, 컴퓨팅 시스템의 구성가능한 요소를 설명하는 스키마 코드를 어떻게 생성하고 어떻게 그와 상호작용하는지에 대한 안내를 제공한다는 것을 유의해야 한다. 개략적으로, 표(430)는 정의되는 속성의 유형(즉, 속성 유형 열(432))에 기초하여 사용자 인터페이스를 구축하기 위한 한 예시적인 기술(즉, 규칙 열(434))을 명시한다. 예를 들어, 행(440)은 속성이 부울 유형(Boolean type)인 경우 값 한정자(418)로부터의 레이블과 함께 라디오 버튼 컨트롤이 디스플레이됨을 명시하고; 행(442)은 속성이 정수 유형(integer type)이고 값 한정자가 식별되지 않은 경우 정수를 디스플레이하는 컨트롤이 디스플레이됨을 명시하고; 행(444)은 속성이 정수 유형이고 값 한정자가 식별되는 경우 값 한정자로부터의 옵션들의 드롭다운 목록이 디스플레이됨을 명시하고; 행(446)은 속성이 문자열 유형인 경우 임의의 문자열을 입력하기 위한 텍스트 박스가 디스플레이됨을 명시한다. 또한, 프레임워크-기반 스키마는 복수의 속성들이 정의되는 방식 기타 등등을 명시할 수 있다.
도 5는 예시적인 BIOS 구성 업데이트 프로세스(500)의 일 실시예를 도시하는 흐름도이다. BIOS 구성 업데이트 프로세스(500)는 블록(502)에서 시작되고 미리 정의된 스키마 및/또는 프레임워크 스키마를 이용할 수 있다. 블록(502)에서, 사용자 인터페이스는 BIOS 구성 기술(BIOS configuration description)에 기초하여 디스플레이된다. BIOS 구성 기술이 미리 정의된 스키마를 이용하는 경우, 관리 애플리케이션이 개발될 때 구성가능한 요소 각각이 알려지기 때문에 관리 애플리케이션은 사용자 인터페이스를 이미 코딩해 놓고 있을 수 있다. BIOS 구성 기술이 프레임워크-기반 스키마를 이용하는 경우, 관리 애플리케이션은 실행시간에 사용자 인터페이스를 구축해야 한다. 실행시간에 사용자 인터페이스를 구축하는 한 예시적인 프로세스는 도 6과 함께 설명될 것이다. 프로세싱은 블록(504)에서 계속된다.
블록(504)에서, 사용자 인터페이스와의 상호작용 중에 명시되는 설정들은 구 성가능한 요소들에서 변경된다. 통상적으로, 사용자 인터페이스는 선택될 수 있는 업데이트 버튼을 포함한다. 업데이트 버튼이 선택되면, 사용자 인터페이스에서 이루어진 변경들이 결정되고, 다음, 이 변경들은 업데이트할 관련된 구성가능한 요소들로 전송된다. 각 사용자 인터페이스 요소가 구성가능한 요소와 관련되고 각 구성가능한 요소는 고유 식별자를 갖기 때문에, 관리 애플리케이션은 관리 계층을 통해 구성가능한 요소를 업데이트하기 위한 값을 전달할 수 있다. 관리 계층은 고유 식별자에 기초하여 파이프를 통해 값을 구성가능한 요소에 전달한다. 도 7은 구성가능한 요소들의 설정을 변경할 때 도 5에서의 사용에 적합한, BIOS 메소드들과 도 1의 컴퓨팅 시스템 내의 구성가능한 요소들 사이의 매칭을 나타내는 예시적인 표이다. 도 7에 도시된 바와 같이, BIOS 맵(700)은 고유 식별자(예를 들어, GUID)(702)를 하나 이상의 메소드들(704)과 관련시킨다. 이 메소드들은 (있다면) 값들을 받아들이고, 관련된 구성가능한 요소의 설정들을 변경한다. 예를 들어, "Onboard80211Wireless" 보드는 "2E5EC0CD-748F-4e3f-B63D-6FCBF5AEB60F" GUID와 관련된다. 맵(700)을 이용하여, 메소드 A(708)는 "Onboard80211Wireless" 보드의 설정들을 변경하도록 호출된다.
도 6은 BIOS 구성 기술에 기초하여 실행시간에 사용자 인터페이스를 구축하기 위한 프로세스(600)의 일 실시예를 도시하는 흐름도이다. 프로세스(600)는 블록(602)에서 시작되며, 여기서 목록의 위치가 찾아진다(located). 일 실시예에서, 위치는
Figure 112008073384489-pct00001
와 같은 미리 정의된 네임스페이스(namespace)일 수 있다. 이 네임스페이스에 객체들을 추가하는 것은 잘 알려진 것이며, 통상적으로 컴퓨팅 시 스템이 부팅될 때 이루어진다. 프로세싱은 블록(604)에서 계속된다.
블록(604)에서, 객체들이 목록 내에서 식별된다. 프로세싱은 블록(606)에서 계속된다.
블록(606)에서, 위치가 찾아지는 각 객체에 대해, 블록들(610, 612 및 614)이 수행된다. 블록(610)은 구성가능한 요소에 대한 디스플레이 이름을 획득한다. 블록(612)은 구성가능한 요소에 대한 관련된 기술(description)을 획득한다. 블록(614)은 객체의 각 속성에 대해 수행되고 블록(620, 622, 및 624)을 포함한다. 블록(620)은 속성에 대한 유형을 획득한다. 블록(622)은 속성에 대한 한정자를 획득한다. 블록(624)은 도 4의 표(430)에 도시된 프레임워크-기반 스키마에 명시된 규칙들에 따라 유형 및 한정자들에 기초하여 속성에 대한 사용자 인터페이스 요소를 디스플레이한다. 객체의 모든 속성들 및 각 객체가 처리되고 나면, 사용자 인터페이스가 구축되고 사용자와 상호작용을 위해 준비된다.
따라서, 설명된 바와 같이, 본 BIOS 구성 업데이트 기술은 다양한 제조업자들로부터의 컴퓨팅 시스템에 있는 하드웨어 요소들을 잘 관리한다. 관리 애플리케이션은 미리 정의된 스키마에 기초하여 사용자 인터페이스를 가지고 "하드 코딩(hard coded)"될 수 있고, 또는 프레임워크-기반 스키마에 기초하여 실행시간에 사용자 인터페이스를 구축할 수 있다. 따라서 사용자 인터페이스는 다양한 제조업자들의 BIOS 구성을 조절할 수 있고, 구성가능한 요소들의 임의의 설정들을 변경하도록 하나의 편리한 사용자 인터페이스와의 상호작용을 가능하게 한다. 예시적인 실시예 및 적용이 도시되고 설명되었지만, 본 발명은 위에서 설명된 정확한 구성 및 리소스들로 제한되지 않음을 이해해야 한다. 청구된 본 발명의 범위를 벗어나지 않고, 당업자들에게 명백한 다양한 수정, 변화, 및 변경들이 여기에 개시된 본 발명의 방법 및 시스템의 구성, 동작, 및 세부 사항들에 이루어질 수 있다.

Claims (20)

  1. BIOS 구성 업데이트(BIOS configuration update)를 위한 방법을 수행하기 위한 컴퓨터 실행가능 명령어들을 저장하는 적어도 하나의 컴퓨터 판독가능 매체로서,
    상기 방법은,
    목록의 위치를 찾는(locating) 단계;
    상기 목록 내의 복수의 객체들을 식별하는 단계 - 각각의 객체는 BIOS 구성 기술(bios configuration description)에 기초하여 정의되고 컴퓨팅 시스템과 관련된 기본 입출력 시스템(basic input/output system)을 통해 액세스가능한 상기 컴퓨팅 시스템 내의 구성가능한 요소(configurable element)와 관련됨 - ; 및
    상기 컴퓨팅 시스템의 시스템 메모리의 사용자 영역에 상주하는 애플리케이션을 통해 상기 복수의 객체들 중 관련된 객체에 기초하여 상기 구성가능한 요소의 설정을 변경하는 단계를 포함하되,
    상기 BIOS 구성 기술은 상기 복수의 객체들을 정의하기 위한 규칙들의 집합(a set of rules)을 포함하고,
    상기 규칙들의 집합은 상기 구성가능한 요소를 원하는 형식(a desired format)으로 정의할 때 사용하기 위한 한정자들(qualifiers)을 포함하고, 상기 규칙들의 집합은 상기 한정자들과 관련된 실제 값들(actual values)이 상기 컴퓨팅 시스템의 제조자(manufacturer)에 의해 결정되는 것을 허용하며,
    상기 한정자들 및 규칙들의 집합은,
    디스플레이 이름 규칙과 관련된 디스플레이 이름 한정자 - 상기 디스플레이 이름 규칙은 "구성가능한 요소 클래스를 명명하는 스트링(string that names configurable element class)"임 - ;
    기술 규칙(description rule)과 관련된 기술 한정자 - 상기 기술 규칙은 "상기 구성가능한 요소 클래스에 대한 기술(description)을 제공하는 스트링(string that provides description for the configurable element class)"임 - ;
    기입 규칙(write rule)과 관련된 기입 한정자 - 상기 기입 규칙은 "속성의 값이 변경되는 것을 허용(allow value of property to be changed)"함 - ;
    디폴트 규칙(default rule)과 관련된 디폴트 한정자 - 상기 디폴트 규칙은 "속성 값을 리셋하는데 사용되는 디폴트 한정자와 관련된 값"임 - ;
    값 규칙(values rule)과 관련된 값 한정자 - 상기 값 규칙은 "허용된 값들의 목록(list of allowed values)"임 - ;
    속성 디스플레이 이름 규칙과 관련된 속성 디스플레이 이름 한정자 - 상기 속성 디스플레이 이름 규칙은 "속성의 값이 변경되는 것을 허용"함 - ;
    속성 기술 규칙과 관련된 속성 기술 한정자 - 상기 속성 기술 규칙은 상기 속성의 기술을 제공하는 스트링(string that provides description of the property)"임 - ; 및
    도움말 규칙(help rule)과 연관된 도움말 한정자 - 상기 도움말 규칙은 "상기 속성 및 상기 속성의 값들에 관한 추가 정보를 제공하는 스트링"임 - 를 포함하는
    컴퓨터 판독가능 매체.
  2. 제1항에 있어서,
    상기 BIOS 구성 기술은 상기 복수의 객체들을 정의하기 위한 미리 정의된 형식(format)을 명시하는 스키마를 포함하는
    컴퓨터 판독가능 매체.
  3. 제2항에 있어서,
    상기 스키마는 상기 구성가능한 요소와 관련된 고유 식별자를 포함하는
    컴퓨터 판독가능 매체.
  4. 제3항에 있어서,
    상기 적어도 하나의 설정을 변경하는 단계는 상기 고유 식별자와 관련된 적어도 하나의 메소드를 실행하는 단계를 포함하는
    컴퓨터 판독가능 매체.
  5. 제1항에 있어서,
    상기 원하는 형식은 관리형 객체 형식(managed object format)을 포함하는
    컴퓨터 판독가능 매체.
  6. BIOS 구성 업데이트(BIOS configuration update)를 위한 컴퓨팅 시스템으로서,
    프로세서와,
    복수의 명령어들이 로딩되는 메모리 - 상기 복수의 명령어들은 상기 프로세서에 의해 실행될 때, 구성가능한 요소를 구성하는 방법을 수행함 - 를 포함하고,
    상기 구성하는 방법은,
    a) 목록의 위치를 획득하는 단계;
    b) 구성 기술(configuration description)에 기초하여 상기 목록 내의 객체를 식별하는 단계 - 상기 객체는 상기 구성가능한 요소와 관련됨 - ;
    c) 상기 객체와 관련된 목록으로부터 속성을 식별하는 단계;
    d) 상기 속성과 관련된 유형 및 적어도 하나의 한정자를 획득하는 단계; 및
    e) 상기 유형 및 적어도 하나의 한정자에 기초하여 사용자 인터페이스 요소를 디스플레이하는 단계를 포함하되,
    상기 구성 기술은 상기 컴퓨팅 시스템의 기본 입출력 시스템의 구성가능한 요소를 정의할 때 따르는 규칙들의 집합을 포함하고,
    상기 규칙들의 집합은 상기 구성가능한 요소를 정의할 때 사용하기 위한 한정자들을 포함하며, 상기 규칙들의 집합은 상기 한정자와 관련된 실제 값들이 상기 컴퓨팅 시스템의 제조자에 의해 결정되는 것을 허용하는
    BIOS 구성 업데이트를 위한 컴퓨팅 시스템.
  7. 제6항에 있어서,
    상기 위치는 미리 정의된 네임스페이스(namespace)를 포함하는
    BIOS 구성 업데이트를 위한 컴퓨팅 시스템.
  8. 제6항에 있어서,
    상기 구성 기술은 상기 컴퓨팅 시스템의 기본 입출력 시스템의 구성가능한 요소를 정의하기 위한 미리 정의된 스키마를 포함하는
    BIOS 구성 업데이트를 위한 컴퓨팅 시스템.
  9. 제6항에 있어서,
    상기 사용자 인터페이스 요소와의 상호작용에 기초하여 상기 구성가능한 요소를 변경하는 단계를 더 포함하는
    BIOS 구성 업데이트를 위한 컴퓨팅 시스템.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020087025848A 2006-04-27 2007-03-08 Bios 구성 기술을 위한 컴퓨터 판독가능 매체 및 시스템 KR101330508B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/380,638 US7698546B2 (en) 2006-04-27 2006-04-27 BIOS configuration update technique
US11/380,638 2006-04-27
PCT/US2007/006032 WO2007130210A1 (en) 2006-04-27 2007-03-08 Bios configuration update technique

Publications (2)

Publication Number Publication Date
KR20080112322A KR20080112322A (ko) 2008-12-24
KR101330508B1 true KR101330508B1 (ko) 2013-11-15

Family

ID=38649681

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087025848A KR101330508B1 (ko) 2006-04-27 2007-03-08 Bios 구성 기술을 위한 컴퓨터 판독가능 매체 및 시스템

Country Status (6)

Country Link
US (1) US7698546B2 (ko)
EP (1) EP2024818A4 (ko)
JP (1) JP5346278B2 (ko)
KR (1) KR101330508B1 (ko)
CN (1) CN101432690B (ko)
WO (1) WO2007130210A1 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7797729B2 (en) * 2000-10-26 2010-09-14 O2Micro International Ltd. Pre-boot authentication system
US8032472B2 (en) * 2007-04-04 2011-10-04 Tuen Solutions Limited Liability Company Intelligent agent for distributed services for mobile devices
CA2699514A1 (en) * 2007-09-14 2009-03-19 Softkvm, Llc Software method and system for controlling and observing computer networking devices
TWI359426B (en) * 2007-09-17 2012-03-01 Asustek Comp Inc Method for recording parameter of memory and metho
KR101305502B1 (ko) * 2008-07-10 2013-09-05 삼성전자주식회사 컴퓨터 시스템 및 그 제어 방법
EP2202639B1 (en) * 2008-12-24 2012-09-12 VirtualLogix SA Virtual machine monitor
WO2011025479A1 (en) * 2009-08-25 2011-03-03 Hewlett-Packard Development Company, L.P. A plurality of interface files usable for access to bios
US9003001B2 (en) * 2010-03-15 2015-04-07 Cisco Technology, Inc. Bios parameter virtualization via BIOS configuration profiles
JP5284403B2 (ja) * 2011-03-28 2013-09-11 株式会社東芝 オントロジ更新装置、方法、およびシステム
CN102736908B (zh) * 2011-04-14 2017-06-06 研祥智能科技股份有限公司 远程设置cmos参数的系统、装置及方法
TWI438676B (zh) * 2011-04-20 2014-05-21 Giga Byte Tech Co Ltd 基本輸入輸出系統之觸控設定方法、電腦系統及其記錄媒體
US8635269B2 (en) * 2011-05-27 2014-01-21 General Electric Company Systems and methods to provide access to a network
EP2680137A4 (en) * 2011-07-27 2014-03-26 Huawei Tech Co Ltd METHOD AND SYSTEM FOR MANAGING BIOS CONFIGURATION DATA OF A BASE INPUT / OUTPUT SYSTEM
CN103064697B (zh) * 2011-10-24 2016-03-02 联想(北京)有限公司 管理引擎的配置方法和计算机
KR20150000486A (ko) 2012-04-18 2015-01-02 헤레우스 프레셔스 메탈즈 노스 아메리카 콘쇼호켄 엘엘씨 태양전지 접촉부의 인쇄 방법
CN104239026B (zh) * 2013-06-21 2019-12-27 伊姆西公司 用于度量存储系统性能的方法和装置
TWI480802B (zh) * 2013-11-18 2015-04-11 Insyde Software Corp Platform system, universal extension firmware interface Basic input and output system Support for hardware configuration changes, recording media and computer program products
CN104503798A (zh) * 2014-12-29 2015-04-08 杭州华三通信技术有限公司 服务器的配置方法及装置
US9904543B2 (en) * 2015-10-26 2018-02-27 Hewlett-Packard Development Company, L.P. Setting a build indicator to enable or disable a feature
TWI562071B (en) * 2015-11-04 2016-12-11 Mitac Computing Technology Corp Method for startup inspection and computer system using the same
US9875113B2 (en) * 2015-12-09 2018-01-23 Quanta Computer Inc. System and method for managing BIOS setting configurations
US10305750B1 (en) * 2016-07-29 2019-05-28 Juniper Networks, Inc. Methods and apparatus for centralized configuration management of heterogenous network devices through software-based node unification
US11221841B2 (en) 2018-08-03 2022-01-11 Hewlett-Packard Development Company, L.P. BIOS personalities
TWI714958B (zh) * 2019-01-30 2021-01-01 神雲科技股份有限公司 更改基本輸入輸出系統設定的方法
CN109992312B (zh) * 2019-03-26 2021-09-14 联想(北京)有限公司 电子设备的启动方法、装置以及系统
WO2021150219A1 (en) 2020-01-22 2021-07-29 Hewlett-Packard Development Company, L.P. Customized thermal and power policies in computers
CN113220511A (zh) * 2020-02-06 2021-08-06 伊姆西Ip控股有限责任公司 测试bios的方法、设备和计算机可读存储介质
WO2022232219A2 (en) * 2021-04-27 2022-11-03 Synerio Technologies, Inc. System and method of execution context processing with addressable universal data location
CN114116035B (zh) * 2022-01-26 2022-05-10 深圳市吉方工控有限公司 Windows下的BIOS设置方法、装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0636972A1 (en) 1993-07-30 1995-02-01 Microsoft Corporation Booting a computer system using a last known good set of configuration data
US5903894A (en) 1997-03-03 1999-05-11 Microsoft Corporation System and method for using a hierarchical data structure to control and identify devices and represent connections between the devices
US6636961B1 (en) 1999-07-09 2003-10-21 International Business Machines Corporation System and method for configuring personal systems
EP1574949A1 (en) 2004-03-12 2005-09-14 Sap Ag Method for modifying the software configuration of a computer system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2016396C (en) * 1989-05-15 1994-03-15 Refus J. Archon Initial program load (ipl) based on an object abstraction for a data processing system
US5594874A (en) 1993-09-30 1997-01-14 Cirrus Logic, Inc. Automatic bus setting, sensing and switching interface unit
US6185677B1 (en) * 1998-09-30 2001-02-06 Phoenix Technologies Ltd. Automatic generation of ACPI source language for peripheral resource configuration
JP2000137672A (ja) * 1998-10-29 2000-05-16 Nec Software Hokkaido Ltd Bios設定情報の変更方法
US6988250B1 (en) 1999-02-15 2006-01-17 Hewlett-Packard Development Company, L.P. Trusted computing platform using a trusted device assembly
JP4325019B2 (ja) * 1999-05-25 2009-09-02 富士ゼロックス株式会社 パラメータ設定システム
US7017143B1 (en) * 1999-12-01 2006-03-21 Microsoft Corporation External resource files for application development and management
GB2373902B (en) * 1999-12-21 2004-10-20 Intel Corp Architecture for dynamically exposing hardware capabilities using a page description language
US6594757B1 (en) 2000-02-25 2003-07-15 Intel Corporation Remote BIOS upgrade of an appliance server by rebooting from updated BIOS that has been downloaded into service partition before flashing programmable ROM
US6671802B1 (en) 2000-04-13 2003-12-30 Hewlett-Packard Development Company, L.P. Performance optimization of computer system by dynamically and immediately updating a configuration setting based on detected change in preferred use
US6598159B1 (en) 2000-06-27 2003-07-22 Intel Corporation Option-ROM boot
US6732267B1 (en) 2000-09-11 2004-05-04 Dell Products L.P. System and method for performing remote BIOS updates
KR100385184B1 (ko) 2000-10-19 2003-05-27 삼성전자주식회사 컴퓨터 및 컴퓨터의 운영체계 정보 자동 설정 방법
CN1170224C (zh) * 2001-01-09 2004-10-06 神基科技股份有限公司 能完成启动程序的电脑系统开机方法
US7278143B2 (en) * 2001-06-28 2007-10-02 Microsoft Corporation System and related methods for accessing management functionality through a command line utility
TW535112B (en) 2001-10-02 2003-06-01 Via Tech Inc Method for initializing computer system
EP1357475A1 (en) 2002-04-23 2003-10-29 Hewlett-Packard Company Data processing system and method
US7114064B2 (en) * 2002-11-14 2006-09-26 Hewlett-Packard Development Company, L.P. System and method for accessing an advanced configuration and power interface (ACPI) namespace nodal tree
US7219343B2 (en) 2003-04-10 2007-05-15 International Business Machines Corporation Firmware update mechanism in a multi-node data processing system
US7234054B2 (en) 2004-02-09 2007-06-19 Intel Corporation Method and apparatus for enabling platform configuration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0636972A1 (en) 1993-07-30 1995-02-01 Microsoft Corporation Booting a computer system using a last known good set of configuration data
US5903894A (en) 1997-03-03 1999-05-11 Microsoft Corporation System and method for using a hierarchical data structure to control and identify devices and represent connections between the devices
US6636961B1 (en) 1999-07-09 2003-10-21 International Business Machines Corporation System and method for configuring personal systems
EP1574949A1 (en) 2004-03-12 2005-09-14 Sap Ag Method for modifying the software configuration of a computer system

Also Published As

Publication number Publication date
CN101432690B (zh) 2012-03-14
JP2009535690A (ja) 2009-10-01
CN101432690A (zh) 2009-05-13
US20070255936A1 (en) 2007-11-01
US7698546B2 (en) 2010-04-13
WO2007130210A1 (en) 2007-11-15
EP2024818A1 (en) 2009-02-18
KR20080112322A (ko) 2008-12-24
JP5346278B2 (ja) 2013-11-20
EP2024818A4 (en) 2010-07-28

Similar Documents

Publication Publication Date Title
KR101330508B1 (ko) Bios 구성 기술을 위한 컴퓨터 판독가능 매체 및 시스템
KR101790190B1 (ko) 애플리케이션 시나리오 식별 방법, 전력 소비 관리 방법, 장치 및 단말기 장치
KR101795844B1 (ko) 런타임 시스템
RU2398266C2 (ru) Использование механизма привязки данных для выполнения привязки команд
CN101650660B (zh) 从中央存储装置引导计算机系统
US7386609B2 (en) Method, system, and program for managing devices in a network
US20070061818A1 (en) Detection of devices during operating system setup
US7502031B1 (en) Automatic component interface creator
Zimmer et al. Beyond BIOS: developing with the unified extensible firmware interface
US7424719B2 (en) Application with multiple embedded drivers
WO2004044736A2 (en) System and method for configuring software from reusable code
US7149978B1 (en) Methods for managing host adapter settings
CN104536788A (zh) 使应用的安装自动化的系统和方法
MX2008003417A (es) Acciones de control definidas en forma declarativa.
JP4404993B2 (ja) 強化機能を備えるシステムおよび方法
Smyth Android Studio 3.0 Development Essentials-Android 8 Edition
WO2011025479A1 (en) A plurality of interface files usable for access to bios
US9038049B2 (en) Automated discovery of resource definitions and relationships in a scripting environment
Waldén Customizing BIOS/UEFI From OS Using EFI Variables
US20200026637A1 (en) Multi-language heap analyzer
Skalsky et al. UEFI AND THE OEM AND IHV COMMUNITY.

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: 20161019

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20171018

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20181018

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20191016

Year of fee payment: 7