วันอาทิตย์ที่ 3 สิงหาคม พ.ศ. 2551

มารู้จักกับระบบปฏิบัติการ

คิดว่าทุกคนก็น่าจะรู้จักระบบปฏิบัติการหรือ OS กันอยู่แล้ว ลองมาดูถึงรายละเอียดลึกๆของมันกันหน่อย

Operating System (OS)

ระบบปฏิบัติการเป็นชุดของโปรแกรมคอมพิวเตอร์ที่ทำหน้าที่ควบคุม Hardware และ ทำหน้าที่เป็นตัวประสานกับโปรแกรมประยุกต์ Osสามารถควบคุมคอมพิวเตอร์ทีละเครื่องหรือหลายๆเครื่องก็ได้ หรือพวกมันอาจจะอนุญาตให้ผู้ใช้หลายๆคนเข้าถึงคอมพิวเตอร์เครื่องเดียวกันได้ การรวมกันอย่างหลากหลายของ Os Computer และผู้ใช้ ประกอบด้วย

• A Single Computer with a Single User นี่คือระบบธรรมดาที่ใช้ในคอมพิวเตอร์ส่วนบุคคล ซึ่งอนุญาตให้มีผู้ใช้ได้งานได้แค่คนเดียวในช่วงเวลานั้น

• A Single Computer with a Multiple User นี่จะเป็นระบบที่มีขนาดใหญ่ขึ้นมา หรือ mainframe computer ซึ่งมันสามารถจัดการให้ผู้ใช้เป็นร้อยเป็นพันเข้ามาใช้คอมพิวเตอร์พร้อมกันได้ในเวลาเดียวกัน

• Multiple Computer นี่จะเป็นระบบที่เกี่ยวกับเครือข่ายคอมพิวเตอร์ เช่น ระบบเครือข่ายที่บ้านจะมีคอมพิวเตอร์หลายเครื่องติดต่อกัน หรือระบบเครือข่ายขนาดใหญ่จะมีคอมพิวเตอร์เป็นร้อยๆเครื่องติดต่อกันทั่วโลก

• Special-Purpose Computer นี่คือระบบพิเศษที่มีเป้าหมายเฉพาะ เช่นพวกระบบควบคุมเครื่องบินอัติโนมัตของทางทหาร ระบบกระสวยอวกาศ และเป้าหมายเฉพาะอื่นๆ อีกมากมาย

การทำงานของระบบ OS มีหลายอย่างซึ่งประกอบไปด้วย

- การสั่งให้ Hardware ทำงานตามหน้าที่ของมัน
- การติดต่อระหว่างผู้ใช้และ input/output
- การจัดการความแตกต่างในแต่ละระดับของ Hardware
- การจัดการหรือเตรียมการสำหรับระบบหน่วยความจำ
- การจัดระเบียบขั้นตอนการทำงานต่างๆ
- การเตรียมการความสามารถของระบบเครือข่าย
- การควบคุมการเข้าใช้ทรัพยากรของระบบ
- การจัดการกับระบบแฟ้ม

Kernel เป็นชื่อของระบบที่ถือว่าเป็นหัวใจสำคัญของ OS และมันมีหน้าที่ควบคุมขั้นตอนการทำงานที่ต้องใช้ความระมัดระวังอย่างมาก Kernel เป็นส่วนประกอบที่ขาดไม่ได้ของ OS และเป็นตัวที่คอยบังคับโปรแกรมอื่นๆ

การทำงานทั่วไปของ Hardware

โปรแกรมประยุกต์ทุกโปรแกรมจะต้องมีขั้นตอนการทำงานที่ชัดเจนและเป็นระบบ เช่น
- รับค่าจาก keyboard หรืออุปกรณ์ input แบบอื่น
- นำข้อมูลออกมาจาก disks
- เก็บข้อมูลเข้า disks
- แสดงผลการทำงานออกทางจอภาพหรือเครื่องพิมพ์

ระบบประสานงานกับผู้ใช้และการจัดการ Input/output

เป็นหน้าที่หนึ่งซึ่งนับว่าเป็นส่วนประกอบที่สำคัญมากส่วนหนึ่งของ OS ระบบประสานงานกับผู้ใช้นี้จะอนุญาตให้เข้าใช้ได้ทีละคนและทีละคำสั่งของระบบคอมพิวเตอร์ ระบบการติดต่อกับผู้ใช้ของทั้งระบบ mainframeและเครื่องส่วนบุคคลในรุ่นแรกๆ นี้จะเป็นในลักษณะ command-base ระบบติดต่อกับผู้ใช้ command-baseนี้จะเป็นรูปแบบของการใช้ text command ในการสั่งให้คอมพิวเตอร์ทำงานตามที่เราต้องการ เช่น การใช้ RENAME และ COPY ในการเปลี่ยนชื่อและคัดลอกไฟล์ในตำแหน่งที่เรากำหนด
A graphical user interface (GUI) เป็นการใช้รูปภาพ หรือ icon ในการแสดงผลออกทางหน้าจอ และส่งคำสั่งไปให้ระบบคอมพิวเตอร์แทน ผู้คนส่วนใหญ่จะใช้ระบบ GUI ได้ง่ายกว่าแบบแรกเพราะจะใช้ภาพมาแสดงการทำงานทำให้เข้าใจได้ง่ายขึ้น
นอกจากการทำงานของระบบติดต่อกับผู้ใช้(user interface)แล้ว ทุกวันนี้ OS จะจัดการรูปแบบการเข้าใช้ทั้งหมดของคอมพิวเตอร์ การจัดการ Input ประกอบไปด้วยการควบคุม keyboard mouse touchscreen และอุปกรณ์ Input อื่นๆ การจัดการ Output ประกอบไปด้วยการควบคุมจอภาพ printer และอุปกรณ์ output อื่นๆ

ความเป็นอิสระของ Hardware

โปรแกรมประยุกต์จะมีการเรียกใช้ OS โดยการร้องขอบริการการทำงานต่างๆจากมัน ซึ่งรูปแบบนี้เรียกว่า application program interface(API) ซึ่ง programmer จะสามารถใช้ API เพื่อช่วยในการเขียนโปรแกรมโดยที่ไม่ต้องเข้าใจการทำงานของ OS เลยก็ได้
สมมุติว่ามีการพัมนา hardware ตัวใหม่ขึ้นมา ซึ่งสามารถทำงานได้ดีกว่าเดิม ถ้า OS นั้นสามารถใช้ hardwareตัวใหม่นี้ได้ เราก็ไม่มีความจำเป็นที่จะต้องเปลี่ยน application เพราะมันก็สามารถทำงานได้เลยเหมือนกัน แต่ถ้าไม่มีระบบ API นี้ การพัฒนาโปรแกรมประยุกต์นั้นอาจจะต้องเขียนใหม่อีกครั้งเพื่อให้มันรองรับ hardware ตัวใหม่ได้ด้วย

การจัดการหน่วยความจำ

วัตถุประสงค์ของการจัดการหน่วยความจำก็คือ เราจะควบคุมการเข้าใช้หน่วยความจำและเพิ่มหน่วยความจำให้มีขนาดเพิ่มขึ้นได้อย่างไร OS รุ่นใหม่ๆ จะมีการจัดการหน่วยความจำได้ดีกว่าแบบเก่า ลักษณะของการจัดการหน่วยความจำของ OS ส่วนใหญ่จะอนุญาตให้คอมพิวเตอร์รันชุดคำสั่งของโปรแกรมบนหน่วยความจำอย่างมีประสิทธิผลและรวดเร็ว ทางเดียวที่จะเพิ่มประสิทธิภาพของคอมพิวเตอร์เก่าคือเปลี่ยนระบบปฏิบัติการใหม่และเพิ่มหน่วยความจำ
ระบบปฏิบัติการส่วนมากมีระบบรองรับ Virtual memory ซึ่งเป็นการกำหนดพื้นที่ว่างบน HDD เพื่อใช้สำหรับเก็บข้อมูลที่มาจาก RAM ในกรณีที่หน่วยความจำบน RAM ไม่เพียงพอ Virtual memory ทำงานโดยมันจะตัดการทำงานของโปรแกรมเป็นส่วนๆใน memory แล้วนำไปเปลี่ยนกับพื้นที่บน HDD วิธีการนี้เรียกว่า paging มันจะช่วยลดเวลาที่สูญเสียของ cpu และเพิ่มจำนวนการทำงานได้

ขั้นตอนการทำงาน

การจัดการการทำงานทั้งหมดเป็นหน้าที่ของ Task-management ใน ระบบปฏิบัติการ Task-management จะกำหนดทรัพยากรของคอมพิวเตอร์ให้ใช้ประโยชน์จากระบบให้ได้สูงสุด โปรแกรม Task-management สามารถยอมให้ผู้ใช้ 1 คนทำงานได้หลายงานในเวลาเดียวกัน (multitasking) และอนุญาตให้ผู้ใช้หลายคนทำงานได้พร้อมกันในคอมพิวเตอร์เครื่องเดียวกันได้ (time-sharing)
ระบบปฏิบัติการและความสามารถ Multitasking จะอนุญาตให้ผู้ใช้ทำงานได้มากกว่า 1 งานในเวลาเดียวกันโดยไม่ต้องออกจากโปรแกรมเดิม คุณสามารถทำงานในโปรแกรมหนึ่งและเปลี่ยนไปทำงานอื่นได้อย่างสะดวก และยังสามารถกลับมาทำงานเดิมได้อีก ในขณะที่คุณใช้โปรแกรมหนึ่งอยู่ส่วนนี้จะเป็น foreground และโปรแกรมอื่นก็กำลังทำงานอยู่โดยที่เราไม่เห็น ส่วนนี้จะเป็น background ไม่ว่าการ sorting database การprintเอกสาร หรือการทำงานอื่นๆ
Time-sharing เป็นการอนุญาตให้ผู้ใช้หลายคนสามารถเข้ามาใช้ระบบคอมพิวเตอร์ได้ในเวลาเดียวกัน เช่น พนักงานบริการลูกค้า 15 คนอาจจะเข้ามาในส่วนของข้อมูลสินค้าเพื่อสั่งสินค้าจากบริษัทในเวลาเดียวกัน หรือคน 1000คน อาจจะเข้ามาใช้บริการ online ในการดูราคาสินค้าและข่าวธุรกิจ เป็นต้น
ความสามารถของคอมพิวเตอร์ในการจัดการการเพิ่มขึ้นของผู้ใช้ที่เข้ามาใช้งานพร้อมกันได้อย่างราบรื่น เรียกว่า Scalability คุณลักษณะนี้เป็นส่วนสำคัญของระบบขนาดใหญ่ที่มีการเข้าใช้งานมากๆ เช่น Mainframe หรือ Web server

ความสามารถของระบบเครือข่าย

ระบบปฏิบัติการสามารถจัดการคุณลักษณะและความสามารถซึ่งช่วยผู้ใช้ในการเชื่อมโยงกับระบบเครือข่ายคอมพิวเตอร์ได้ เช่น ผู้ใช้ของ Apple computer มีการติดต่อกับเครือข่ายได้โดยตรงผ่านทาง AppleShare และ ระบบปฏิบัติการ Microsoft Window ก็มีความสามารถในการเชื่อมโยงผู้ใช้เข้ากับInternet

การเข้าใช้ทรัพยากรของระบบ

คอมพิวเตอร์มักมีข้อมูลที่เป็น sensitive ซึ่งมีอยู่ทั่วไปในระบบเครือข่าย ระบบปฏิบัติการจำเป็นต้องจัดให้มีความปลอดภัยในระดับสูงเพื่อกันการเข้าถึงข้อมูลของผู้ใช้และจากผู้ที่ไม่มีสิทธิที่จะเข้ามา ตัวอย่าง ระบบปฏิบัติการจะมีขึ้นตอนของการ Login ซึ่งผู้ใช้ที่จะเข้ามาต้องมีการระบุ code และรหัสผ่านที่สัมพันธ์กัน ถ้าการระบุ code ไม่ถูกต้อง ผู้ใช้ก็จะไม่สามารถเข้าใช้งานคอมพิวเตอร์ได้

การจัดการกับระบบแฟ้ม

หน้าที่ของ file-management คือ สามารถหาแฟ้มที่อยู่ในหน่วยความจำรองได้เมื่อจำเป็นที่จะต้องใช้และป้องกันการเข้าถึงจากผู้ไม่มีสิทธิได้ คอมพิวเตอร์ส่วนมากจะมีระบบรองรับที่ผู้ใช้หลายๆคนเก็บแฟ้มไว้ใน disk ส่วนกลาง ระบบปฏิบัติการจะเก็บ track ของแฟ้มแต่ละอันที่อยู่บนหน่วยความจำและเก็บด้วยว่าใครสามารถเข้าไปใช้แฟ้มในส่วนนั้นได้ แม้แต่เครื่องคอมพิวเตอร์ที่มีผู้ใช้เพียงคนเดียวก็จะเป็นที่ต้องเก็บ track เพื่อบอกว่าแฟ้มนั้นอยู่ที่ไหน ขนาดเท่าไร สร้างเมื่อไหร่ และใครเป็นคนสร้างแฟ้มนั้นมาด้วย

2 ความคิดเห็น:

~v~SmitH~v~ กล่าวว่า...

ก๊อปเหมื่อยเลย

อาจารย์จง กล่าวว่า...

แหม .... ขอ นิดหน่อย เถอะ ถึง แม้จะก๊อป มา ... ช่วย อ่าน หน่อย นะจ้ะ มันมีประโยชน์ ...

Windows, Mac OS มันต่างกันอย่างไร... DOS ล่ะ เป็นการทำงานแบบไหน Multi tasking หรือว่า อย่างไร น้า ....

แล้วในระบบของเรามันจะต้องใช้ระบบปฏิบัติการแบบไหน ล่ะ ... อืม น่าคิด น่า คิด ...ท่าทางคนโพสต์เมนต์นี้มีความคิดดี นะ....