วันพฤหัสบดีที่ 23 กุมภาพันธ์ พ.ศ. 2560

สรุปบทที่่4 โมเดิร์น OS / โมเดิร์นแอฟ

โมเดิร์น OS

ระบบปฏิบัติการ OS (Operating System)
ระบบปฏิบัติการ (operating system) หรือ โอเอส (OS) คือโปรแกรมที่ทำหน้าที่เป็นตัวกลางเชื่อมต่อระหว่างฮาร์ดแวร์ (Hardware) กับ ซอฟต์แวร์ประยุกต์ทั่วไปซึ่งทำหน้าที่รับข้อมูลจากผู้ใช้อีกที โดยจะทำหน้าที่ควบคุมการแสดงผล การทำงานของฮาร์ดแวร์ ให้บริการกับซอฟต์แวร์ประยุกต์ทั่วไปในการรับส่งและจัดเก็บข้อมูลกับฮาร์ดแวร์ และจัดสรรการใช้ทรัพยากรระบบ (Resources) ให้เป็นไปอย่างมีประสิทธิภาพ

โดยทั่วไประบบปฏิบัติการนั้น ไม่ได้มีแต่เฉพาะในคอมพิวเตอร์เท่านั้น แต่มีอยู่ในอุปกรณ์อิเล็คทรอนิคส์หลายชนิด เช่น โทรศัพท์มือถือ คอมพิวเตอร์พกพา พีดีเอ แท็บเล็ตต่างๆ โดยจะทำหน้าที่ควบคุมการทำงานของอุปกรณ์ต่างๆ และติดต่อกับผู้ใช้ผ่านโปรแกรมประยุกต์ (Application) ตัวอย่างของระบบปฏิบัติการในคอมพิวเตอร์ ได้แก่ Windows, Linux, Mac OS, Solaris, Ubuntu ส่วนตัวอย่างของระบบปฏิบัติการใช้มือถือได้แก่ Windows Mobile, iOS, Android เป็นต้น
โดยทั่วไปแบ่งเป็น 3 ประเภท คือ
  • Software OS เป็นโปรแกรมที่ทำหน้าที่ควบคุมการทำงานของเครื่อง OS โดยส่วนใหญ่จะเป็น Software OS เนื่องจากสามารถปรับปรุง แก้ไข พัฒนาได้ง่ายที่สุด
  • Firmware OS เป็นโปรแกรมส่วนหนึ่งของคอมพิวเตอร์ ซึ่งก็คือ ไมโครโปรแกรม (Microprogram) ซึ่งเกิดจากชุดคำสั่งที่ต่ำที่สุดของระบบควบคุมการทำงานของ CPU หลายๆ คำสั่งรวมกัน การแก้ไข พัฒนา ทำได้ค่อนข้างยากและเสียค่าใช้จ่ายสูง
  • Hardware OS เป็น OS ที่สร้างจากอุปกรณ์อิเล็คทรอนิคส์ ทำหน้าที่เหมือน Software OS แต่เนื่องจากเป็นส่วนหนึ่งของฮาร์ดแวร์ ทำให้การปรับปรุงแก้ไขทำได้ยาก และมีราคาแพง



หน้าที่ของระบบปฏิบัติการ
1. ติดต่อกับผู้ใช้ (User Interface)
เนื่องจาก OS ถูกสร้างขึ้นด้วยจุดประสงค์หลัก คือ เพื่ออำนวยความสะดวกในการทำงานแก่ผู้ใช้ โดยที่ผู้ใช้ ไม่จำเป็นต้องทราบการทำงานของฮาร์ดแวร์ ก็สามารถทำงานได้โดยง่าย ดังนั้น จึงต้องมีส่วนที่ทำหน้าที่ติดต่อกับผู้ใช้ ในลักษณะที่ง่ายต่อการใช้งาน
2. ควบคุมการทำงานของคอมพิวเตอร์
OS เป็นตัวกลางที่เชื่อมต่อระหว่างผู้ใช้งานกับฮาร์ดแวร์ โดยผู้ใช้ ไม่จำเป็นต้องเข้าใจในการทำงานของฮาร์ดแวร์ ดังนั้น OS จึงต้องมีหน้าที่ควบคุมการทำงานของฮาร์ดแวร์ต่างๆ เหล่านั้นแทนผู้ใช้ โดยจะมีส่วนประกอบเป็นรูทีนต่างๆ ซึ่งจะควบคุมอุปกรณ์แต่ละชนิด
3. จัดสรรทรัพยากรในระบบ
ในการทำงานของเครื่องคอมพิวเตอร์นั้น จำเป็นต้องใช้ทรัพยากรต่างๆ เข้าช่วย เช่น CPU หน่วยความจำ เป็นต้น และทรัพยากรเหล่านี้มีจำกัด จึงจำเป็นต้องมีการจัดสรรการใช้งานให้เกิดประโยชน์สูงสุด และทำให้การประมวลผลดำเนินไปอย่างมีประสิทธิภาพ

โมเดิร์นแอฟ

 ซอฟต์แวร์ประยุกต์พื้นฐาน
ซอฟต์แวร์ประยุกต์ (application software) อาจกล่าวได้ว่าเป็น ซอฟต์แวร์สำหรับผู้ใช้ (end user software) แบ่งได้เป็น 2 ประเภท คือ ซอฟต์แวร์ประยุกต์พื้นฐาน และซอฟต์แวร์ประยุกต์เฉพาะงาน

         ซอฟต์แวร์ประยุกต์พื้นฐาน (basic application) หรือ ซอฟต์แวร์ประยุกต์อเนกประสงค์ (general-purpose application) เป็นซอฟต์แวร์ที่นิยมใช้กันอย่างกว้างขวางในทุกสาขาอาชีพ ที่รู้จักกันโดยทั่วไป คือ เบราว์เซอร์ (browser) เป็นโปรแกรมที่ใช้สำหรับนำทาง สำรวจ และค้นหาสารสนเทศบนอินเทอร์เน็ต เบราว์เซอร์ที่ใช้อยู่ในปัจจุบัน เช่น Microsoft Internet Explorer, Mozilla Firefox, Google Chrome และ Safari
ตัวอย่างซอฟต์แวร์ประยุกต์พื้นฐานดูได้จากภาพประกอบด้านล่างนี้ได้เลยครับ
ซอฟต์แวร์ประยุกต์เฉพาะงาน (specialized application) เป็นซอฟต์แวร์ที่พัฒนาขึ้นมาเพื่อใช้งานเฉพาะสาขาอาชีพใดอาชีพหนึ่ง ซอฟต์แวร์ประเภทนี้เป็นที่รู้จักกันมากที่สุด คือ ซอฟต์แวร์ทางด้านกราฟิก (graphic) เสียงและวิดีโอ (audio and video) มัลติมีเดีย (multimedia) การพัฒนาเว็บ (web authoring) และปัญญาประดิษฐ์ (Artificial Intelligence)

         และตอนต่อไปก็คงหนีไม่พ้น องค์ประกอบของระบบสารสนเทศอีก 3 อย่าง นั่นก็คือ ซอฟต์แวร์ ฮาร์ดแวร์ และข้อมูล ติดตามอ่านกันได้น่ะครับเพื่อนๆ

ลิขสิทธิ์ และใบอนุญาตซอฟต์แวร์
ลิขสิทธิ์ซอฟต์แวร์ คือลิขสิทธิ์ที่อนุญาตให้ใช้งานซอฟต์แวร์นั้นๆโดยชอบธรรมตามกฎหมาย โดยปกติแล้วซอฟต์แวร์ส่วนใหญ่ รวมถึงฟรีแวร์และโอเพนซอร์สนั้นมาพร้อมลิขสิทธิ์ซอฟต์แวร์ ซึ่งลิขสิทธิ์ซอฟต์แวร์นั้นไม่ได้หมายความว่าต้องเสียเงินเสมอไป แต่ใช้เพื่ออธิบายสิทธิของผู้ใช้ว่าได้รับการอนุญาตให้ทำอะไรบ้าง
          ลิขสิทธิ์ซอฟต์แวร์แบ่งออกได้เป็น 5 ประเภทตามลักษณะการคุ้มครอง ดังนี้
  • Ad ware คือ โปรแกรมที่ให้ใช้ฟรี แต่ก็มีการเก็บเงินบ้างเป็นบางครั้ง บวกกับการโฆษณาบนเว็บไซต์ Ad ware มีการคุ้มครองจากลิขสิทธิ์อย่างเต็มที เช่นกัน
  • Free ware คือ โปรแกรมที่ให้ใช้ฟรีโดยไม่มีการเสียค่าตอบแทนแต่อย่างได้ และสามารถนำโปรแกรมประเภทFree wareส่งต่อให้ผู้อื่นใช้ด้วยก็ได้ แต่ต้องไม่มีการนำโปรแกรมนั้นไปขายFree ware มีการคุ้มครองน้อยหรือมีการคุมครองเพียงครึ่งเดียวเท่านั้น
  • Open source คือ โปรแกรมที่ทำออกมาให้ใช้ฟรี และผู้ใช้ยังสามารถร่วมกันพัฒนาโปรแกรมประเภทOpen sourceได้อีกด้วยโดยการเขียนโปรแกรมเพิ่มหรือแก่ไขโปรแกรมนั้นๆ
ความหมายของโอเพ่นซอร์ส
โอเพ่นซอร์ส คือ ซอฟต์แวร์ที่สามารถนำไปใช้งาน ศึกษา แก้ไข และเผยแพร่ได้อย่างเสรี ปราศจากเงื่อนไขเพิ่มเติม (เช่นคิดค่า License หรือต้องเซ็นสัญญาพิเศษ) การพัฒนา ที่เปิดเผยซอร์สโค้ด (รหัสต้นฉบับ) ให้สาธารณะนำไปพัฒนาต่อยอดได้ ทำให้เกิดการร่วมมือกันทำงานอย่างไร้พรมแดนผ่านเครือข่ายอินเทอร์เน็ต (ข้อสังเกต คำว่าซอฟต์แวร์โอเพนซอร์ส และซอฟต์แวร์เสรี มีความหมายเดียวกัน และใช้แทนกันได้ หลักการทั้งหมดบังคับด้วยเงื่อนไขที่ชัดเจนของ License ที่เรียกว่า open-source license (เช่น GPL, BSD) การจะเป็นซอฟต์แวร์แบบโอเพนซอร์สหรือไม่ ดูได้อย่างชัดเจนจาก license ที่ใช้ว่าตรงตามเกณฑ์ข้างต้นหรือไม่ เงื่อนไขในการต้องเปิดให้ศึกษาและแก้ไขได้อย่างเสรี ทำให้ต้องเปิดโอกาสให้เข้าถึงซอร์สโค้ดไปกับการเผยแพร่เสมอ ผู้ที่ได้รับซอฟต์แวร์ตาม License นั้นไปจะได้รับสิทธิข้างต้นไปทั้งหมด เช่นสามารถนำไปลงกี่เครื่องก็ได้ หรือทำซ้ำกี่ชุดเพื่อการใช้งานหรือขายก็ได้ หรือปรับปรุงแล้วเผยแพร่ต่อไปก็ได้)
นิยามของโอเพ่นซอร์ส
โอเพนซอร์สมิได้หมายเพียงแค่การให้โอกาสเข้าถึงซอร์สโคดเท่านั้น ทว่าข้อสัญญาในการเผยแพร่ของโปรแกรมโอเพนซอร์สจะต้องเป็นไปตามบรรทัดฐานดังต่อไปนี้
1. เผยแพร่ได้อย่างเสรี
สัญญานั้นจะต้องไม่จำกัดบุคคลใดไม่ให้ขายหรือแจกซอฟต์แวร์ในฐานะเป็นองค์ประกอบหนึ่งในสื่อในการรวบรวมเผยแพร่ที่ประกอบด้วยโปรแกรมจากแหล่งต่าง ๆ สัญญานั้นต้องไม่คิดค่าธรรมเนียมหรือค่าอื่นใดในการจัดจำหน่ายดังกล่าว
2. ซอร์สโคด
โปรแกรมนั้นจะต้องประกอบด้วยซอร์สโคด และจะต้องอนุญาตให้เผยแพร่โปรแกรมต่อไปในรูปแบบซอร์สโคดด้วย นอกเหนือไปจากรูปแบบที่คอมไพล์แล้ว ในกรณีที่ผลิตภัณฑ์ในบางลักษณะไม่ได้เผยแพร่ไปพร้อมด้วยซอร์สโคด จะต้องมีวิถีทางที่เป็นที่รู้จักกันดีที่จะดาวน์โหลดซอร์สโคดนั้นได้โดยไม่คิดราคาผ่านทางอินเทอร์เน็ต ซอร์สโคดนั้นจะต้องเป็นรูปแบบที่สะดวกที่สุดสำหรับโปรแกรมเมอร์ที่จะดัดแปลงแก้ไขโปรแกรมนั้น ซอร์สโคดที่ถูกทำให้อ่านไม่รู้เรื่องอย่างตั้งใจถือว่าใช้ไม่ได้ ซอร์สในรูปแบบระหว่างการคอมไพล์เช่นที่ออกมาจาก Preprocessor หรือ translator ถือว่าใช้ไม่ได้
3. งานดัดแปลง
สัญญานั้นจะต้องอนุญาตให้ทำการแก้ไขหรือสร้างสรรค์งานดัดแปลงได้ และจะต้องอนุญาตให้เผยแพร่งานเหล่านั้นด้วยเงื่อนไขเดียวกันกับสัญญาของซอฟต์แวร์ต้นฉบับ
4. การคงความสมบูรณ์ในซอร์สโคดของผู้เขียน
สัญญานั้นจะจำกัดไม่ให้เผยแพร่ซอร์สโคดที่ถูกแก้ไขได้ก็ต่อเมื่อสัญญาอนุญาตให้เผยแพร่ Patch files ไปกับซอร์สโคด เพื่อใช้ในการแก้ไขโปรแกรมขณะคอมไพล์ สัญญาจะต้องระบุอย่างชัดเจนว่าอนุญาตให้เผยแพร่ซอฟต์แวร์ที่คอมไพล์มาจากซอร์สโคดที่ถูกแก้ไข สัญญาอาจจะตั้งเงื่อนไขให้งานดัดแปลงต้องใช้ชื่อหรือเลขเวอร์ชันที่ต่างออกไปจากซอฟต์แวร์ต้นฉบับ
5. ไม่เลือกปฏิบัติเพื่อกีดกันบุคคลหรือกลุ่มใด ๆ
สัญญานั้นจะต้องไม่จงใจแบ่งแยกเพื่อละเว้นการคุ้มครองสิทธิต่อบุคคลหรือกลุ่มบุคคลใด
6. ไม่เลือกปฏิบัติเพื่อกีดกันกิจการในสาขาใด ๆ
สัญญานั้นจะต้องไม่จำกัดผู้ใดไม่ให้ใช้งานโปรแกรมในกิจการหรือกิจกรรมจำเพาะสาขาใดสาขาหนึ่ง ตัวอย่างเช่น สัญญาต้องไม่ห้ามใช้โปรแกรมในทางธุรกิจหรือในทางการวิจัย
7. การเผยแพร่ของสัญญา
สิทธิที่พ่วงไปกับโปรแกรมจะต้องใช้กับทุกคนที่ได้รับโปรแกรมนั้น โดยไม่จำเป็นต้องอาศัยการดำเนินการสัญญาเพิ่มเติมจากบุคคลใด
8. สัญญาต้องไม่เจาะจงจำเพาะผลิตภัณฑ์อันใดอันหนึ่ง
สิทธิที่พ่วงไปกับโปรแกรมจะต้องไม่ขึ้นอยู่กับการที่โปรแกรมเป็นส่วนหนึ่งของการเผยแพร่ซอฟต์แวร์เป็นผลิตภัณฑ์ใดเป็นพิเศษ ถ้ามีการเลือกเฉพาะโปรแกรมนั้นออกมาและนำไปใช้หรือจำหน่ายจ่ายแจกโดยอาศัยเงื่อนไขตามสัญญาของโปรแกรมนั้น ทุกคนที่ได้รับโปรแกรมจะต้องได้รับสิทธิเดียวกันกับที่ได้มอบมาพร้อมกับการเผยแพร่ซอฟต์แวร์แต่เดิม
9. สัญญาจะต้องไม่ผูกพันไปถึงซอฟต์แวร์อื่นในสื่อเดียวกัน
สัญญานั้นจะต้องไม่ตั้งเงื่อนไขควบคุมซอฟต์แวร์อื่นที่เผยแพร่ไปพร้อมกับซอฟต์แวร์ที่ใช้สัญญานั้น ตัวอย่างเช่น สัญญาจะต้องไม่ยืนกรานที่จะให้โปรแกรมอื่นที่เผยแพร่ไปในสื่อเดียวกันต้องเป็นซอฟต์แวร์โอเพนซอร์สเหมือนกัน
นิยามของ Free Software
ซอฟต์แวร์เสรีเกิดจากแนวคิดของ ริชาร์ด เอ็ม. สตอลล์แมน โดยมีแนวคิดเริ่มต้นจากการแลกเปลี่ยนซอร์สโค้ดกันระหว่างเพื่อนร่วมงานภายในแล็บของเอ็มไอทีซึ่งสตอลล์แมนเคยทำงาน ต่อมาสตอลล์แมนจึงคิดกลไกการพัฒนาซอฟต์แวร์แนวคิดใหม่ขึ้นมา โดยเน้นที่ความมีเสรีภาพ และต้องการให้ซอฟต์แวร์นั้น ๆ มีเสรีภาพตลอดไป โดยต้องมีเสรีภาพดังนี้
- เสรีภาพในการรันโปรแกรม เพื่อวัตถุประสงค์ใใด ๆ ก็ตาม (freedom 0)
- เสรีภาพในการศึกษาการทำงานของโปรแกรม ดัดแปปลงแก้ไขโปรแกรมให้เหมาะกับความต้องการ (freedom 1) ซึ่งในข้อนี้จำเป็นต้องใช้ซอร์สโค้ด
- เสรีภาพในการเผยแผ่สำเนาของโปรแกรมต่อให้กัับผู้อื่น ซึ่งจะทำให้คุณช่วยเหลือเพื่อน ๆ ใกล้ ๆ ตัวคุณได้ (freedom 2)
- เสรีภาพในการปรับปรุงเพิ่มเติมความสามารถขอองโปรแกรม แล้วเผยแผ่ส่วนที่คุณปรับปรุงนั้นสู่สาธารณะ ซึ่งนั่นจะทำให้สังคมโดยรวมได้รับประโยชน์ถ้วนทั่วกัน (freedom 3) ในข้อนี้ก็ต้องการซอร์สโค้ดเช่นกัน
คำว่า Free ใน Free Software นั้น มีความหมายถึง “เสรีภาพ” หรือ “อิสระ” ไม่ใช่ “ราคา (ถ้าเป็นภาษาอังกฤษ เค้าก็ว่า free แบบในคำว่า freedom หรือ free speech — ไม่ใช่ free แบบในคำว่า free beer)
ดังนั้นเราจึงเรียก Free Software ว่า “ซอฟต์แวร์เสรี” อย่าสับสนระหว่าง Free Software กับ Freeware เพราะ free ใน Freeware นั้น หมายถึงแค่ “ราคา” แต่ไม่ได้พูดถึง “เสรีภาพ” ดูความหมายของ “ซอฟต์แวร์เสรี” (ภาษาอังกฤษ) ที่ The Free Software Definition ซอฟต์แวร์เสรีคือแนวคิดในแนวทางเดียวกับซอฟต์แวร์โอเพ่นซอร์ส
ข้อดี ข้อเสีย ของoss

ข้อดี

1.ประหยัดค่าใช้จ่ายและไม่ต้องกังวลเรื่องการละเมิดลิขสิทธิ์ซอฟต์แวร์ คือไม่ต้องเสียค่าใช้งานผลิตภัณฑ์และผู้ใช้มีสิทธิ์ใช้งาน แจกจ่าย แก้ไข หรือขายได้อย่างอิสระโดยไม่ต้องขออนุญาต
2.มีประโยชนด้านการพัฒนาต่อยอดโปรแกรม คือไม่ว่าจะเป็นใครก็สามารถปรับปรุงโปรแกรมได้เอง
3.เป็นอีกทางเลือกหนึ่งสำหรับหน่วยงานหรือองค์กรต่างๆ

ข้อเสีย

1.บุคลากรต้องเรียนรู้การใช้งานโปรแกรมใหม่ๆ
2.องค์กรหรือสถาบันอาจมีปัญหาในการนำโปรแกรมเข้ามาใช้ใหม่ เนื่องจากเอกสารและผู้เชี่ยวชาญยังมีน้อย

ไม่มีความคิดเห็น:

แสดงความคิดเห็น