วันพฤหัสบดีที่ 2 ธันวาคม พ.ศ. 2553

บบที่ 4

บทที่ 4 คอมพิวเตอร์ซอฟต์แวร์

เนื้อหา
ความหมายและหน้าที่ของซอฟต์แวร์
ประเภทของซอฟต์แวร์
โปรแกรมภาษา (Language Software)
ยุคของภาษาคอมพิวเตอร์

ความหมายของซอฟต์แวร์์

ซอฟต์แวร์ คือ ชุดคำสั่งที่สั่งงานคอมพิวเตอร์เป็นลำดับขั้นตอนของการทำงาน ชุดคำสั่งเหล่านี้ได้จัดเตรียมไว้ในหน่วยความจำของคอมพิวเตอร์ คอมพิวเตอร์อ่านชุดคำสั่งแล้วทำงานตาม ซอฟต์แวร์จึงเป็นสิ่งที่มนุษย์จัดทำขึ้น และคอมพิวเตอร์จะทำงานตามคุณลักษณะของซอฟต์แวร์ที่วางไว้แล้วเท่านั้น

ประเภทของซอฟต์แวร์

สามารถแบ่งได้ 2 ประเภทคือ ซอฟต์แวร์ระบบ (System Software) และซอฟต์แวร์ประยุกต์ (Application Software)

1. ซอฟต์แวร์ระบบ (System Software) เป็นโปรแกรมหรือชุดคำสั่งที่เขียนขึ้นเพื่อควบคุมการทำงานของเครื่องคอมพิวเตอร์ให้ประสานกัน และควบคุมลำดับขั้นตอนการทำงานของอุปกรณ์ต่าง ๆ ในระบบคอมพิวเตอร์ ซอฟต์แวร์ระบบที่นิยมแพร่หลาย ได้แก่ DOS, UNIX, WINDOWS, SUN, OS/2, NET WARE เป็นต้น

โปรแกรมระบบปฏิบัติการ (Operating Systems : OS) หรือ Supervisory Programs หรือ Monitors Programs เป็นโปรแกรมที่สำคัญที่สุดอีกประการหนึ่งและมีความสลับซับซ้อนมาก ช่วยให้คอมพิวเตอร์สามารถควบคุม (Control) การปฏิบัติงานของเครื่องได้เองโดยอัตโนมัติ และดูแลตรวจตราทุก ๆ การทำงานของฮาร์ดแวร์ในระบบคอมพิวเตอร์ นับตั้งแต่เปิดเครื่องจนกระทั่งปิดเครื่อง ทำหน้าที่เป็นตัวกลางเชื่อมระหว่างซอฟต์แวร์กับฮาร์ดแวร์

ประเภทของโปรแกรมระบบ (System Software)

1) โปรแกรมที่ทำงานทางด้านควบคุม (Control Programs) หมายถึง โปรแกรมที่ใช้ ควบคุมการทำงานของเครื่องคอมพิวเตอร์และอุปกรณ์ที่เกี่ยวข้องที่สำคัญ ได้แก่

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

- โปรแกรมควบคุมงานด้านอื่น ๆ (Other Job/Resource Control Programs) ได้แก่ โปรแกรมที่ควบคุมเกี่ยวกับลำดับงาน ความผิดพลาดที่ทำให้การหยุดชะงักของโปรแกรม (Interrupt) หรือพิมพ์ข้อความหรือข่าวสารให้แก่ผู้ควบคุมเครื่องทราบเมื่อมีข้อผิดพลาด หรือต้องการแจ้งให้ทราบถึงสถานภาพของอุปกรณ์รับส่ง เป็นต้น

2) ระบบปฏิบัติการของไมโครคอมพิวเตอร์ (Microcomputer Operating System) จะมี ลักษณะเฉพาะโดยขึ้นอยู่กับระบบปฏิบัติการและฮาร์ดแวร์ โปรแกรมสำเร็จรูปไม่สามารถใช้ข้ามระบบปฏิบัติการได้ เช่น โปรแกรมสำเร็จรูปที่ใช้บนระบบปฏิบัติการ MS - DOS จะไม่สามารถนำไปใช้บน Windows ได้ ระบบปฏิบัติการที่ใช้กับเครื่องคอมพิวเตอร์ ได้แก่

2.1 MS - DOS (Microsoft Disk Operating System) เป็นโปรแกรมควบคุม ระบบปฏิบัติการ พัฒนาในช่วงปีค.ศ. 1980 จากบริษัท Microsoft พัฒนาขึ้นมาเพื่อใช้กับงานเครื่องคอมพิวเตอร์ที่ใช้ Microprocessor รุ่น 8086, 8088, 80286, 80386, 80486 สำหรับผลิตภัณฑ์เครื่องคอมพิวเตอร์ IBM Compatible ทั่วไป มี 2 เวอร์ชัน (Version) ได้แก่ PC-DOS และ MS-DOS ดอสเป็นระบบปฏิบัติการที่มีส่วนประสานกับผู้ใช้ (User Interface) เป็นแบบป้อนคำสั่ง (Command - line User Interface) MS - DOS นั้นจะมีส่วนประกอบโปรแกรม 3 ส่วน คือ IO.SYS MS - DOS.SYS และ COMMAND.COM ทั้ง 3 โปรแกรมจะทำหน้าที่ในการจัดการทำงานทุกอย่างในระบบ สำหรับ MS - DOS.SYS และ IO.SYS นั้นเป็นไฟล์ระบบและถูกซ่อนไว้ในขณะที่เราสั่งงาน

IO.SYS เป็นส่วนที่ทำหน้าที่ควบคุมการทำงานของอุปกรณ์ป้อนเข้า (Input Device) และอุปกรณ์แสดงผล (Output Device) เช่น แป้นพิมพ์ จอภาพ และเครื่องพิมพ์ เป็นต้น

MS - DOS.SYS เป็นส่วนที่ใช้ในการเข้าถึง (Access) โปรแกรมย่อย (Routine) ต่าง ๆ ของดอส เมื่อโปรแกรมมีการเรียกใช้รูทีนเหล่านั้น ตัว MS - DOS.SYS จะรับข้อมูลต่าง ๆ จากโปรแกรมต่าง ๆ ผ่านจากรีจิสเตอร์ทำการควบคุมการทำงาน (Control Block) และจัดพารามิเตอร์ในการเรียกใช้ IO.SYS ให้ทำงานตามที่ต้องการ

COMMAND.COM ทำหน้าที่เป็นตัวประสาน คอยรับคำสั่งจากผู้ใช้ผ่านทางแป้นพิมพ์ เพื่อส่งผ่านคำสั่งไปยังคอมพิวเตอร์ เปรียบเสมือนตัวเชื่อมผู้ใช้กับโปรแกรมจัดระบบ

คำสั่งในระบบ MS - DOS จะแบ่งเป็น 2 ประเภท คือ

- คำสั่งภายใน (Internal Command) เป็นคำสั่งที่มีอยู่แล้วภายในระบบ เช่น คำสั่ง DIR (Directory) เป็นการเรียกข้อมูลจากหน่วยเก็บข้อมูลสำรอง ขึ้นมาดูเพื่อค้นหาแฟ้มข้อมูล คำสั่ง COPY เป็นการสำรองข้อมูลไว้ REN (Rename) เป็นการเปลี่ยนชื่อแฟ้มข้อมูลโดยที่ข้อมูลภายในยังคงเหมือนเดิม คำสั่ง TYPE เป็นการเรียกดูรายละเอียดของข้อมูลแต่ละแฟ้มขึ้นมาดู แต่แฟ้มนั้นจะต้องอยู่ในรูปของข้อความ (Text File) และคำสั่ง CLS (Clear) เป็นคำสั่งลบข้อความบนจอภาพ โดยที่ข้อมูลที่อยู่ภายในแฟ้มจะไม่หาย เป็นต้น

- คำสั่งภายนอก (External Command) คำสั่งประเภทนี้ต้องเรียกใช้จากแผ่นโปรแกรมหรือจากหน่วยความจำสำรองที่ได้สร้างเก็บคำสั่งต่าง ๆ เหล่านี้ไว้หากไม่มีก็จะไม่สามารถเรียกคำสั่งขึ้นมาใช้ได้ เช่น คำสั่ง CHKDSK (Check Disk) เป็นคำสั่งที่ใช้ในการตรวจสอบหน่วยเก็บข้อมูลสำรองว่ามีพื้นที่ในการเก็บเท่าใด ใช้ไปเท่าใด คงเหลือเท่าใด และมีส่วนหนึ่งส่วนใดของหน่วยเก็บข้อมูลสำรองเสียหรือไม่

- คำสั่ง FORMAT เป็นการจัดเตรียมโครงสร้างภายในแผ่นหรือจานแผ่นเหล็ก เป็นการวิเคราะห์แผ่นจานแม่เหล็กสำหรับตำแหน่ง (Track) ที่เสีย

2.2 Windows 3.X ประมาณต้นปี ค.ศ. 1990 บริษัทไมโครซอฟต์ได้ผลิต Windows 3.0 ซึ่งนำมาใช้การทำงานระบบกราฟิกเพื่อให้ผู้ใช้ใช้งานง่ายและสะดวกเรียกว่า GUI (Graphic User Interface) โดยใช้ภาพเล็ก ๆ เรียกว่า ไอคอน (Icon) และใช้เมาส์ (Mouse) แทนคีย์บอร์ด (Key Board) นอกจากนี้ Windows 3.0 ขึ้นไป ยังสามารถทำให้เครื่องคอมพิวเตอร์ใช้งานโปรแกรมได้มากกว่าหนึ่งโปรแกรมในขณะเดียวกันเรียกว่า Multitasking ได้พัฒนาระบบปฏิบัติการ Windows ขึ้นมามี 3 เวอร์ชัน (Version) ได้แก่ Windows 3.0, Windows 3.1 และ Windows 3.11

2.3 Windows 95 ต่อมาในปี ค.ศ. 1995 บริษัทไมโครซอฟต์ได้ผลิต Windows 95 ซึ่งเป็นระบบปฏิบัติการที่ทำงานแบบหลายงาน (Multitasking) การทำงานในลักษณะเครือข่าย (Network) Windows 95 มีคุณลักษณะเด่น ดังนี้

- มีระบบติดต่อกับผู้ใช้โดยแสดงเป็นกราฟิก (Graphical User Interface :GUI)

- มีความสามารถในการเปิดเอกสารได้ครั้งละหลายไฟล์ และสามารถใช้โปรแกรมหลาย โปรแกรมในเวลาเดียวกัน

- มีโปรแกรมเวิร์ดโปรเซสซิ่ง เรียกว่า Word Pad โปรแกรมวาดรูป และเกม

- เริ่มมีเทคโนโลยี Plug and Play และสนับสนุนการติดต่อสื่อสารผ่านเครือข่าย อินเทอร์เน็ต โดยติดตั้ง Windows 95 ไม่จำเป็นต้องติดตั้งที่ MS-DOS ก่อน แต่สามารถใช้งานร่วมกับ MS-DOS ได้

- สามารถใช้แอปพลิเคชันที่รันบน Windows 3.1 ได้เลยโดยไม่ต้องแก้ไข และซอฟต์แวร์ที่รันบน Windows 95 มีความสามารถส่ง Fax และ E - mail ได้

2.4 Windows 98 เป็นการเพิ่มประสิทธิภาพของ Windows 95 ระบบปฏิบัติการ Windows 98 เป็นระบบที่สนับสนุนการทำงานของโปรแกรมต่าง ๆ บน Windows โดยเชื่อมต่อกับระบบอินเทอร์เน็ตอย่างมีประสิทธิภาพ

2.5 Windows Millennium Edition หรือเรียกสั้น ๆ ว่า "Windows ME" ใน เวอร์ชันนี้พัฒนามาจาก Windows 98 เพื่อแก้ไขข้อผิดพลาดที่เกิดขึ้นจากเวอร์ชันเก่า มีการสนับสนุนการทำงานแบบมัลติมีเดียมากขึ้น

2.6 Windows NT เป็นระบบปฏิบัติการในส่วนของเครือข่าย (Network) คล้าย กับ Windows 95 พัฒนามาจาก LAN Manager และ Windows for Workgroup โดย Windows NT มี 2 เวอร์ชัน ได้แก่ Windows NT Server และ Windows NT Workstation โดยที่ Server จะทำหน้าที่ระบบปฏิบัติการเครือข่ายที่คอยให้บริการแก่เครื่องที่เป็น Workstation คุณสมบัติของระบบปฏิบัติการ Windows NT ได้แก่ ทำงานได้ในลักษณะหลายงานพร้อมกัน สามารถใช้กับเครื่องคอมพิวเตอร์ที่มีตัวประมวลผล (CPU) มากกว่า 2 โปรเซสเซอร์ สามารถสร้างระบบแฟ้มของตนเองเป็นแบบ NTFS ซึ่งแต่เดิมจะเป็นแบบ FAT (File Allocation Table) เพียงอย่างเดียว มีระบบป้องกันความปลอดภัยของข้อมูลโดยสร้างรหัสผ่านให้กับผู้ใช้แต่ละคน และ สามารถกำหนดวันเวลาในการใช้งาน เป็นต้น

2.7 Windows 2000 Professional / Standard เป็นระบบปฏิบัติการที่ได้รับการ พัฒนาให้อำนวยความสะดวกให้กับผู้ใช้ที่ใช้งานลักษณะเป็นกราฟิก เช่น มีโปรแกรม Windows Installation Service ที่ช่วยให้ผู้ใช้สามารถทำการติดตั้งหรืออัพเกรด (Upgrade) โปรแกรมได้ง่ายและมีการจัดการระบบตลอดจนมีการบริหารแม่ขายแบบรวมศูนย์ เหมาะสำหรับใช้ในงานสำนักงานมากกว่าที่จะใช้ที่บ้าน จุดเด่นของ Windows 2000 คือ การต่อเชื่อมระบบเครือข่ายและระบบรักษาความปลอดภัยที่มีประสิทธิภาพสูงและสนับสนุน Multi Language

2.8 Windows XP เป็นระบบปฏิบัติการที่มีความสมบูรณ์แบบทั้งในด้านการ ทำงานร่วมกับ Internet Explorer 6 และ Microsoft Web Browser Windows XP มี 2 รูปแบบด้วยกัน คือ Windows XP Home Edition และ Windows XP Professional Edition

2.9 Mac OS X ระบบปฏิบัติการ Macintosh Operating System เป็นระบบ ปฏิบัติการของเครื่องแมคอินทอช เป็นผลิตภัณฑ์แรกที่ประสบความสำเร็จเกี่ยวกับการทำงานแบบ GUI ในปี ค.ศ. 1984 ของบริษัท Apple ต่อมาได้มีการเปลี่ยนชื่อเป็นระบบปฏิบัติการ Mac OS โดยเวอร์ชันล่าสุดมีชื่อเรียกว่า Mac OS X เหมาะสมกับคอมพิวเตอร์ที่ผลิตโดยบริษัท Apple และมีความสามารถในการทำงานหลายโปรแกรมพร้อมกัน (Multitasking) เหมาะกับงานในด้านเดสก์ทอปพับลิชชิ่ง (Desktop Publishing)

2.10 OS/2 Warp Client พัฒนาขึ้นมาโดยบริษัท IBM ได้นำเครื่องคอมพิวเตอร์ PS/2 ข้าสู่ตลาดก็ได้ติดต่อบริษัทไมโครซอฟต์ พัฒนาระบบปฏิบัติการตัวใหม่เป็น ระบบปฏิบัติการสำหรับเครื่องลูกข่าย สามารถทำงานแบบการทำงานหลายงาน (Multitasking) ได้ มีลักษณะการทำงานแบบดอสมากกว่า Windows สนับสนุนการทำงานแบบเครือข่าย มีขีดความสามารถติดต่อกับผู้ใช้แบบกราฟิกแต่ OS/2 ที่ผลิตออกมาในขณะนั้นไม่เป็นที่นิยม เพราะต้องใช้หน่วยความจำขนาดใหญ่ และโปรแกรมที่พัฒนาขึ้นเพื่อใช้กับ OS/2 ก็มีน้อย

2.11 UNIX เป็นระบบปฏิบัติการที่ใหญ่ สามารถใช้งานในลักษณะการทำงาน หลาย ๆ โปรแกรมพร้อมกัน (Multitasking) และเป็นแบบมัลติยูสเซอร์ (Multi-User) คือ มีผู้ใช้หลาย ๆ คนพร้อมกัน เป็นระบบที่พัฒนามาใช้กับเครื่องคอมพิวเตอร์ขนาดใหญ่ เช่น เครื่องเมนเฟรม มินิคอมพิวเตอร์และเวิร์กสเตชั่น (Workstation) เครื่องไมโครคอมพิวเตอร์ธรรมดา ๆ ที่ติดตั้งระบบปฏิบัติการ UNIX สามารถทำงานรองรับเครื่องคอมพิวเตอร์ที่มี User ต่อเชื่อมเข้ามาได้มากถึง 120 ตัว ไปพร้อม ๆ กันและเหมาะสมสำหรับระบบเน็ตเวิร์ก (Network) นอกจากนั้นยังสามารถเคลื่อนย้ายงานและแอพพลิเคชั่นไปมาระหว่างแพลทฟอร์มได้ และสามารถย้ายงานที่รันอยู่บน DOS หรือ Windows มาใช้บนระบบปฏิบัติการ UNIX ได้ นอกจากนี้ยังมียูทิลิตี้ที่ช่วยเพิ่มประสิทธิภาพให้กับ UNIX อีกด้วย

2.12 LINUX เป็นระบบปฏิบัติการที่มีลักษณะคล้ายกับ UNIX พัฒนาขึ้นมาเพื่อ แจกจ่ายให้ใช้โดยไม่เสียค่าใช้จ่ายบนเครือข่ายอินเทอร์เน็ต และพัฒนาขึ้นเพื่อใช้กับเครื่องคอมพิวเตอร์ PC ระบบปฏิบัติการลินุกซ์ทะเล (Linux TLE) เกิดขึ้น เนื่องจากระบบปฏิบัติการลินุกซ์หลายค่ายจากต่างประเทศยังใช้งานภาษาไทยได้ไม่ดีเท่าที่ควร และการติดตั้งภาษาไทยก็ยุ่งยากพอสมควร จึงเป็นอุปสรรคสำคัญในการนำลินุกซ์มาใช้งาน จากปัญหาเกี่ยวกับลิขสิทธิ์ซอฟต์แวร์ซึ่งมีราคาสูง ทำให้ศูนย์เทคโนโลยีอิเล็กทรอนิกส์และคอมพิวเตอร์แห่งชาติ ได้ตั้งทีมออกแบบพัฒนาให้ใช้งานภาษาไทยและสามารถนำมาใช้งานแทน Windows ได้ ให้ชื่อว่า Linux TLE (Thai Language Extension) หรือ ลินุกซ์ทะเล และเป็นการพัฒนาโดยคนไทยซึ่งต้องการพัฒนาซอฟต์แวร์กลางที่มีภาษาไทยเสริม ภายใต้มาตรฐานสากล TLE จึงเป็นตัวแทนของจุดประสงค์ของการพัฒนา และแสดงเอกลักษณ์ของความเป็นไทย ให้สอดคล้องกับที่มาและสามารถเข้าใจได้ในเวทีสากล ลินุกซ์ทะเลได้พัฒนาระบบภาษาไทยให้ใช้งานได้ดีถึง 100% มีระบบการตัดคำที่อ้างอิงจากดิกชันนารี เพิ่มฟอนต์ภาษาไทยประเภทบิตแมปอีก 20 ฟอนต์ รวมทั้งฟอนต์แบบ True - Type สนับสนุนมาตรฐาน TIS620 เป็นฟอนต์ไทยซึ่งทาง NECTEC ได้จดลิขสิทธิ์เป็นที่เรียบร้อยแล้ว

2.13 Solaris Solaris เป็นเวอร์ชันหนึ่งของ UNIX พัฒนาโดยบริษัท Sun Microsystems เป็นระบบปฏิบัติการเครือข่ายที่ออกแบบสำหรับงานด้านโปรแกรม E - commerce

3) ระบบปฏิบัติการสามารถแบ่งออกตามลักษณะการทำงานได้ดังนี้

3.1 ระบบปฏิบัติการสำหรับเครื่องคอมพิวเตอร์แบบ Stand - alone เป็นระบบปฏิบัติการสำหรับเครื่องคอมพิวเตอร์ส่วนบุคคลหรือโน๊ตบุ๊ค ที่ทำงานโดยไม่มี การเชื่อมต่อกับเครื่องคอมพิวเตอร์เครื่องอื่น หรือหากมีการเชื่อมต่อเป็นระบบเครือข่าย เช่น LAN หรือ Internet ก็จะเรียกระบบปฏิบัติการนี้ว่า "Client Operating System" ได้แก่ MS - DOS, MS - Windows ME, Windows server 2000, Windows XP, Windows NT, Windows server 2003, UNIX, LINUX, Mac OS, OS/2 Warp Client

3.2 ระบบปฏิบัติการแบบฝัง (Embedded Operating System) เป็นระบบปฏิบัติการที่มาพร้อมกับคอมพิวเตอร์ จัดเก็บไว้บนชิพ ROM ของเครื่องมี คุณสมบัติพิเศษ คือ ใช้หน่วยความจำน้อยและสามารถป้อนข้อมูลโดยใช้ สไตล์ลัส (Stylus) ซึ่งเป็นแท่งพลาสติกใช้เขียนตัวอักษรลงบนจอภาพได้ ตัวระบบปฏิบัติการจะมีคุณสมบัติวิเคราะห์ลายมือเขียน (Hand Writing Recognition) และทำการแปลงเป็นตัวอักษรเข้าสู่ระบบได้อย่างถูกต้องพบได้ในคอมพิวเตอร์แบบ Hand Held เช่น Palm Top, Pocket PC เป็นต้น ระบบปฏิบัติการชนิดนี้ได้รับความนิยม คือ Windows CE, Pocket PC 2002 และ Palm OS เป็นต้น

3.3 ระบบปฏิบัติการเครือข่าย (Network Operating System : NOS) เป็นระบบปฏิบัติการที่ออกแบบเพื่อจัดการงานด้านการสื่อสารระหว่างคอมพิวเตอร์ให้ สามารถใช้ทรัพยากรร่วมกันได้ เช่น เครื่องพิมพ์ ฮาร์ดดิสก์ เป็นต้น ระบบปฏิบัติการเครือข่ายจะมีลักษณะการทำงานคล้ายกับระบบปฏิบัติการดอส จะแตกต่างในส่วนของการเพิ่มการจัดการเกี่ยวกับเครือข่ายและการใช้อุปกรณ์ร่วมกัน รวมทั้งมีระบบป้องกันการสูญหายของข้อมูล ปัจจุบันระบบปฏิบัติการเครือข่ายจะใช้หลักการประมวลผลแบบไคลแอนด์เซิร์ฟเวอร์ (Client / Server) คือ การจัดการเรียกใช้ข้อมูลและโปรแกรมจะทำงานอยู่บนเครื่องเซิร์ฟเวอร์ ในขณะที่ส่วนประกอบอื่น ๆ ของระบบปฏิบัติการเครือข่ายจะทำงานอยู่บนเครื่องไคลแอนด์ เช่น การประมวลผล และการติดต่อกับผู้ใช้

3.4 ระบบปฏิบัติการบนเครื่องคอมพิวเตอร์ขนาดใหญ่ ใช้กับเครื่องคอมพิวเตอร์ขนาดใหญ่ระดับเมนเฟรมคอมพิวเตอร์ โดยนำมาใช้ในด้านธุรกิจและการศึกษา ซึ่งจะมีผู้ใช้งานพร้อมกันจำนวนมาก โดยต้องทำการดูแลสั่งงานโปรแกรมพร้อม กันจำนวนหลาย ๆ โปรแกรม (Multitasking) การเข้าใช้งานเครื่องของผู้ใช้จำนวนหลาย ๆ คน (Multi - User) การจัดลำดับและแบ่งปันทรัพยากรให้กับผู้ใช้ ตลอดจนการรักษาความเป็นส่วนตัวและความลับของผู้ใช้แต่ละคน

3.5 ระบบปฏิบัติการแบบเปิด (Open Operating System) สามารถนำไปใช้งานบนเครื่องต่าง ๆ กันได้ เช่น ระบบปฏิบัติการยูนิกซ์ (UNIX) เป็นต้น

การเลือกใช้ระบบปฏิบัติการกับเครื่องไมโครคอมพิวเตอร์ (Selecting a Microcomputer Operating System) เช่น งานพิมพ์เอกสาร งานคำนวณ งานออกแบบ หรืองานทางด้านบัญชี และมีจำนวนผู้ใช้กี่คน จำเป็นต้องใช้ข้อมูลและโปรแกรมต่าง ๆ ร่วมกันหรือไม่ ผู้ใช้แต่ละคนอยู่ที่เดียวกันหรืออยู่คนละแห่ง ประสิทธิภาพของเครื่องคอมพิวเตอร์ โดยเฉพาะตัวประมวลผล ขนาดความจุของหน่วยความจำ โปรแกรมประยุกต์ที่มีใช้อยู่เดิมใช้กับระบบปฏิบัติการชนิดไหน ต้นทุนในการจัดหาระบบปฏิบัติว่ามีมากน้อยเท่าไร และความสามารถในการให้บริการหลังการขายของผู้จัดจำหน่าย ซึ่งแต่ละปัจจัยก็มีผลต่อการตัดสินใจจัดหาระบบปฏิบัติการเพื่อให้เหมาะสมกับองค์การ และงบประมาณที่มี

2 ซอฟต์แวร์ประยุกต์ (Application Software) เป็นโปรแกรมหรือชุดคำสั่ง ที่เขียนขึ้นเพื่อให้เครื่องคอมพิวเตอร์ทำงานเฉพาะอย่าง หรือเฉพาะด้าน

ประเภทของซอฟต์แวร์ประยุกต์ (Application Software) มี 2 ประเภท คือ

2.1 ซอฟต์แวร์สำหรับงานทั่วไปหรือซอฟต์แวร์สำเร็จรูป

- ซอฟต์แวร์เกี่ยวกับระบบจัดการ

- ซอฟต์แวร์ประมวลผลคำ

- ซอฟต์แวร์กระดานคำนวณ

- ซอฟต์แวร์จัดการข้อมูลด้านงานธุรกิจ

- ซอฟต์แวร์นำเสนอ (Presentation Software)

- ซอฟต์แวร์เพื่อการติดต่อสื่อสารและเข้าถึงข้อมูล

2.2 ซอฟต์แวร์สำหรับงานเฉพาะด้าน

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

โปรแกรมภาษา (Language Software)

โปรแกรมหรือซอฟต์แวร์ที่จะสั่งให้เครื่องคอมพิวเตอร์ทำงานนั้นถูกเขียนขึ้นด้วยภาษาที่เรียกว่า "ภาษาคอมพิวเตอร์" ผู้เขียนโปรแกรม (Programmer) จะต้องเข้าใจถึงกฎเกณฑ์ไวยากรณ์ของคำสั่ง และวิธีการเขียนโปรแกรมของ ภาษาคอมพิวเตอร์ที่เลือกใช้เขียนโปรแกรม ปัจจุบันภาษาคอมพิวเตอร์ที่ใช้สำหรับเขียนโปรแกรมมีอยู่มากมายหลายภาษา เช่น Basic, C, C++, Java เป็นต้น

โปรแกรมภาษาสามารถแบ่งออกได้ 3 แบบ คือ

1) ภาษาเครื่อง (Machine Language) เป็นภาษาของเครื่องคอมพิวเตอร์โดยมีโครงสร้างและพื้นฐานเป็นเลขฐาน 2 และตัวสตริง (Strings) ซึ่งเครื่องสามารถเข้าใจและพร้อมที่จะทำงานตามคำสั่งได้ในทันที ไม่จำเป็นต้องมีโปรแกรมแปลภาษา คำสั่งของภาษาเครื่องนั้นจะประกอบด้วยส่วนสำคัญ 2 ส่วน คือ

1.1 ส่วนที่บอกประเภทของคำสั่ง (Operation Code หรือ Op-Code) เป็นส่วนที่ จะบอกให้เครื่องประมวลผล เช่น ให้ทำการบวก ลบ คูณ หาร หรือเปรียบเทียบ เป็นต้น

1.2 ส่วนที่บอกตำแหน่งของข้อมูล (Operand) เป็นส่วนที่บอกให้ทราบถึง ตำแหน่งหน่วยของข้อมูลที่จะนำมาคำนวณว่าอยู่ในตำแหน่ง (Address) ใดของหน่วยความจำ

2) ภาษาที่ใช้สัญลักษณ์ (Symbolic Language) ได้ปรับปรุงให้ง่ายขึ้นโดยสร้างรหัส (Mnemonic Code) และสัญลักษณ์ (Symbol) แทนตัวเลขซึ่งเรียกชื่อภาษาว่า ภาษาที่ใช้สัญลักษณ์ ลักษณะโครงสร้างของภาษาสัญลักษณ์จะใกล้เคียงกับภาษาเครื่องมากคือ ประกอบด้วย 2 ส่วนที่เรียกว่า Op - Code และ Operands โดยใช้อักษรที่มีความหมายและเข้าใจง่ายแทนตัวเลข

3) ภาษาระดับสูง (High - Level Language) เนื่องจากภาษาที่ใช้สัญลักษณ์ยังคงยากต่อการเข้าใจของมนุษย์ ประกอบกับความเจริญทางด้านซอฟต์แวร์มีมากขึ้น จึงได้มีการพัฒนาให้เป็นคำสั่งที่มีความหมายเหมือนกับภาษาที่มนุษย์ใช้กัน เพื่อให้สะดวกกับผู้เขียนโปรแกรม เช่น ใช้คำว่า PRINT หรือ WRITE แทนการสั่งพิมพ์ หรือแสดงคำว่าใช้คำว่า READ แทนการรับค่าข้อมูลเข้าสู่เครื่องคอมพิวเตอร์ เป็นต้น ภาษาระดับสูง ตัวอย่างเช่น Visual Basic, C, C++, Java เป็นต้น

- คอมไพเลอร์ (Compiler) เป็นโปรแกรมภาษาซึ่งทำหน้าที่แปลคำสั่งในโปรแกรมต้นฉบับที่เขียนด้วยภาษาโปรแกรมระดับสูง ตามลำดับของชุดคำสั่ง และข้อมูลที่คอมพิวเตอร์สามารถปฏิบัติการได้

- อินเทอร์พรีเตอร์ (Interpreter) เป็นโปรแกรมภาษาซึ่งทำหน้าที่แปลคำสั่งในโปรแกรมต้นฉบับที่เขียนด้วยภาษาโปรแกรมระดับสูง และปฏิบัติการตามคำสั่งโดยตรงจากโปรแกรมต้นฉบับทันที จะแปลคำสั่งครั้งละหนึ่งคำสั่ง แล้วประมวลผลในทันที หลังจากนั้น จะรับคำสั่งถัดไปเพื่อแปลเป็นภาษาเครื่อง แล้วประมวลผลทันที เช่นนี้เรื่อยไปจนกว่าจะจบโปรแกรม หรือพบที่ผิดพลาดทางไวยากรณ์ในคำสั่งที่รับมาแปล

ยุคของภาษาคอมพิวเตอร์

ยุคที่ 1 (First Generation Language : 1GL) เป็นภาษาระดับต่ำ (Low - Level Language) ประกอบด้วยเลขฐานสอง ได้แก่ 0 และ 1 หรือเรียกว่า "ภาษาเครื่อง (Machine Language)"

ยุคที่ 2 (Second Generation Language : 2GL) ได้มีผู้พัฒนาให้มีการใช้สัญลักษณ์แทนตัวเลขฐานสอง เรียกว่า "ภาษาสัญลักษณ์ (Symbol Language)" คือ ภาษาอังกฤษ จะเป็นคำสั่งสั้น ๆ ที่จำได้ง่าย เรียกว่า "นิวมอนิกโค้ด (Nemonic Code)" ทำให้นักเขียนโปรแกรมสามารถเขียนโปรแกรมได้ง่ายขึ้น ตัวอย่างภาษาสัญลักษณ์ ได้แก่ ภาษา Assembly และเนื่องจากเป็นภาษาสัญลักษณ์ จึงต้องใช้ตัวแปลภาษา เพื่อทำให้เป็นภาษาเครื่องก่อน ด้วยตัวแปลภาษาที่เรียกว่า "Assembler"

ยุคที่ 3 (Third Generation Language : 3GL) ภาษาสัญลักษณ์ได้มีการพัฒนาเพิ่มมากขึ้น ทำให้สามารถแทนตัวเลขฐานสองได้เป็นคำ ทำให้กลายเป็นภาษาที่มีไวยากรณ์ที่เข้าใจและเขียนได้ง่ายขึ้น คำสั่งสั้นและกระชับมากขึ้น เช่น ภาษา BASIC, COBOL, Pascal

ยุคที่ 4 (Fourth Generation Language : 4GL) ได้มีการพัฒนารูปแบบการเขียนโปรแกรมจากยุคที่ 3 ที่จัดว่าเป็นการเขียนแบบ Procedural ให้กลายเป็นการเขียนแบบ Non - Procedural ที่สามารถกระโดดไปทำคำสั่งใดก่อนก็ได้ตามที่โปรแกรมเขียนไว้ นอกจากนี้ จุดเด่นของภาษาในยุคนี้เริ่มจากการเขียนคำสั่งให้ผู้ใช้สามารถจัดการกับข้อมูลในฐานข้อมูลได้ และพัฒนาต่อมากลายเป็นการเขียนคำสั่งให้ได้โปรแกรมที่มีส่วนติดต่อกับผู้ใช้แบบกราฟิกมากขึ้น และพัฒนาจนมาถึงการเขียนโปรแกรมเชิงวัตถุ (Object - Oriented Programming) เช่น ภาษา C++, Visual C++, Delphi, Visual Basic เป็นต้น ปัจจุบันมีภาษาที่ใช้หลักการของโปรแกรมเชิงวัตถุที่นิยมใช้ เช่น ภาษา Java

ยุคที่ 5 (Fifth Generation Language : 5GL) เป็นภาษาที่ใช้สำหรับพัฒนาซอฟต์แวร์เพื่อระบบผู้เชี่ยวชาญ (Expert System : ES) และปัญญาประดิษฐ์ (Artificial Intelligence : AI) ภาษาในยุคที่ 5 เรียกว่า "ภาษาธรรมชาติ (Natural Language)" คือ ไม่ต้องสนใจถึงคำสั่งหรือลำดับของข้อมูลที่ถูกต้อง ผู้ใช้เพียงแต่พิมพ์สิ่งที่ต้องการลงในเครื่องคอมพิวเตอร์เป็นคำหรือประโยคตามที่ผู้ใช้เข้าใจ คอมพิวเตอร์จะพยายามแปลคำหรือประโยคเหล่านั้นเพื่อทำตามคำสั่ง แต่ถ้าไม่สามารถแปลให้เข้าใจได้ ก็จะมีคำถามกลับมาถามผู้ใช้เพื่อยืนยันความถูกต้อง

โปรแกรมยูทิลิตี้ (Utility Software) เป็นโปรแกรมที่ให้บริการต่าง ๆ เช่น การจัดเรียงข้อมูลตามหลักใดหลักหนึ่ง (Sort) รวมแฟ้มข้อมูลที่เรียงลำดับแล้วเข้าด้วยกัน (Merge) หรือย้ายข้อมูลจากอุปกรณ์รับส่งอย่างหนึ่งไปยังอีกอุปกรณ์หนึ่ง ประกอบด้วยโปรแกรมต่าง ๆ ได้แก่ Editor, Debugging, Copy


ที่มาของข้อมูล
http://web.ku.ac.th/schoolnet/snet1/software/software/index.html
http://www.tanti.ac.th/Com-tranning/IT/technof6.htm
http://www.nectec.or.th/courseware/computer/comp-using/0108.html
http://www.thaiwbi.com/course/Intro_com/Intro_com/wbi1/hie/page42.htm
http://www.thaigoodview.com/roomnet/roomnet46/IT46_5/index.html-map.htm
http://dusithost.dusit.ac.th/~librarian/it107/C4.htm
http://www.thaisakon.com/wbi/technof6.htm