What is System Programming Application Programming System Programming

  • Slides: 29
Download presentation
What is System Programming? ØApplication Programming ØSystem Programming Input Process Output

What is System Programming? ØApplication Programming ØSystem Programming Input Process Output

Three Layer Model • Accessing PC Hardware Application DOS BIOS H/W

Three Layer Model • Accessing PC Hardware Application DOS BIOS H/W

Means of Input Output ØProgrammed input output ØInterrupt driven ØDirect Memory Access

Means of Input Output ØProgrammed input output ØInterrupt driven ØDirect Memory Access

Controllers I/O device ØI/O control signals ØBuffering ØError Correction and Detection I/O controller CPU

Controllers I/O device ØI/O control signals ØBuffering ØError Correction and Detection I/O controller CPU

DMA Controller INPUT OUTPUT Main Memory DMA

DMA Controller INPUT OUTPUT Main Memory DMA

Interrupt Controller • Handles the Priorities among hardware interrupt

Interrupt Controller • Handles the Priorities among hardware interrupt

Programmable Peripheral Interface(PPI)

Programmable Peripheral Interface(PPI)

Interval Timer

Interval Timer

Universal Asynchronous Receiver and Transmitter

Universal Asynchronous Receiver and Transmitter

File Management • Basics ØDisk Structure ØDisk Formatting ØSector and Clusters

File Management • Basics ØDisk Structure ØDisk Formatting ØSector and Clusters

Data Structure • Fat 12, Fat 16, Fat 32 • Drive Parameter Block (DPB)

Data Structure • Fat 12, Fat 16, Fat 32 • Drive Parameter Block (DPB) • Directory Structure

Accessing and Manipulating file and Directory Structure

Accessing and Manipulating file and Directory Structure

Memory Management • Real Mode • Protected Mode

Memory Management • Real Mode • Protected Mode

Real Mode • Memory Control Block (MCB) • Program segment prefix (PSP)

Real Mode • Memory Control Block (MCB) • Program segment prefix (PSP)

 • Transversal through processes memory • Determining ØAllocated memory ØFree memory

• Transversal through processes memory • Determining ØAllocated memory ØFree memory

Protected Mode • Local Descriptor Table (LDT) • Global Descriptor Table (GDT)

Protected Mode • Local Descriptor Table (LDT) • Global Descriptor Table (GDT)

Ø Address Translation Ø Exception Handling Ø Shifting from Real to Protected Mode

Ø Address Translation Ø Exception Handling Ø Shifting from Real to Protected Mode

Virus Definition and States • Types of Viruses ØExecutable file ØPartition table / Boot

Virus Definition and States • Types of Viruses ØExecutable file ØPartition table / Boot Sector Virus

 • Anatomy of Executable File Viruses • Anatomy of Partition Table/ Boot Sector

• Anatomy of Executable File Viruses • Anatomy of Partition Table/ Boot Sector Viruses

ØDetection ØRemoval ØPrevention

ØDetection ØRemoval ØPrevention

Device Drivers • Device Drivers for Dos • Device Drivers for Windows • Device

Device Drivers • Device Drivers for Dos • Device Drivers for Windows • Device Driver Development Kit (DDK)

Programmed input / output Output Input D 0 Busy D 7 Strobe CPU D

Programmed input / output Output Input D 0 Busy D 7 Strobe CPU D 0 D 7 DR CPU I/O Controller

Interrupt Driven input / output Output Input D 0 INT CPU D 7 Strobe

Interrupt Driven input / output Output Input D 0 INT CPU D 7 Strobe Busy ACK I/O Controller D 0 D 7 INT CPU IBF I/O Controller

Handshaking / Polling

Handshaking / Polling

DMA Driven I/O CPU Register DMA Main Memory

DMA Driven I/O CPU Register DMA Main Memory

What are Interrupts? Hardware Interrupts Software Interrupts

What are Interrupts? Hardware Interrupts Software Interrupts

Program Flow Steps 1 2 3 ISR Performing An I/O

Program Flow Steps 1 2 3 ISR Performing An I/O

Other Processing Computation for I. /O Interrupt Driven I/O Time

Other Processing Computation for I. /O Interrupt Driven I/O Time

Other Processing Computation for I. /O I/O Programmed I/O Time

Other Processing Computation for I. /O I/O Programmed I/O Time