Browse Prior Art Database

Generic Facility to Display Kernel Messages to User Mode Processes for a UNIX-Based Operating System

IP.com Disclosure Number: IPCOM000107822D
Original Publication Date: 1992-Mar-01
Included in the Prior Art Database: 2005-Mar-22
Document File: 3 page(s) / 169K

Publishing Venue

IBM

Related People

Day, MN: AUTHOR [+2]

Abstract

UNIX*-based operating systems such as IBM's AIX** version 3 which support international languages do not allow messages to be written to the display from within the kernel. This is primarily due to the fact that international language support is provided above the kernel in user space routines, and is not buried in the kernel itself. However, there are occasions where kernel routines must display a message to a user, for example, when a disk or filesystem quota has been reached or exceeded. This disclosure details a method for providing a set of services available to kernel routines, to allow messages to be originated from the kernel when the need arises.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 38% of the total text.

Generic Facility to Display Kernel Messages to User Mode Processes for a UNIX-Based Operating System

       UNIX*-based operating systems such as IBM's AIX** version
3 which support international languages do not allow messages to be
written to the display from within the kernel. This is primarily due
to the fact that international language support is provided above the
kernel in user space routines, and is not buried in the kernel
itself. However, there are occasions where kernel routines must
display a message to a user, for example, when a disk or filesystem
quota has been reached or exceeded. This disclosure details a method
for providing a set of services available to kernel routines, to
allow messages to be originated from the kernel when the need arises.

      Message System Requirements: 1) A  need exists to allow the
kernel to effectively display messages to users in general without
burying international language support in the kernel itself. 2) Some
messages may be originated from an interrupt environment; therefore,
a message service is required for routines executing in the interrupt
environment as well as routines executing under a process. 3) The
message facility should support formattable messages with insertable
parameters as well as straight string text. 4.) The message system
must provide internationalized message support. Kernel-originated
messages must be displayed in the target user's chosen language, even
where different from the system language.

      What is proposed is a means for the kernel to print out to any
user who has an attached terminal (tty, graphics terminal, pty) a
message in any format that would be displayed in the user's chosen
language. In general, the following pieces are needed: 1) a user mode
daemon, 2) kernel services, and 3) additional system calls.

      Existing Solutions: Previous versions of AIX (as well as other
UNIX systems) allowed the kernel to print directly to the user. The
message was strictly whatever had been built into the kernel back at
the development shop. This meant that the message was always in the
same language, usually English, and message translation would require
a different version of the operating system for the specific
language.  This allowed device drivers and interrupt handlers to
print messages at any time to any terminal without concern for
selectable languages.

      Example of Message Facility Usage:  A good example of when a
message is originated from the kernel is in the case of disk quotas.
Disk quotas are limitations placed on users individually as to how
much disk space they can utilize. There is a warning limit, at which
time the user needs to be notified that he or she has exceeded the
limit. The kernel may notice that the user has exceeded the limit
when an attempt is made to extend a file (i.e., in the filesystem top
half) or when the user is extending a memory-mapped file (i.e., the
VMM notices this on the interrupt level). A...