• Save
Operating System Chapter 3
Upcoming SlideShare
Loading in...5
×
 

Operating System Chapter 3

on

  • 19,555 views

Computer Operating System Concept Chapter 3

Computer Operating System Concept Chapter 3

Statistics

Views

Total Views
19,555
Views on SlideShare
19,483
Embed Views
72

Actions

Likes
13
Downloads
0
Comments
1

6 Embeds 72

http://learning.sau.ac.th 45
http://www.slideshare.net 14
http://us-w1.rockmelt.com 6
http://www.bloggang.com 5
http://webcache.googleusercontent.com 1
https://lms.kku.edu.sa 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • th
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Chapter 3: Operating-System Structures System Components Operating System Services System Calls System Programs System Structure Virtual Machines System Design and Implementation System Generation

Operating System Chapter 3 Operating System Chapter 3 Presentation Transcript

  • บทที่ 3 โครงสร้างระบบปฏิบัติการ Operating-System Structures
    • ส่วนประกอบของระบบ System Components
    • บริการต่างๆ ของระบบปฏิบัติการ Operating System Services
    • การเรียกระบบ System Calls
    • โปรแกรมระบบ System Programs
    • โครงสร้างระบบ System Structure
    • เครื่องจักรเสมือน Virtual Machines
    • การออกแบบระบบและการนำไปใช้ System Design and Implementation
    • พัฒนาการของระบบ System Generation
  • ส่วนประกอบของระบบ Common System Components
    • การจัดการโปรเซส Process Management
    • การจัดการหน่วยความจำหลัก Main Memory Management
    • การจัดการไฟล์ File Management
    • การจัดการระบบอินพุทเอ้าท์พุท I/O System Management
    • การจัดการหน่วยความจำรอง Secondary Management
    • การเครือข่าย Networking
    • ระบบป้องกัน Protection System
    • ระบบการแปลคำสั่ง Command-Interpreter System
  • การจัดการโปรเซส Process Management
    • โปรเซส หมายถึงโปรแกรมที่กำลังถูกเอ็กซ์ซีคิวท์ กล่าวคือ โปรเซสจำเป็นต้องมีทรัพยากรของระบบในการใช้งาน รวมทั้งเวลาในการใช้งานหน่วยประมวลผล หน่วยความจำ ไฟล์ และอุปกรณ์อินพุทเอ้าท์พุท เพื่อทำงานตามโปรแกรมให้สำเร็จลุล่วง
    • ระบบปฏิบัติการ จะต้องสามารถตอบสนองต่อกิจกรรมต่างๆ โดยการเชื่อมต่อกับการจัดการโปรเซส ดังต่อไปนี้
      • การสร้างโปรเซสและการลบโปรเซส
      • การพักการทำงานของโปรเซส และการนำโปรเซสที่ถูกพักอยู่กลับมาทำงานใหม่
      • ข้อกำหนดของกลไกการทำงาน
        • การเข้าจังหวะการทำงานของโปรเซส
        • การสื่อสารของโปรเซส
  • การจัดการหน่วยความจำหลัก Main-Memory Management
    • หน่วยความจำ Memory หมายถึง อะเรย์ array ขนาดใหญ่ของคำหรือไบท์ ที่มีแอดเดรสเป็นของตนเอง
    • โดยหน่วยความจำทำให้ความสามารถในการเข้าถึงข้อมูลที่ถูกแบ่งปันจากหน่วยประมวลผลและอุปกรณ์อินพุทเอ้าท์พุท เป็นไปได้โดยรวดเร็ว
    • หน่วยความจำหลัก เป็นอุปกรณ์จัดเก็บข้อมูลแบบโวลาไทร์ หรือจะสูญเสียข้อมูลเมื่อไม่มีกระแสไฟฟ้าเลี้ยง และจะสูญเสียข้อมูลในกรณีระบบเกิดการทำงานผิดพลาดขึ้น
    • ระบบปฏิบัติการจะตอบสนองกับกิจกรรมต่างๆ ที่เชื่อมต่อกับการจัดการหน่วยความจำดังต่อไปนี้
    • เก็บร่องรอยการติดตามการใช้งานหน่วยความจำส่วนหนึ่งส่วนใด ว่าเข้าใช้เมื่อใดและโดยใคร
    • ตัดสินใจว่าจะต้องโหลดโปรเซสใดเข้าทำงาน เมื่อพื้นที่ในหน่วยความจำว่างลง
    • อำนวยพื้นที่และการนำพื้นที่ในหน่วยความจำกลับคืน เมื่อต้องการ
  • การจัดการไฟล์ File Management
    • ไฟล์ file หมายถึงกลุ่มของข้อมูลสารสนเทศที่สัมพันธ์กัน ที่กำหนดโดยผู้ที่สร้างไฟล์ขึ้นมา
    • โดยปกติ ไฟล์เป็นได้ทั้งโปรแกรม และข้อมูล
    • ระบบปฏิบัติการ จะตอบสนองต่อกิจกรรมต่างๆ ที่เชื่อมต่อกับการจัดการไฟล์
      • การสร้างและลบไฟล์
      • การสร้างและลบไดเร็กทอรี่
      • รองรับการทำงานขั้นพื้นฐานกับไฟล์และไดเร็กทอรี่
      • ทำแผนที่ไฟล์บนหน่วยจัดเก็บรอง
      • ทำการสำรองไฟล์บนสื่อจัดเก็บแบบเสถียร ( ไม่สูญเสียข้อมูลเมื่อไม่มีกระแสไฟเลี้ยง )
  • การจัดการระบบอินพุทเอ้าท์พุท I/O System Management
    • ระบบอินพุทเอ้าท์พุทประกอบด้วย
    • ระบบบัฟเฟอร์แคชชิ่ง buffer-caching system
    • ส่วนงานติดต่อไดรเวอร์อุปกรณ์ทั่วไป
    • ไดรเวอร์สำหรับอุปกรณ์ฮาร์ดแวร์เฉพาะอย่าง
  • การจัดการหน่วยจัดเก็บรอง Secondary-Storage Management
    • ด้วยหน่วยความจำหลัก ( primary storage ) เป็นแบบโวลาไทร์ ( สูญเสียข้อมูลเมื่อไม่มีกระแสไฟฟ้าเลี้ยง ) และมีขนาดเล็กกว่าที่จะสามาถใช้จัดเก็บข้อมูลและโปรแกรมทั้งหมดได้ ระบบคอมพิวเตอร์จึงจำเป็นต้อง มีระบบจัดเก็บรอง secondary storage เพื่อสำรองการจัดเก็บข้อมูลของหน่วยความจำหลัก
    • ระบบคอมพิวเตอร์สมัยใหม่ส่วนใหญ่ ใช้ดิสค์เป็นสื่อที่ใช้ในการจัดเก็บข้อมูลแบบออนไลน์หลัก ทั้งการเก็บโปรแกรมและข้อมูล
    • ระบบปฏิบัติการจะตอบสนองต่อกิจกรรมต่างๆ ที่เกี่ยวกับการจัดการดิสค์ดังต่อไปนี้
      • การจัดการพื้นที่ว่าง
      • การกำหนดพื้นที่ในการจัดเก็บ
      • การกำหนดลำดับการทำงานของดิสค์
  • การเครือข่าย ( ระบบกระจาย ) Networking (Distributed Systems)
    • ระบบกระจาย distributed system หมายถึง กลุ่มของหน่วยประมวลผลที่แบ่งปันการใช้งานหน่วยความจำและนาฬิการ่วมกัน
      • โดยหน่วยประมวลผลแต่ละตัวจะมีหน่วยความจำท้องถิ่นเป็นของตนเอง
    • หน่วยประมวลผลในระบบถูกเชื่อมต่อเพื่อการสื่อสารผ่านเครือข่าย
    • การสื่อสารใช้รูปแบบโปรโตคอล protocol ( ระบบวิธี ข้อตกลง มาตรฐานในการสื่อสาร )
    • ระบบกระจายทำให้ผู้ใช้สามารถเข้าถึงทรัพยากรของระบบอื่นๆ ได้
    • สามารถเข้าถึงทรัพยากรที่กำหนดให้สามารถแบ่งปันได้ ทำให้
      • ความเร็วในการคำนวณสูงขึ้น
      • เพิ่มข้อมูลให้สามารถใช้งานได้มากขึ้น
      • เพิ่มความน่าเชื่อถือให้แก่ระบบ
  • ระบบป้องกัน Protection System
    • การป้องกัน หมายถึง กลไกในการควบคุมการเข้าถึงทรัพยากรของผู้ใช้และของระบบ จากโปรแกรม โปรเซส หรือผู้ใช้
    • กลไกในการป้องกันต้องมีความสามารถทำสิ่งต่างๆ ดังต่อไปนี้
      • แยกแยะการใช้งานระหว่างผู้ได้รับการตรวจสอบสิทธิ์และผู้ที่ไม่ได้รับการตรวจสอบสิทธิ์
      • แยกแยะการควบคุมที่ถูกกำหนดแบบต่างๆ
      • กำหนดเงื่อนไขข้อบังคับ
  • ระบบการแปลคำสั่ง Command-Interpreter System
    • คำสั่งจำนวนมากที่กำหนดให้กับระบบปฏิบัติการ โดยคำสั่งการควบคุมโดยหน้าที่ต่อไปนี้
      • การจัดการและการสร้างโปรเซส Process creation and management
      • การจัดการ อินพุทเอ้าท์พุท I/O handling
      • การจัดการ หน่วยจัดเก็บรอง Secondary-storage management
      • การจัดการ หน่วยความจำหลัก Main-memory management
      • การเข้าถึงระบบไฟล์ File-system access
      • การป้องกัน Protection
      • การเครือข่าย Networking
  • ระบบการแปลคำสั่ง Command-Interpreter System (Cont.)
    • โปรแกรมที่ทำหน้าที่อ่านและแปลคำสั่งการควบคุมที่ถูกเรียกจากวิธีต่างๆ ดังนี้
      • ตัวแปลคำสั่งจากการสั่งการแบบบรรทัดคอมมานด์ไลน์ command-line interpreter
      • เชลล์ ในระบบยูนิกซ์ shell (in UNIX)
    • มีหน้าที่ในการรับและเอ็กซ์ซีคิวท์คำสั่งถัดไป
  • บริการของระบบปฏิบัติการ Operating System Services
    • การเอ็กซ์ซีคิวท์โปรแกรม Program execution คือความสามารถของระบบที่จะโหลดโปรแกรมเข้าไปไว้ยังหน่วยความจำและทำให้โปรแกรมนั้นทำงาน
    • ปฏิบัติการของอินพุทเอ้าท์พุท I/O operations เมื่อโปรแกรมของผู้ใช้ไม่สามารถเอ็กซ์ซีคิวท์ปฏิบัติการของอินพุทเอ้าท์พุทได้โดยตรง ระบบปฏิบัติการจะต้องสามารถแจ้งเตือนอินพุทเอ้าท์พุทได้
    • การจัดการระบบไฟล์ที่เหมาะสม File-system manipulation ความสามารถของโปรแกรมในการอ่าน เขียน สร้าง และลบไฟล์
    • การสื่อสาร Communications การแลกเปลี่ยนข้อมูลสารสนเทสระหว่างการเอ็กซ์ซีคิวท์ โปรเซส ทั้งที่เกิดขึ้นในคอมพิวเตตอรืเครื่องเดียวกัน หรือจากระบบที่อยู่บนเครือข่าย ที่ถูกใช้งานแบบ แบ่งปันหน่วยความจำ shared memory หรือการ ส่งผ่านข้อความ message passing
    • การตรวจจับข้อผิดพลาด Error detection เพื่อความแน่ใจว่าการคำนวณเป็นไปโดยถูกต้อง โดยการตรวจจับข้อผิดพลาด ในหน่วยประมวลผล และฮาร์ดแวร์หน่วยความจำ ในอุปกรณ์อินพุทเอ้าท์พุท หรือโปรแกรมของผู้ใช้
  • หน้าที่เพิ่มเติมของระบบปฏิบัติการ Additional Operating System Functions
    • หน้าที่ของระบบปฏิบัติการนอกจากจะเป็นเครื่องช่วยให้ผู้ใช้งานคอมพิวเตอร์ทำงานได้โดยสะดวกแล้ว แต่ยังช่วยให้การปฏิบัติการใดๆ ของระบบมีประสิทธิภาพด้วย
      • การจัดสรรทรัพยากรต่างๆ Resource allocation ระบบปฏิบัติการช่วยบริหารจัดการทรัพยากรของระบบให้แก่ผู้ใช้งานมากกว่าหนึ่งคนหรือการจัดการบริหารการทำงานใดๆ มากกว่าหนึ่งงานในเวลาเดียวกันนั่นเอง
      • การทำบัญชี Accounting การเฝ้าติดตามและบันทึกการเข้าใช้งานของผู้ใช้รายต่างๆ ว่าเข้าใช้ทรัพยากรใดมากน้อย และบ่อยครั้งอย่างไร เพื่อสามารถแสดงรายงานหรือการจัดทำสถิติได้อย่างสม่ำเสมอ
      • การป้องกัน Protection เพื่อให้เกิดความมั่นใจ้ได้ว่า ทุกๆ การเข้าใช้งานจากผู้ใช้หรือระบบใดๆ เพื่อเข้าใช้ทรัพยากรของระบบล้วนถูกควบคุมดูแล
  • การเรียกใช้ระบบ System Calls
    • การเรียกระบบ System Calls รองรับบริการส่วนอินเตอร์เฟสหรือส่วนการติดต่อระหว่างโปรแกรมที่กำลังทำงานกับระบบปฏิบัติการ
      • โดยทั่วไปสามารถใช้งานด้วยคำสั่งภาษาแอสเซมบลี
      • การกำหนดภาษาเพื่อทดแทนภาษาแอสเซมบลี เพื่อทำให้การเขียนโปรแกรมสำหรับระบบสามารถเรียกใช้งานการเรียกระบบได้โดยตรง อาทิเช่นภาษาซี และซีพลัสพลัส
    • ระเบียบวิธีทั่วไปสามวิธีที่ถูกใช้เพื่อการส่งผ่านค่าพารามิเตอร์ ระหว่างโปรแกรมที่กำลังทำงาน และระบบปฏิบัติการ
      • การผ่านค่าในรีจีสเตอร์ registers
      • จัดเก็บค่าพารามิเตอร์ลงในตารางในหน่วยความจำ และแอดเดรสในตารางถูกส่งผ่านค่าด้วยพารามิเตอร์ในรีจีสเตอร์
      • การผลัก Push (store) หรือการจัดเก็บ ค่าพารามิเตอร์ ลงบนแสต็ก stack โดยโปรแกรม และการดันออกจากแสต็ก โดยระบบปฏิบัติการ
  • การส่งผ่านค่าพารามิเตอร์ด้วยตาราง Passing of Parameters As A Table
  • ประเภทของการเรียกระบบแบบต่างๆ Types of System Calls
    • ประเภทของการเรียกระบบแบบต่างๆ
    • การควบคุมโปรเซส Process control
    • การบริหารจัดการไฟล์ File management
    • การบริหารจัดการอุปกรณ์ Device management
    • การบริหารดูแลสารสนเทศ Information maintenance
    • การสื่อสาร Communications
  • การเอ็กซ์ซีคิวท์ ใน เอ็มเอสดอส MS-DOS Execution เมื่อระบบเริ่มทำงาน ระหว่างโปรแกรมทำงาน
  • การทำงานแบบหลายโปรแกรม ( Multiple Programs ) ในระบบยูนิกซ์ UNIX Running Multiple Programs
  • รูปแบบการสื่อสาร Communication Models การแบ่งสรรหน่วยความจำ Shared Memory การสื่อสารอาจใช้ทั้งรูปแบบการส่งผ่านข้อความหรือการสรรหน่วยความจำ การส่งผ่านค่าข้อความ Message Passing
  • โปรแกรมระบบ System Programs
    • โปรแกรมระบบทำให้เกิดสภาพแวดล้อมที่สะดวกสบายสำหรับการพัฒนาและเอ็กซ์ซีคิวท์โปรแกรม โดยสามารถแบ่งย่อยได้ดังต่อไปนี้
    • การจัดการไฟล์อย่างเหมาะสม File manipulation
    • สารสนเทศของสถานะ Status information
    • การปรับปรุงแก้ไขไฟล์ File modification
    • รองรับภาษาในการเขียนโปรแกรม Programming language support
    • การโหลดและการเอ็กซ์ซีคิวท์โปรแกรม Program loading and execution
    • การสื่อสาร Communications
    • โปรแกรมอรรถประโยชน์ หรือแอพพลิเคชั่นโปรแกรม Application programs
    • มุมมองของผู้ใช้ส่วนใหญ่ ที่มีต่อระบบปฏิบัติการ ถูกกำหนดโดยโปรแกรมระบบ ไม่ใช่การเรียกใช้ระบบตามความเป็นจริง
  • โครงสร้างของระบบเอ็มเอสดอส MS-DOS System Structure
    • เอ็มเอสดอส ถูกเขียนขึ้นเพื่อให้มีหน้าที่หลากหลายโดยใช้พื้นที่น้อยหรือขนาดเล็ก
    • ไม่ได้ถูกแบ่งออกเป็นโมดูลย่อย
    • แม้ว่า เอ็มเอสดอส จะมีโครงสร้างอยู่บ้าง แต่ก็ไม่ได้แบ่งส่วนของอินเตอรืเฟสและระดับชั้นของหน้าที่ต่างๆ ในการทำงานออกจากกันอย่างชัดเจนนัก
  • โครงสร้างลำดับชั้นของ เอ็มเอสดอส MS-DOS Layer Structure
  • โครงสร้างของระบบยูนิกซ์ UNIX System Structure
    • ยูนิกซ์ UNIX ถูกจำกัดด้วยหน้าที่ของฮาร์ดแวร์ ต้นฉบับของระบบปฏิบัติการยูนิกซ์ มีการจำกัดโครงสร้าง โดยแบ่งออกเป้นสองส่วนหลักคือ
    • โปรแกรมระบบ Systems programs
    • เคอร์แนล kernel
      • ประกอบด้วยทุกสิ่งภายใต้อินเตอร์เฟสการเรียกระบบและ บนฮาร์ดแวร์การยภาพ
      • โดยมี ระบบไฟล์ การจัดลำดับการทำงานของหน่วยประมวลผล การจัดการหน่วยความจำ และหน้าที่อื่นๆ ของระบบปฏิบัติการ ซึ่งประกอบด้วยหน้าที่ต่างๆ มากมายในหนึ่งระดับ
  • โครงสร้างระบบยูนิกซ์ UNIX System Structure
  • การเข้าถึงระดับชั้นต่างๆ Layered Approach
    • ระบบปฏิบัติการถูกแบ่งออกเป็นระดับชั้นต่างๆ โดยแต่ละระดับชั้นสร้างขึ้นบนระดับชั้นที่ต่ำกว่า ระดับชั้นล่างสุด หรือระดับ 0 ก็คือฮาร์ดแวร์ และระดับชั้นบนสุด หรือระดับชั้นที่ N ก็คือส่วนอินเตอร์เฟส
    • ด้วยการแบ่งเป็นส่วนโมดูลต่างๆ ระดับชั้นจะถูกเลือกใช้อาทิการใช้หน้าที่ ( การปฏิบัติงาน operations ) และงานบริการของระดับชั้นที่ต่ำกว่าเท่านั้น
  • ระดับชั้นของระบบปฏิบัติการ An Operating System Layer
  • โครงสร้างระดับชั้นของโอเอสทู OS/2 Layer Structure
  • โครงสร้างของระบบไมโครเคอร์แนล Microkernel System Structure
    • เคลื่อย้ายมากที่สุดจากเคอร์แนลไปสู่ส่วนพื้นที่การทำงานของผู้ใช้
    • การสื่อสารระหว่างโมดูลของผู้ใช้ด้วยการส่งผ่านค่าแบบข้อความ
    • ประโยชน์
      • ง่ายต่อการขยายเพิ่มเติมไมโครเคอร์แนล
      • ง่ายต่อแปลงระบบปฏิบัติการไปเป็นสถาปัตยกรรมใหม่
      • เพิ่มความน่าเชื่อถือให้กับระบบมากขึ้น ด้วยมีโค้ดที่ทำงานในเคอร์แนลโหมดจำนวนน้อย
      • ปลอดภัยสูง
    • ข้อเสีย
      • สูญเสียการบริหารจัดการส่วนการดำเนินการการสื่อสาร พื้นที่การใช้งานของผู้ใช้กับพื้นที่ของเคอร์แนล
  • โครงสร้างของระบบปฏิบัติการแมคโอเอสเอ็กซ์ Mac OS X Structure
  • โครงสร้างของวินโดวส์เอ็นทีไคลเอนท์เซอร์ฟเวอร์ Windows NT Client-Server Structure
  • Modules
    • ระบบปฏิบัติการสมัยใหม่ส่วนใหญ่ นำโมดูลของเคอร์แนลมาใช้ดังนี้
    • ใช้การเข้าถึงแบบเชิงวัตถุ
    • แบ่งแยกส่วนประกอบหลักๆ ออกจากกัน
    • แต่ละส่วนสามารถสื่อสารกันผ่านอนเตอร์เฟสพื้นฐาน
    • แต่ละส่วนสามารถถูกโหลดเมื่อต้องการภายในเคอร์แนล
    • กล่าวคือมีความคล้ายคลึงกับแบบระดับชั้นแต่ยืดหยุ่นมากกว่า
  • แนวคิดแบบโมดูลของโซลาริส Solaris Modular Approach
  • เครื่องจักรเสมือน หรือเวอร์ช่วลแมชชีน Virtual Machines
    • เครื่องจักรเสมือนใช้แนวคิดแบบระดับชั้น เพื่ออธิบายแนวคิดเชิงตรรก โดยทำให้ฮาร์ดแวร์และเคอร์แนลของระบบปฏิบัติการ ให้เป็นเสมือนหนึ่งเป็นฮาร์ดแวร์ทั้งหมด
    • เครื่องจักรเสมือนรองรับการทำงานด้วยอินเตอร์เฟสที่เสมือนเป็นฮาร์ดแวร์
    • ระบบปฏิบัติการจะสร้างมัลติเปิลโปรเซสเสมือนขึ้น โดยแต่ละโปรเซสจะถูกเอ็กซ์ซีคิวท์ด้วยตัวประมวลผลของตนเองบนพื้นที่หน่วยความจำเสมือนของตนเองเช่นกัน
  • Virtual Machines (Cont.)
    • ทรัพยากรของคอมพิวเตอร์เชิงกายภาพ ถูกแบ่งสรรเพื่อใช้สร้างเครื่องจักรเสมือน
    • การลำดับการทำงานให้กับหน่วยประมวลผลเพื่อให้สามารถสร้างตัวประมวลผลเสมือนขึ้นเป็นของผู้ใช้แต่ละคนเอง
    • การทำสพูลลิ่งและระบบไฟล์ สามารถรองรับการทำงานอ่านบัตรแบบเสมือนและการทำงานแบบเครื่องพิมพ์เสมือนด้วย
    • เทอร์มินอลแบบแบ่งสรรเวลาของผู้ใช้ตามปกติ สามารถใช้บริการผ่านคอนโซลโอเปอเรเตอร์ของเครื่องจักรเสมือน
  • ตัวแบบของระบบ System Models แบบไม่มีเวอร์ช่วลแมชชีน Non-virtual Machine แบบมีเวอร์ช่วลแมชชีน Virtual Machine
  • ประโยชน์และข้อจำกัดของเวอร์ช่วลแมชชีน Advantages/Disadvantages of Virtual Machines
    • แนวคิดของเครื่องจักรเสมือนก็เพื่อป้องกันการใช้ทรัพยากรต่างๆ ของระบบโดยการแบ่งเครื่องจักรแต่ละเครื่องออกจากกัน แต่ก็ยังคงใช้ทรัพยากรจากระบบปฏิบัติการกลางร่วมกัน
    • ระบบเครื่องจักรเสมือนนับเป็นเครื่องมือที่ดีในการวิจัยและพัฒนาระบบปฏิบัติการ การพัฒนาระบบปฏิบัติการ นิยมทำบนเครื่องจักรเสมือน แทนที่จะพัมนาบนเครื่องจริง เพื่อป้องกันระบบปฏิบัติการที่ติดตั้งบนเครื่องจริงเกิดการผิดพลาดในการทำงาน
    • แนวคิดของเครื่องจักรเสมือนนั้นยากในการนำไปใช้ เมื่อเกิดการใช้งานที่เหมือนหรือซ้ำๆ กันขึ้น
  • เครื่องจักรเสมือนของจาวา Java Virtual Machine
    • เป็นเครื่องมือในการคอมไพล์หรือแปลงโปรแกรมภาษาจาวา ที่เป็นแบบไม่ขึ้นกับแพลทฟอร์มใดๆ ไปเป็นไบท์โค้ดเพื่อสามารถถูกเอ็กซ์ซีคิวท์โดย เครื่องจักรเสมือนของจาวา หรือ JVM
    • JVM ประกอบด้วย
    • ตัวโหลดคลาส Class loader
    • ตัวตรวจสอบคลาส Class verifier
    • ตัวแปลภาษาขณะทำงาน Runtime interpreter
    • ตัวแปลภาษาแบบ JIT Just-In-Time (JIT) หรือการทำในขณะทำงานจริง ทำให้การทำงานมีประสิทธิสูงขึ้น
  • เวอร์ช่วลแมชชีนของจาวา The Java Virtual Machine
  • แพลทฟอร์มของจาวา The Java Platform
  • ไฟล์ดอทคลาส (.class) ของจาวา ระหว่างแพลทฟอร์มต่างๆ กัน Java .class File on Cross Platforms
  • สภาพแวดล้อมในการพัฒนาของจาวา Java Development Environment
  • เป้าหมายในการออกแบบระบบ System Design Goals
    • เป้าหมายระดับผู้ใช้ User goals
      • ระบบปฏิบัติการ ควรจะเอื้อให้ผู้ใช้สามารถใช้งานระบบได้โดยสะดวก ง่ายต่อการเรียนรู้ มีความน่าเชื่อถือ ปลอดภัย และรวดเร็ว
    • เป้าหมายระดับระบบ System goals
      • ระบบปฏิบัติการจะต้องง่ายต่อการออกแบบ ง่ายต่อการนำไปใช้งาน และง่ายต่อการบำรุงรักษา ในขณะเดียวกันต้องมีความยืดหยุ่นสูง น่าเชื่อถือ ปราศจากข้อผิดพลาด และมีประสิทธิภาพ
  • กลไกในการทำงานและ นโยบาย Mechanisms and Policies
    • กลไกการทำงาน หมายถึงการอธิบายถึงการทำสิ่งหนึ่งสิ่งใด นโยบายใช้เพื่อตัดสินใจว่าจะทำสิ่งใดให้สำเร็จ
    • ข้อแตกต่างระหว่างกลไกการทำงานกับนโยบาย เป็นสิ่งสำคัญอย่างยิ่ง โดยจะทำให้ระบบมีความยืดหยุ่นสูงหากนโยบายมีการเปลี่ยนแปลงภายหลังระบบต้องสามารถปรับเปลียนได้โดยง่าย
  • การนำระบบไปใช้ System Implementation
    • ในอดีตระบบถูกเขียนขึ้นด้วยภาษาแอสแซมบลี แต่ระบบปฏิบัติการปัจจุบันถูกเขียนขึ้นด้วยภาษาโปรแกรมระดับสูง
    • การเขียนโค้ดโปรแกรมด้วยภาษาระดับสูง
    • สามารถเขียนได้เร็วกว่า
    • มีความกระทัดรัด และรัดกุมกว่า
    • ง่ายต่อการทำความเข้าใจและ การแก้ไข
    • ระบบปฏิบัติการที่เขียนด้วยภาษาระดับสูง มักไม่มีความสามารถในการนำไปใช้กับฮาร์ดแวร์ที่ต่างกันหรือที่ไม่ได้ใช้เฉพาะกับการเขียนนั้น
  • System Design Goals
    • User goals – operating system should be convenient to use, easy to learn, reliable, safe, and fast
    • System goals – operating system should be easy to design, implement, and maintain, as well as flexible, reliable, error-free, and efficient
  • พัฒนาการและรุ่นต่างๆ ของระบบ System Generation (SYSGEN)
    • ระบบปฏิบัติการถูกออกแบบขึ้นเพื่อการทำงานกับเครื่องระดับต่างๆ ทั้งนี้ระบบจะด้องได้รับการกำหนดค่าเฉพาะ ตามคุณสมบัติที่ต้องการใช้งานคอมพิวเตอร์นั้น
    • โปรแกรม SYSGEN ซิสเจน ทำหน้าที่ให้ข้อมูลสารสนเทศเฉพาะต่างๆ เพื่อการกำหนดค่าหรือคุณสมบัติ ของระบบฮาร์ดแวร์
    • การบูท Booting การเริ่มทำงานของเครื่องคอมพิวเตอร์โดยการโหลดเคอร์แนล
    • โปรแกรมบูทแสตรป Bootstrap program หมายถึงโค้ดที่อยู่ใน ROM ที่สามารถจัดวางเคอร์แนล โหลดไปไว้ยังหน่วยความจำ และเรี่มทำการเอ็กซ์ซิคิวท์เคอร์แนล