จากที่ได้กล่าวมาแล้วว่า ระบบปฏิบัติการถูกสร้างขึ้นมาด้วยวัตถุประสงค์หลักคือ อำนวยความสะดวกแก่ผู้ใช้เครื่องคอมพิวเตอร์ ในลักษณะที่ผู้ใช้ไม่จำเป็นต้องทราบกลไกการทำงานหรือฮาร์ดแวร์ของระบบ จึงสามารถแบ่ง หน้าที่หลักของระบบปฏิบัติการได้ดังนี้
2.1 ติดต่อกับผู้ใช้ (user interface) ผู้ใช้สามารถติดต่อหรือควบคุมการทำงานของเครื่องคอมพิวเตอร์ผ่านทางระบบปฏิบัติการได้ โดยระบบปฏิบัติการจะเครื่องหมายพร้อมต์ (prompt) ออกทางจอภาพเพื่อรอรับคำสั่งจากผู้ใช้โดยตรง ตัวระบบปฏิบัติการจึงเป็นตัวกลางที่ทำหน้าที่เชื่อมโยงระหว่างผู้ใช้กับฮาร์ดแวร์ของเครื่อง นอกจากนี้ผู้ใช้อาจเขียนโปรแกรมเพื่อใช้งานกรณีนี้ผู้ใช้ก็สามารถติดต่อกับระบบปฏิบัติการได้โดยผ่านทาง System Call
2.2 ควบคุมการทำงานของโปรแกรม และอุปกรณ์รับ/แสดงผลข้อมูล (input/output device) ตลอดจนการให้ความสะดวกแก่ผู้ใช้ในการใช้งานอุปกรณ์ต่างๆ ได้ง่าย เช่น การเข้าถึงข้อมูลในแฟ้มหรือติดต่อกับอุปกรณ์รับ/แสดงผลข้อมูล จึงทำให้ผู้พัฒนาโปรแกรมไม่จำเป็นต้องเขียนโปรแกรมเพื่อควบคุมตัวขับดิสก์เพราะระบบปฏิบัติการจัดบริการให้มีคำสั่งสำหรับติดต่อกับอุปกรณ์เหล่านี้ได้อย่างง่ายๆเนื่องจากผู้ใช้เครื่องคอมพิวเตอร์ผ่านทางระบบปฏิบัติการ อาจไม่มีความจำเป็นต้องมีความรู้ความเข้าใจถึงหลักการทำงานภายในของเครื่อง
ดังนั้น ระบบปฏิบัติการจึงมีหน้าที่ควบคุมการทำงานของโปรแกรม การทำงานของอุปกรณ์ต่างๆ เพื่อให้การทำงานของระบบเป็นไปอย่างถูกต้องและสอดคล้องกัน ระบบปฏิบัติการจึงมีส่วนประกอบของหน้าที่ต่างๆ ที่ควบคุมอุปกรณ์แต่ละชนิดที่มีหน้าที่แตกต่างกันไป โดยผู้ใช้อาจเรียกใช้ผ่านทาง System Call หรือเขียนโปรแกรมขึ้นมาควบคุมอุปกรณ์เหล่านั้นได้เอง
2.3 จัดสรรให้ใช้ทรัพยากรระบบร่วมกัน (shared resources) ซึ่งทรัพยากรหลักที่ต้องมีการจัดสรร ได้แก่ หน่วยประมวลผลกลาง หน่วยความจำหลัก อุปกรณ์รับ/แสดงผลข้อมูลและแฟ้มข้อมูล เช่น การจัดลำดับให้บริการใช้เครื่องพิมพ์การสับหลีกงานหลายงานในหน่วยความจำหลักและการจัดสรรหน่วยความจำหลักให้กับโปรแกรมทั้งหลาย ทรัพยากร คือสิ่งที่ซึ่งถูกใช้ไปเพื่อให้โปรแกรมดำเนินไป ซึ่งเหตุที่ต้องมีการจัดสรรทรัพยากรก็เพราะ
2.3.1 ทรัพยากรของระบบมีขีดจำกัด เช่น ซีพียูในระบบมีอยู่เพียงตัวเดียว แต่ทำงานในระบบมัลติโปรแกรมมิ่งมีการทำงานหลายโปรแกรม จึงจะต้องมีการจัดสรรซีพียูให้ทุกโปรแกรมอย่างเหมาะสม
2.3.2 ทรัพยากรมีอยู่หลายประเภท แต่ละโปรเซสหรือโปรแกรมมีความต้องการใช้ทรัพยากรเพียง อย่างเดียว หรือหลายอย่างพร้อมกัน ระบบปฏิบัติการจึงต้องจัดเตรียมทรัพยากรต่างๆ ตามความต้องการของโปรแกรม
ดังนั้นหน้าที่อันสำคัญประการหนึ่งของระบบปฏิบัติการก็คือ การจัดสรรทรัพยากรของระบบให้เกิดประโยชน์สูงสุด โดยคำนึงถึงความยุติธรรมต่อผู้ใช้แต่ละคน และให้เกิดประสิทธิภาพเป็นหลักสำคัญ ถ้าระบบปฏิบัติการจัดสรรทรัพยากรได้อย่างมีประสิทธิภาพ ระบบก็สามารถรันโปรแกรมได้อย่างรวดเร็วและได้งานเพิ่มขึ้น ทรัพยากรหลักที่ระบบปฏิบัติการจัดสรรได้แก่ โปรเซสเซอร์ (ซีพียู), หน่วยความจำ, อุปกรณ์นำข้อมูลเข้า/ออก และข้อมูล เป็นต้น
ระบบปฏิบัติการอาจเป็นได้ทั้ง Hardware Software หรือ Firmware หรือผสมผสานกันก็ได้ โดยมี เป้าหมายเดียวกันคือสามารถช่วยให้ผู้ใช้คอมพิวเตอร์สามารถใช้คอมพิวเตอร์ได้ดังที่ได้กล่าวมาแล้ว
1. Hardware OS เป็น OS ที่อยู่ในรูปของอุปกรณ์ ถูกสร้างขึ้นเพื่อควบคุมการทำงานของเครื่องคอมพิวเตอร์และเป็นส่วนหนึ่งของฮาร์ดแวร์มีความเร็วในการทำงานสูง แต่ราคาแพงและแก้ไขยาก ไม่นิยมในการแก้ไขส่วนมากจะเป็นการเปลี่ยนอุปกรณ์มากกว่าการแก้ไข
2. Software OS เป็น OS ที่เป็นโปรแกรมที่เขียนขึ้นเพื่อควบคุมการทำงานของเครื่องคอมพิวเตอร์ เช่นเดียวกัน มีความเร็วช้ากว่า Hardware OS แต่เป็นที่นิยมมากที่สุดเพราะง่ายแก่การแก้ไข และราคาถูก
3. Firmware OS เป็น OS ที่เป็นส่วนของโปรแกรมที่เก็บไว้เป็นส่วนหนึ่งของเครื่องคอมพิวเตอร์ เขียนขึ้นโดยใช้คำสั่งไมโคร หลายๆ คำสั่งของคำสั่งไมโครรวมกันเรียกว่าไมโครโปรแกรม มีความเร็วสูงกว่า Software OS แต่ช้ากว่า Hardware OS
จากที่ได้กล่าวมาแล้วว่า ระบบปฏิบัติการถูกสร้างขึ้นมาด้วยวัตถุประสงค์หลักคือ อำนวยความสะดวกแก่ผู้ใช้เครื่องคอมพิวเตอร์ ในลักษณะที่ผู้ใช้ไม่จำเป็นต้องทราบกลไกการทำงานหรือฮาร์ดแวร์ของระบบ จึงสามารถแบ่ง หน้าที่หลักของระบบปฏิบัติการได้ดังนี้
2.1 ติดต่อกับผู้ใช้ (user interface) ผู้ใช้สามารถติดต่อหรือควบคุมการทำงานของเครื่องคอมพิวเตอร์ผ่านทางระบบปฏิบัติการได้ โดยระบบปฏิบัติการจะเครื่องหมายพร้อมต์ (prompt) ออกทางจอภาพเพื่อรอรับคำสั่งจากผู้ใช้โดยตรง ตัวระบบปฏิบัติการจึงเป็นตัวกลางที่ทำหน้าที่เชื่อมโยงระหว่างผู้ใช้กับฮาร์ดแวร์ของเครื่อง นอกจากนี้ผู้ใช้อาจเขียนโปรแกรมเพื่อใช้งานกรณีนี้ผู้ใช้ก็สามารถติดต่อกับระบบปฏิบัติการได้โดยผ่านทาง System Call
2.2 ควบคุมการทำงานของโปรแกรม และอุปกรณ์รับ/แสดงผลข้อมูล (input/output device) ตลอดจนการให้ความสะดวกแก่ผู้ใช้ในการใช้งานอุปกรณ์ต่างๆ ได้ง่าย เช่น การเข้าถึงข้อมูลในแฟ้มหรือติดต่อกับอุปกรณ์รับ/แสดงผลข้อมูล จึงทำให้ผู้พัฒนาโปรแกรมไม่จำเป็นต้องเขียนโปรแกรมเพื่อควบคุมตัวขับดิสก์เพราะระบบปฏิบัติการจัดบริการให้มีคำสั่งสำหรับติดต่อกับอุปกรณ์เหล่านี้ได้อย่างง่ายๆเนื่องจากผู้ใช้เครื่องคอมพิวเตอร์ผ่านทางระบบปฏิบัติการ อาจไม่มีความจำเป็นต้องมีความรู้ความเข้าใจถึงหลักการทำงานภายในของเครื่อง
ดังนั้น ระบบปฏิบัติการจึงมีหน้าที่ควบคุมการทำงานของโปรแกรม การทำงานของอุปกรณ์ต่างๆ เพื่อให้การทำงานของระบบเป็นไปอย่างถูกต้องและสอดคล้องกัน ระบบปฏิบัติการจึงมีส่วนประกอบของหน้าที่ต่างๆ ที่ควบคุมอุปกรณ์แต่ละชนิดที่มีหน้าที่แตกต่างกันไป โดยผู้ใช้อาจเรียกใช้ผ่านทาง System Call หรือเขียนโปรแกรมขึ้นมาควบคุมอุปกรณ์เหล่านั้นได้เอง
2.3 จัดสรรให้ใช้ทรัพยากรระบบร่วมกัน (shared resources) ซึ่งทรัพยากรหลักที่ต้องมีการจัดสรร ได้แก่ หน่วยประมวลผลกลาง หน่วยความจำหลัก อุปกรณ์รับ/แสดงผลข้อมูลและแฟ้มข้อมูล เช่น การจัดลำดับให้บริการใช้เครื่องพิมพ์การสับหลีกงานหลายงานในหน่วยความจำหลักและการจัดสรรหน่วยความจำหลักให้กับโปรแกรมทั้งหลาย ทรัพยากร คือสิ่งที่ซึ่งถูกใช้ไปเพื่อให้โปรแกรมดำเนินไป ซึ่งเหตุที่ต้องมีการจัดสรรทรัพยากรก็เพราะ
2.3.1 ทรัพยากรของระบบมีขีดจำกัด เช่น ซีพียูในระบบมีอยู่เพียงตัวเดียว แต่ทำงานในระบบมัลติโปรแกรมมิ่งมีการทำงานหลายโปรแกรม จึงจะต้องมีการจัดสรรซีพียูให้ทุกโปรแกรมอย่างเหมาะสม
2.3.2 ทรัพยากรมีอยู่หลายประเภท แต่ละโปรเซสหรือโปรแกรมมีความต้องการใช้ทรัพยากรเพียง อย่างเดียว หรือหลายอย่างพร้อมกัน ระบบปฏิบัติการจึงต้องจัดเตรียมทรัพยากรต่างๆ ตามความต้องการของโปรแกรม
ดังนั้นหน้าที่อันสำคัญประการหนึ่งของระบบปฏิบัติการก็คือ การจัดสรรทรัพยากรของระบบให้เกิดประโยชน์สูงสุด โดยคำนึงถึงความยุติธรรมต่อผู้ใช้แต่ละคน และให้เกิดประสิทธิภาพเป็นหลักสำคัญ ถ้าระบบปฏิบัติการจัดสรรทรัพยากรได้อย่างมีประสิทธิภาพ ระบบก็สามารถรันโปรแกรมได้อย่างรวดเร็วและได้งานเพิ่มขึ้น ทรัพยากรหลักที่ระบบปฏิบัติการจัดสรรได้แก่ โปรเซสเซอร์ (ซีพียู), หน่วยความจำ, อุปกรณ์นำข้อมูลเข้า/ออก และข้อมูล เป็นต้น
ระบบปฏิบัติการอาจเป็นได้ทั้ง Hardware Software หรือ Firmware หรือผสมผสานกันก็ได้ โดยมี เป้าหมายเดียวกันคือสามารถช่วยให้ผู้ใช้คอมพิวเตอร์สามารถใช้คอมพิวเตอร์ได้ดังที่ได้กล่าวมาแล้ว
1. Hardware OS เป็น OS ที่อยู่ในรูปของอุปกรณ์ ถูกสร้างขึ้นเพื่อควบคุมการทำงานของเครื่องคอมพิวเตอร์และเป็นส่วนหนึ่งของฮาร์ดแวร์มีความเร็วในการทำงานสูง แต่ราคาแพงและแก้ไขยาก ไม่นิยมในการแก้ไขส่วนมากจะเป็นการเปลี่ยนอุปกรณ์มากกว่าการแก้ไข
2. Software OS เป็น OS ที่เป็นโปรแกรมที่เขียนขึ้นเพื่อควบคุมการทำงานของเครื่องคอมพิวเตอร์ เช่นเดียวกัน มีความเร็วช้ากว่า Hardware OS แต่เป็นที่นิยมมากที่สุดเพราะง่ายแก่การแก้ไข และราคาถูก
3. Firmware OS เป็น OS ที่เป็นส่วนของโปรแกรมที่เก็บไว้เป็นส่วนหนึ่งของเครื่องคอมพิวเตอร์ เขียนขึ้นโดยใช้คำสั่งไมโคร หลายๆ คำสั่งของคำสั่งไมโครรวมกันเรียกว่าไมโครโปรแกรม มีความเร็วสูงกว่า Software OS แต่ช้ากว่า Hardware OS