Jo Nov 2, 2022

“Device Driver” is a subject which deals with design technology of a program controlling peripherals connected to a computer system and interfaces.

In the past, when they taught general structures and programming methods of a character device driver, a block device driver and a network device driver, teachers failed to refer to individual devices in close combination with a control program. Without suitable examples found in reality, students confined themselves to getting a general understanding of the programming method, far from gaining knowledge of devices used in practice.

Kim Kuk Song, a researcher at the Faculty of Information Science and Technology, has associated his subject “Device Driver” with an embedded system, thus overcoming above-mentioned shortcomings.

First, he presented the information about Linux device driver of the embedded system in his teaching plan and gave specific examples in order to raise cognition effect.

As a device driver depends on I/O management of the operating system, he gave a general outline of the functions supported by Linux kernel in each section and explained with concrete examples which devices of the embedded system needed such functions.

Second, he organized practice hours in a way that students could consolidate what they learnt in lectures and develop their skills whereby they could write device drivers needed in reality by themselves.

The practical teaching content helped students understand how to write a device driver, but it still left those with lack of experiences with difficulties in practice.

Therefore, he applied a teaching method to help students to plan, design, make and control device drivers by themselves.

The first thing he did was to decide practice tasks for students to put their knowledge to practice and to show how a device driver worked in an embedded system so that students would be aware of the scale and capacity of a design object and the technological requirements to be solved. The next thing was to provide them with up-to-date data related to an embedded system so that they could select properly by themselves necessary handbooks, drawings, electronic circuits, example codes for a device driver, etc.

Until a device driver was finished, he repeatedly explained the building of cross development environment, translation, debugging, porting and downloading of source codes to the embedded system, and running methods.

As mentioned above, theoretical teaching contents on I/O management in an operating system combined with the structure and operation of peripherals and a device driver for controlling them and display of the operation of a device and a driver based on an actual one raised cognition effect among students. Students could develop their ability of utilizing the development kit for an embedded system while trying to develop device drivers by using a computer and an embedded device.