NeXTSTEPDRIVERKIT:Chapter1 1
- Driver Kit Components
Driver Kit 구성요소
The Driver Kit consists of the following tools:
Driver Kit 은 다음의 도구들로 구성됩니다.
- Objective C classes and protocols that provide the framework for writing drivers for various types of devices. The first three chapters discuss how to use these classes. The section "Classes" in Chapter 5, "Driver Kit Reference," specifies each class in detail.
다양한 유형의 장치에 대한 드라이버를 작성하기 위한 프레임 워크를 제공하는 Objective C 클래스 및 프로토콜. 처음의 3 장에서는 이러한 클래스를 사용하는 방법에 대해 설명합니다. 5 장, "Driver Kit Reference" 절의 "Classes" 에서는 각 클래스를 자세히 지정합니다. - Objective C classes that help user-level programs to configure and communicate with drivers. Configuration is discussed in Chapter 4, "Building, Configuring, and Debugging Drivers." The "The User-Level Interface to Drivers" section in this chapter and "Interfacing with the Driver" in Chapter 2, "Designing a Driver," tell how to communicate with drivers.
사용자 수준 프로그램이 드라이버를 구성하고 통신하는 데 도움이 되는 Objective C 클래스. 이 클래스들의 구성은 4 장 "Building, Configuring, and Debugging Drivers" 에서 설명합니다. 4 장의 "The User-Level Interface to Drivers" 절과 2 장, "Designing a Driver" 의 "Interfacing with the Driver" 는 드라이버와 통신하는 방법을 알려줍니다. - C functions that provide debugging capabilities, kernel services such as memory and time management, and other services. These functions provide most of the operating system services your driver should need. The "Functions" section of Chapter 5, "Driver Kit Reference," contains specifications for these functions.
디버깅 기능을 제공하는 C 함수, 메모리 및 시간 관리와 같은 커널 서비스 및 기타 서비스의 제공. 이 함수들은 드라이버가 필요로 하는 대부분의 운영 체제 서비스를 제공합니다. 5 장 "Driver Kit Reference" 의 "Functions" 절에는 이러한 기능에 대한 사양이 포함되어 있습니다. - Utility programs that help you load a driver into an already running system and help you test and debug your driver. Chapter 4, "Building, Configuring, and Debugging Drivers," tells you about these programs.
이미 실행중인 시스템에 드라이버를 로드하고, 드라이버를 테스트하고 디버그하는데 도움이 되는 유틸리티 프로그램. 4 장, "Building, Configuring, and Debugging Drivers" 에서 이러한 프로그램에 대해 설명합니다
The rest of this chapter describes the basics of Driver Kit architecture.
이 장의 나머지 부분에서는 Driver Kit 아키텍처의 기본 사항을 설명합니다.
Why Objective C?
왜 Objective C 인가요?
Why is Objective C the required language for the Driver Kit? Part of the reason is that all other NEXTSTEP Application Program Interfaces (APIs) are object-oriented and use Objective C. But more importantly, drivers benefit in several ways from object-orientation and Objective C:
Objective C가 Driver Kit에 필요한 언어인 이유는 무엇일까요? 이유 중에 한가지는 다른 모든 NEXTSTEP 응용 프로그램 인터페이스(API)가 객체 지향이며 Objective C 를 사용한다는 것입니다. 그러나 더욱 중요한 점이 있는데, 드라이버는 객체 지향과 Objective C 로부터 여러 가지 이점을 얻는다는 것입니다.
- Naturalness - Object orientation is a natural design method for drivers. Each hardware object can be modeled by a software object, and functionality common to a group of drivers (such as display drivers) can be provided by superclasses.
자연스러움 - 객체 지향은 드라이버를 위한 자연스러운 설계 방법입니다. 각 하드웨어 객체는 소프트웨어 객체에 의해 모델링 될 수 있으며 드라이버 그룹(display drivers 처럼)에 공통된 기능이 수퍼 클래스에 의해 제공 될 수 있습니다. - Flexibility - Objective C provides dynamic typing and binding, which help different objects communicate without having to be compiled together. For example, this lets a SCSI peripheral driver determine at run time which SCSI controller driver it should communicate with. You can simulate dynamism using function lookup tables and type casting in ANSI C, but this results in code that's harder to understand and maintain.
유연성 - Objective C 는 동적 타입 지정 및 바인딩을 제공하여 서로 다른 객체가 함께 컴파일 되어야할 필요가 없이 서로 통신 할 수 있도록 합니다. 예를 들어, 이 옵션을 사용하면 SCSI 주변 드라이버가 런타임 시점에서 어떤 SCSI 컨트롤러 드라이버와 통신할지를 결정할 수 있습니다. ANSI C 에서 함수 찾아보기 테이블과 타입 캐스팅을 사용하여 이러한 동적인 동작(dynamism)을 시뮬레이트 할 수 있지만, 결과적으로 이해하기 어렵고 유지 보수가 어려운 코드가됩니다. - Code reduction - The Driver Kit provides classes that significantly lessen the amount of code you have to write. For example, the IODirectDevice class greatly simplifies configuration and initialization, and IOFrameBufferDisplay takes care of almost everything that a display driver must do.
코드의 축소 - Driver Kit 은 작성해야하는 코드의 양을 크게 줄여주는 클래스를 제공합니다. 예를 들어 IODirectDevice 클래스는 구성 및 초기화를 크게 단순화하며, IOFrameBufferDisplay 는 디스플레이 드라이버가 수행해야 하는 거의 모든 작업을 처리합니다.
See NEXTSTEP Object-Oriented Programming and the Objective C Language for more information on Objective C.
Objective C에 대한 자세한 내용은 NEXTSTEP 객체 지향 프로그래밍 및 Objective C 언어를 참조하십시오.