home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!oracle!pyramid!pyrite!fvoss
- From: fvoss@pyrite.nj.pyramid.com (Fred Voss)
- Newsgroups: pyr.syseng,comp.sys.pyramid
- Subject: OSx Kernel Debugger Classes
- Message-ID: <1005@pyrite.nj.pyramid.com>
- Date: 28 Jul 92 15:55:40 GMT
- Followup-To: pyr.syseng
- Distribution: usa
- Organization: Pyramid Technology Corp, NJ Professional Svcs.
- Lines: 104
-
-
-
- Pyramid Educational Services, in Mountain View, is scheduling two OSx Kernel
- Debugger courses on the following dates:
-
- August 27 and 28
- September 17 and 18
-
- If you wish to sign up for either of these two courses, please call Donna
- Pantaleoni, Registrar at 1-800-843-9058 or extension x8388.
-
- Each course spans two days and includes the following topics and objectives:
-
- List the functions of the OSx kernel.
- Define the term panic as it relates to the OSx operating system.
- Identify the potential causes of a system panic.
- Describe the layout of Pyramid physical memory.
- Describe the function of the CPU data cache and instruction cache.
- Define the purpose of the kernel debugger.
- Describe five ways to invoke the kernel debugger.
- Describe how the PCOS/COS bootflag affects the kernel debugger.
- Describe the creation process of a vmcore file.
- Configure the system to automatically generate a vmcore following a
- system panic.
- Describe the steps to manually create a vmcore with the /etc/savecore
- utility.
- List the differences between the kernel debugger and the /etc/crash
- utility.
- List the possible settings for the variable DUMPTHESE.
- Create a new kernel which has the kernel debugger included in the
- compilation.
- Generate an executable program based on the Pyramid OSx instruction
- set.
- List the components of a Pyramid OSx instruction.
- Use the Pyramid Technology Architecture Manual to decode an OSx
- instruction.
- Correlate a source code program written in the C programming
- language to its disassembled instruction set.
- Describe the a.out format of an executable program.
- Describe the virtual memory map of a process.
- List twelve key elements of the proc structure.
- List the five process region types in OSx.
- Describe which portions of a process may be swapped.
- Describe the purpose and construction of a process control stack.
- List the special control stack registers involved in a system interrupt
- routine.
- List the special control stack registers involved is a system exception
- (trap) situation.
- Based on the Pyramid Technology System Architecture Manual
- description of system exceptions, list the values placed into the first 6
- temporary registers.
- Describe two situations in which the data stack would be used.
- Describe the purpose and construction of the process control block
- (PCB).
- Describe the contents of the process status word (PSW).
- Draw a diagram of the relationships between the following kernel tables
- and label the structure elements involved in the relationships: proc
- table, pregion table, region table, rlists and the pde tables.
- List twelve key elements of the user (u_area) structure.
- Draw a diagram of the relationship between the user structure and the
- system open file table.
- Based on the Pyramid Technology System Architecture Manual
- descriptions of the global process table (GPT), the level 1 process
- memory resident table (PMRT) and level 2 PMRT, list the steps to
- convert a virtual address to a physical address.
- Using the gpid element of a proc structure for a selected process,
- determine the physical address of the u_area of that process.
- Describe the use of the general kernel debugger and /etc/crash
- commands.
- List the elements in a 'panic fingerprint'.
- Using the kernel debugger or /etc/crash, list the active processes in the
- system or captured by the vmcore image. Identify the information
- provided for each process in the listing.
- With /etc/crash, selectively list related processes based on the following
- common attributes: process id, state, wait channel, tty or name. (NOTE
- THE DIFFERENCE IN SYNTAX FOR THE KERNEL DEBUGGER).
- In /etc/crash, determine which process is the 'current' process.
- Describe two methods of changing to a new 'current' process.
- Print the proc structure elements for a selected process.
- Print the control stack trace of a process and describe function calling
- sequence in the stack. Identify the information provided for each
- control stack frame.
- Change the control stack pointer to a different control stack frame.
- Display the registers for a particular control stack frame.
- Display the contents of a virtual address in the following formats: hex,
- ASCII, string, disassembled code.
- Use the ps command to print structures listed in the directory /usr/crash/
- lib.
- Create a tailored structure description for a kernel structure type.
- List the kernel debugger commands that display specific kernel
- structures.
- List the command unique to the kernel debugger and describe their
- usage.
- Force a system panic through the kernel debugger.
- Change the dump size and dump device for a system through the kernel
- debugger.
- List the initial steps in debugging all panics.
- Define the use of kernel semaphores.
- List the initial steps in debugging a Semaphore Time-out panic.
- For a vmcore, explain the values held in the array savesemas[].
- Use a tags file in a source code directory to pinpoint the source code
- instructions that correlate to the disassembled code from a panic
- process control stack frame. (NOT A TRIVIAL TASK).
- --
-