1 / 21

Windows Operating System Family Concepts & Tools

Chapter 1. Windows Operating System Family Concepts & Tools. Applications & Shell. Registry. Windows Architecture. Core Components : Kernel, User, GDI. Base System. Dos Virtual Machine. System Virtual Machine. Dos Virtual Machine. Dos Virtual Machine. Share Address Space.

uta
Download Presentation

Windows Operating System Family Concepts & Tools

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 1 Windows Operating System Family Concepts & Tools

  2. Applications & Shell Registry Windows Architecture Core Components : Kernel, User, GDI Base System

  3. Dos Virtual Machine System Virtual Machine Dos Virtual Machine Dos Virtual Machine Share Address Space Win 32 Application Windows Architecture Win 32 Application Win 32 Application Win 16 Application Win 16 Application Dos Virtual Machine Virtual Machine : 1. System Virtual Machine 2. Dos Virtual Machine System Virtual Machine : 1)Win16 : use share address space 2)Win32: use separate address space & cross protection DOS Virtual Machine : เป็นการจัดการให้โปรแกรมที่ทำงานบน DOS mode สามารถทำงานแบบหลายงานได้ โดยจำลองสภาพแวดล้อมแบบ DOS ขึ้นมาหลายๆ ชุด แต่ละชุดเสมือนเป็นคอมพิวเตอร์เครื่องหนึ่ง

  4. Multitasking Type • Cooperative Multitasking (Windows 3.x) • Preemptive Multitasking (Windows 9x …..) Windows Architecture Cooperative : Process จะแบ่งการใช้งาน CPU (CPU time) Process จะครอบครอง CPU จนงานเสร็จ ปัญหา : หาก Process ไม่ปล่อย CPU ระบบจะค้างทำงานต่อไม่ได้ Preemptive : OS กำหนด CPU time ให้กับ Process ตามความเหมาะสม

  5. Multithreading • Processจะถูกแบ่งออกเป็นชุดคำสั่งย่อย เรียกว่า Thread • Program จะทำงานแบบ Event-Driven (Message-Driven) • Windows จะจัดให้มี Message Queue เพื่อเก็บ message • ที่รอการประมวลผล Windows Architecture • Win16 ทำงานแบบ Cooperative จึงมี Message Queue ชุดเดียว • Win9x ทำงานแบบ Preemptive จะต้องมี Message Queue เพื่อไม่ให้ Thread ที่รอการประมวลผลไม่ปะปนกัน

  6. Thread Schedule สำรวจ Thread ทั้งหมด ตรวจสอบลำดับความสำคัญ (priority) เลือก Thread ที่มีลำดับความสำคัญสูงสุด ส่งไปขั้นที่ 3 จัดสรรเปอร์เซ็นต์ของ CPU Time ให้กับ Thread ให้ Thread เริ่มทำงานต่อไป

  7. Thread Schedule Priority มี 32 ลำดับ (0-31) แบ่งเป็น 4 class 1. Idle Priority มีความสำคัญน้อยที่สุด ทำงานเมื่อไม่มี thread อื่นทำงานอยู่ เช่น Screen Saver, Word Correction 2. Normal Priority เป็น class สำหรับโปรแกรมโดยทั่วไป 3. High Priority เป็น class ที่ Thread ต้องตอบสนองต่อ message โดยเร็ว เช่น thread ของ KERNEL32.DLL 4. Real-Time Priority เป็น thread ที่ต้องได้รับการประมวลผลทันที เช่น การแสดง cursor บนจอภาพเป็นต้น

  8. Priority : เทคนิคการปรับลำดับความสำคัญของ Thread 1. Dynamic Priority Boosting การเพิ่มความสำคัญให้กับ thread ที่กำลังได้รับ input จาก input device : เป็นการเพิ่มการตอบสนองของโปรแกรม ทำให้ผู้ใช้รู้สึกว่าได้รับการตอบสนองอยู่ตลอดเวลา 2. Timed Decay เป็นการลดค่าความสำคัญของ thread ที่ได้ CPU time ไปแล้ว ยิ่งทำงานนานยิ่งถูกลดค่ามาก เพื่อเปิดโอกาสให้ thread อื่นได้ CPU Time บ้าง 3. Priority Inheritance เป็นการเพิ่มค่าความสำคัญให้กับ thread ที่มีลำดับความสำคัญต่ำที่กำลังใช้ทรัพยากรบางอย่างอยู่ เพื่อให้ใช้ทรัพยากรเสร็จโดยเร็ว Thread อื่นที่รอใช้ทรัพยากรนั้นอยู่จะได้มีโอกาสใช้ทรัพยากรนั้น ๆ บ้าง

  9. Virtual Memory VMM Address Area 1 3 2 Read data Swap File RAM 5 Program 4 Virtual Memory Management

  10. FFFF FFFF 4 GB System DLLs Virtual Device Drivers(VxDs) BFFF FFFF 3 GB Kernel;, User, GDI,DLL App.,Win16 App.,Shared Objects 2 GB 007F FFFF Win32 Application 4 MB 003F FFFF Rarely Use 000F FFFF 1 MB MS-DOSVM 0000 0000 0 Windows Virtual Memory : 4 GB

  11. API : Application Programming Interface 1) Userคอยจัดการ Input Output ให้กับ user - ฟังชั่น การจัดการ message ใน message queue - การปิด เปิด ย้าย เปลี่ยนขนาดของ window 2) Kernelเป็นฟังชั่นหลักของ windows - การ load การเริ่มต้นการทำงานของโปรแกรม - การจัดการ process การจองหน่วยความจำ 3) GDI Graphical Device Interface ให้บริการเกี่ยวกับการวาดภาพหรือตัวอัขระลงในอุปกรณ์กราฟิก เช่น จอภาพ เครื่องพิมพ์ โดยทำงานประสานกับ driver ของอุปกรณ์เหล่านั้น

  12. DLL : Dynamic Link Library • กลุ่มของฟังชั่น สำหรับการเรียกใช้งานของโปรแกรมต่างๆ • เป็นฟังชั่นที่แยกมาจากไฟล์ .EXE ที่ถูกนำมารวมกันไว้เป็นไฟล์ .DLL • เป็นฟังชั่นที่ใช้ในร่วมกัน สำหรับโปรแกรมบน Windows • DLL จะถูก load ลงไว้ในหน่วยความจำช่วง 2 GB – 3 GB API ของ Windows ได้แก่ KRNL386.EXE และ KERNEL32.DLL USER.EXE และ USER32.DLL GDI.EXE และ GDI32.DLL

  13. Shell • - เป็นโปรแกรมแบบ Win32 มาพร้อมกับ Windows • มีหน้าที่จัดการเกี่ยวกับ user interface เช่น Desktop, Taskbar, Folder • กระจายอยู่ใน file ต่างๆ เช่น EXPLOER.EXE

  14. IFS : Installable File System • เป็นสถาปัตยกรรมการจัดการไฟล์ที่รองรับระบบไฟล์ได้หลากหลายรูปแบบ และรองรับการเพิ่มเติมระบบไฟล์ใหม่ๆ ให้แก่ Windows ได้อย่างสะดวก Installable File System (IFS) Manager VFAT CDFS Network Redirector Other File System FSD Block I/O Subsystem

  15. Registry • เป็นฐานข้อมูลกลางของ Windows • เก็บข้อมูลที่ต้องใช้ใน ในการทำงานของ Windows, ข้อมูลผู้ใช้แต่ละคน, configuration ของอุปกรณ์ และของ software • ใน Windows 3.x จะอยู่ในไฟล์ .INI หลาย ๆ ไฟล์ • Registry เป็นการรวมข้อมูลทั้งหมกข้างต้นไว้ใน ไฟล์เดียว

  16. Configuration Manager • กำหนด Configuration ให้กับอุปกรณ์ต่างๆ • จัดสรร resource ให้กับอุปกรณ์โดยไม่ซ้ำซ้อนกัน • แก้ปัญหาความขัดแย้งในการใช้ resource โดยการปรับเปลี่ยน configuration ให้เหมาะสม • จำเป็นอย่างยิ่งสำหรับอุปกรณ์แบบ Plug and Play

  17. Device Driver • เป็น software ที่จัดการการสื่อสารกับอุปกรณ์ต่างๆ • ทำงานในระดับล่างสุด (ring 0) • อาจถูกเรียกใช้จาก IFS หรือ Application ต่างๆ ผ่านทางฟังชั่น API Device Virtualization - มอง Device Driver เป็นเหมือนตัวอุปกรณ์ (Virtual Device Driver) - Application จะเรียกใช้ Device Driver เหมือนเรียกใช้ตัวอุปกรณ์ - เพื่อตอบสนองในการทำงานแบบ mutitask ทำให้สามารถเรียกใช้อุปกรณ์ได้พร้อมๆ กันจากมากกว่าหนึ่ง Application - Microsoft เรียก VDD ใน Windows9x ว่า VxD : Virtual Anything Driver ไฟล์ของ driver ทั้งหมดเก็บไว้ที่ C:\Windows\System โดยใช้นามสกุลเป็น VXD - ใน Windows 3.x ใช้นามสกุลของ VDD เป็น 386

  18. Universal-Mini Driver • Driver ใน Windows 3.x เป็น Monolithic การupdate driver ต้องเปลี่ยนทั้งไฟล์ • Driver ใน Windows 9x เป็น Universal-Mini Driver คือมีการแยก driver ออกเป็นสองส่วน ดังภาพ - Universal Driver เป็น driver หลัก ที่ใช้กับอุปกรณ์ประเภทเดียวกันได้ - Mini Driver เป็น driver เล็กๆ ผลิต ขึ้นมาเพื่อใช้กับอุปกรณ์เฉพาะรุ่น - อุปกรณ์บางตัวอาจไม่จำเป็นต้องใช้ Mini Driver ถ้าไม่ได้ใช้ฟังชั่นพิเศษ Universal Driver Mini-Driver Mini-Driver Device Device Device

  19. Windows Architecture

  20. Quiz1 • เหตุใด ใน Windows 9x จึงต้องเตรียม VM ไว้ถึง 3 รูปแบบ • VM ของ Win16 มีปัญหาอย่างไร • Multitasking แบบ Preemptive ต่างกับ Cooperative • อย่างไร • 4. Priority class ใด มีลำดับความสำคัญต่ำสุด • ยกตัวอย่างการใช้งานประกอบ • Windows ใช้วิธีใดในการ เพิ่มประสิทธิภาพในการจัดสรร • CPU time Windows Architecture

  21. Quiz2 • 1. จงอธิบายความหมายของ คำต่อไปนี้ • 1) Swap File 2) Page Fault • 3) LRU 4) DLL • 5) Event-Driven 6) API Windows Architecture 2. API มีความสัมพันธ์กับ DLL อย่างไร ยกตัวอย่างประกอบ 3. ระบบแฟ้มของ Windows ต่างกับ ของ DOS อย่างไร 4. Registry ของ Windows 9x คืออะไรเทียบได้กับ ไฟล์ประเภทใด ใน ระบบ DOS 5. สถาปัตยกรรมแบบ Universal-Mini Driver มีข้อดีอย่างไร

More Related