ซอฟต์แวร์ (Software)
1.ความหมายของซอฟแวร์
ซอฟต์แวร์ คือ
การลำดับขั้นตอนการทำงานของคำสั่งที่จะทำหน้าที่สั่งคอมพิวเตอร์ว่าให้ทำอะไร
เป็นชุดของโปรแกรมหลายๆโปรแกรมนำมารวมกันให้สามารถทำงานได้อย่างครบถ้วนสมบูรณ์ตามที่ต้องการ
เรามองไม่เห็นหรือสัมผัสไม่ได้แต่เราสามารถสร้าง จัดเก็บ และนำมาใช้งานหรือเผยแพร่ได้ด้วยสื่อหลายชนิดเช่น
แผ่นบันทึก แผ่นซีดี แฟล็ชไดร์ฟ ฮาร์ดดิสก์ เป็นต้น
หน้าที่ของซอฟต์แวร์
ซอฟต์แวร์ทำหน้าที่เป็นตัวเชื่อมระหว่างผู้ใช้คอมพิวเตอร์และเครื่องคอมพิวเตอร์
ถ้าไม่มีซอฟต์แวร์ เราก็ไม่สามารถใช้เครื่องคอมพิวเตอร์ทำอะไรได้เลย
ซอฟต์แวร์สำหรับเครื่องคอมพิวเตอร์สามารถแบ่งออกได้เป็นหลายประเภท
2. ประเภทของซอฟแวร์
ซอฟต์แวร์แบ่งเป็น 3 ประเภทใหญ่ๆ คือ
ซอฟต์แวร์ระบบ (System Software)
ซอฟต์แวร์ประยุกต์ (Application Software)
ซอฟต์แวร์ใช้งานเฉพาะ
ซอฟท์แวร์ระบบ (System Software)
ซอฟท์แวร์ระบบเป็นโปรแกรมที่บริษัทผู้ผลิตสร้างขึ้นมาเพื่อใช้จัดการกับระบบ
หน้าที่การทำงานของซอฟต์แวร์ระบบ คือ ดำเนินงานพื้นฐานต่าง ๆ ของระบบคอมพิวเตอร์
เช่น รับข้อมูลจากแผงแป้นอักขระแล้วแปลความหมายให้คอมพิวเตอร์เข้าใจ
นำข้อมูลไปแสดงผลบนจอภาพหรือนำออกไปยังเครื่องพิมพ์
จัดการข้อมูลในระบบแฟ้มข้อมูลบนหน่วยความจำรอง
ซอฟท์แวร์ระบบ (System Software)
System Software หรือโปรแกรมระบบที่รู้จักกันดีก็คือ DOS,
Windows, Unix, Linux รวมทั้งโปรแกรมแปลคำสั่งที่เขียนในภาษาระดับสูง
เช่น ภาษา Basic, Fortran, Pascal, Cobol, C เป็นต้น
นอกจากนี้โปรแกรมที่ใช้ในการตรวจสอบระบบเช่น Norton’s Utilities ก็นับเป็นโปรแกรมสำหรับระบบด้วยเช่นกัน
หน้าที่ของซอฟต์แวร์ระบบ
1) ใช้ในการจัดการหน่วยรับเข้าและหน่วยส่งออก เช่น
รับรู้การกดแป้นต่างๆ บนแผงแป้นอักขระ ส่งรหัสตัวอักษรออกทางจอภาพหรือเครื่องพิมพ์
ติดต่อกับอุปกรณ์รับเข้าและส่งออกอื่นๆ เช่น เมาส์ ลำโพงเป็นต้น
2) ใช้ในการจัดการหน่วยความจำ
เพื่อนำข้อมูลจากแผ่นบันทึกมาบรรจุยังหน่วยความจำหลัก หรือในทำนองกลับกัน
คือนำข้อมูลจากหน่วยความจำหลักมาเก็บไว้ในแผ่นบันทึก
3) ใช้เป็นตัวเชื่อมต่อระหว่างผู้ใช้กับเครื่องคอมพิวเตอร์
เพื่อให้สามารถใช้งานได้ง่ายขึ้น เช่น การขอดูรายการในสาระบบ (directory) ในแผ่นบันทึก การทำสำเนาแฟ้มข้อมูล
ซอฟต์แวร์ระบบพื้นฐานที่เห็นกันทั่วไป แบ่งออกเป็นระบบปฏิบัติการ และ
ตัวแปลภาษา
ประเภทของซอฟต์แวร์ระบบ
ซอฟต์แวร์ระบบ แบ่งเป็น 2 ประเภทคือ
1. ระบบปฏิบัติการ (Operating
System : OS)
2. ตัวแปลภาษา
1. ระบบปฏิบัติการ
(Operating System : OS)
ระบบปฏิบัติการ หรือที่เรียกย่อๆ ว่า โอเอส (Operating System :
OS) เป็นซอฟต์แวร์ที่ใช้ในการดูแลระบบคอมพิวเตอร์
เครื่องคอมพิวเตอร์ทุกเครื่องจะต้องมีซอฟต์แวร์ระบบปฏิบัติการนี้
ระบบปฏิบัติการที่นิยมใช้กันมากและเป็นที่รู้จักกันดีเช่น ดอส วินโดวส์ ยูนิกซ์
ลีนุกซ์ และแมคอินทอช เป็นต้น
ดอส (Disk
Operating System : DOS) เป็นซอฟต์แวร์จัดระบบงานที่พัฒนามานานแล้ว
การใช้งานจึงใช้คำสั่งเป็นตัวอักษร
ดอสเป็นซอฟต์แวร์ที่รู้จักกันดีในหมู่ผู้ใช้ไมโครคอมพิวเตอร์ในอดีต
ปัจจุบันระบบปฏิบัติการดอสนั้นมีการใช้งานน้อยมากวินโดวส์ (Windows) เป็นระบบปฏิบัติการที่พัฒนาต่อจากดอส
โดยให้ผู้ใช้สามารถสั่งงานได้จากเมาส์มากขึ้นแทนการใช้แผงแป้นอักขระเพียงอย่างเดียว
นอกจากนี้ระบบปฏิบัติการวินโดวส์ยังสามารถทำงานหลายงานพร้อมกันได้
โดยงานแต่ละงานจะอยู่ในกรอบช่องหน้าต่างบนจอภาพ การใช้งานเน้นรูปแบบกราฟิก ผู้ใช้งานสามารถใช้เมาส์เลื่อนตัวชี้เพื่อเลือกตำแหน่งที่ปรากฏบนจอภาพ
ทำให้ใช้งานคอมพิวเตอร์ได้ง่ายระบบปฏิบัติการวินโดวส์จึงได้รับความนิยมอย่างมากในปัจจุบัน
ยูนิกซ์ (Unix) เป็นระบบปฏิบัติการที่พัฒนามาตั้งแต่ครั้งใช้กับเครื่องมินิคอมพิวเตอร์
ระบบปฏิบัติการยูนิกซ์เป็นระบบปฏิบัติการที่เป็นเทคโนโลยีแบบเปิด (open
system) ซึ่งเป็นแนวคิดที่ผู้ใช้ไม่ต้องผูกติดกับระบบใดระบบหนึ่งหรือใช้อุปกรณ์ที่มียี่ห้อเดียวกัน
ยูนิกซ์ยังถูกออกแบบมาเพื่อตอบสนองการใช้งานในลักษณะที่มีผู้ใช้ได้หลายคนในเวลาเดียวกันที่เรียกว่า
ระบบหลายผู้ใช้ (multiusers) และสามารถทำงานได้หลายๆ
งานในเวลาเดียวกันในลักษณะที่เรียกว่า ระบบหลายภารกิจ (multitasking) ระบบปฏิบัติการยูนิกซ์จึงนิยมใช้กับเครื่องที่เชื่อมโยงเป็นเครือข่าย
เพื่อใช้งานร่วมกันหลายๆ เครื่องพร้อมกัน
ลีนุกซ์ (linux) เป็นระบบปฏิบัติการที่พัฒนามาจากระบบยูนิกซ์
เป็นระบบซึ่งมีการแจกจ่ายโปรแกรมต้นฉบับให้นักพัฒนาช่วยกันพัฒนาคุณสมบัติของระบบปฏิบัติการ
ระบบปฏิบัติการลีนุกซ์เป็นที่นิยมกันมากขึ้นในปัจจุบัน
เนื่องจากมีโปรแกรมประยุกต์ต่างๆ ที่ทำงานบนระบบลีนุกซ์จำนวนมาก
โดยเฉพาะอย่างยิ่งโปรแกรมในกลุ่มของกูส์นิว (GNU) และสิ่งที่สำคัญที่สุดก็คือระบบลีนุกซ์เป็นระบบปฏิบัติการประเภทแจกฟรี
(Free Ware) ผู้ใช้สามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย
ระบบลีนุกซ์ สามารถทำงานได้บนซีพียูหลายตระกูล เช่น อินเทล (PC
Intel) ดิจิตอล (Digital Alpha Computer) และซันสปาร์ค
(SUN SPARC) ถึงแม้ว่าในขณะนี้ลีนุกซ์ยังไม่สามารถแทนที่ระบบปฏิบัติการวินโดวส์บนพีซีได้ทั้งหมดก็ตาม
แต่ผู้ใช้จำนวนมากได้หันมาใช้และช่วยพัฒนาโปรแกรมประยุกต์บนลีนุกซ์กันมากขึ้น
แมคอินทอช (macintosh) เป็นระบบปฏิบัติการสำหรับเครื่องไมโครคอมพิวเตอร์
แมคอินทอช ส่วนมากนำไปใช้งานด้านกราฟิก ออกแบบและจัดแต่งเอกสาร
นิยมใช้ในสำนักพิมพ์ต่างๆ
นอกจากระบบปฏิบัติการที่กล่าวมาแล้วยังมีระบบปฏิบัติการอีกมาก
เช่นระบบปฏิบัติการที่ใช้ในเครือข่ายคอมพิวเตอร์
เพื่อให้คอมพิวเตอร์ทำงานร่วมกันเป็นระบบ เช่น ระบบปฏิบัติการเน็ตแวร์
นอกจากนี้ยังมีระบบปฏิบัติการที่ใช้งานเฉพาะกับเครื่องคอมพิวเตอร์ที่สร้างขึ้นมาเพื่องานใดงานหนึ่งโดยเฉพาะ
ซึ่งส่วนใหญ่จะใช้ในห้องปฏิบัติการคอมพิวเตอร์ในสถาบันการศึกษา
ชนิดของระบบปฏิบัติการ
จำแนกตามการใช้งานสามารถจำแนกออกได้เป็น 3 ชนิดด้วยกัน คือ
1 ประเภทใช้งานเดียว
(Single-tasking)
ระบบปฏิบัติการประเภทนี้จะกำหนดให้คอมพิวเตอร์ใช้งานได้ครั้งละหนึ่งงานเท่านั้น
ใช้ในเครื่องขนาดเล็กอย่างไมโครคอมพิวเตอร์ เช่น ระบบปฏิบัติการดอส เป็นต้น
2 ประเภทใช้หลายงาน
(Multi-tasking)
ระบบปฏิบัติการประเภทนี้สามารถควบคุมการทำงานพร้อมกันหลายงานในขณะเดียวกัน
ผู้ใช้สามารถทำงานกับซอฟต์แวร์ประยุกต์ได้หลายชนิดในเวลาเดียวกัน เช่น
ระบบปฏิบัติการ Windows 98 ขึ้นไป และUNIX เป็นต้น
3 ประเภทใช้งานหลายคน
(Multi-user)
ในหน่วยงานบางแห่งอาจใช้คอมพิวเตอร์ขนาดใหญ่ทำหน้าที่ประมวลผล
ทำให้ในขณะใดขณะหนึ่งมีผู้ใช้คอมพิวเตอร์พร้อมกันหลายคน
แต่ละคนจะมีสถานีงานของตนเองเชื่อมต่อกับคอมพิวเตอร์
จึงต้องใช้ระบบปฏิบัติการที่มีความสามารถสูง
เพื่อให้ผู้ใช้ทุกคนสามารถทำงานเสร็จในเวลา เช่น ระบบปฏิบัติการWindows NT และ UNIX เป็นต้น
2. ตัวแปลภาษา
การพัฒนาซอฟแวร์ต้องอาศัยซอฟแวร์ที่ใช้ในการแปลภาษาระดับสูงเพื่อแปลภาษาระดับสูงให้เป็นภาษาเครื่อง
ภาษาระดับสูงมีหลายภาษาซึ่งสร้างขึ้นเพื่อให้ผู้เขียนโปรแกรมเขียนชุดคำสั่งได้ง่าย
เข้าใจได้ และเพื่อให้สามารถปรับปรุงแก้ไขซอฟแวร์ในภายหลังได้
ภาษาระดับสูงที่พัฒนาขึ้นทุกภาษาต้องมีตัวแปลภาษาซึ่งภาษาระดับสูงได้แก่
ภาษาBasic, Pascal, C และภาษาโลโก เป็นต้น
นอกจากนี้
ยังมีภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันอีกมาก ได้แก่ Fortran, Cobol,
และภาษาอาร์พี
ซอฟต์แวร์ประยุกต์
( Application Software)
ซอฟต์แวร์ที่ใช้ทำงานร่วมกับคอมพิวเตอร์
เพื่อใช้ทำงานเฉพาะด้าน เช่น การจัดพิมพ์รายงาน การนำเสนองาน การจัดทำบัญชี
การตกแต่งภาพ หรือการออกแบบเว็บไซต์ เป็นต้น
ประเภทของซอฟต์แวร์ประยุกต์
แบ่งตามลักษณะการผลิต
จำแนกได้เป็น 2 ประเภท
คือ
1. ซอฟแวร์ที่พัฒนาขึ้นใช้เองโดยเฉพาะ
(Proprietary Software)
2. ซอฟแวร์ที่หาซื้อได้ทั่วไป
(Packaged Software)
มีทั้งโปรแกรมเฉพาะ (Customized Package) และ โปรแกรมมาตรฐาน (Standard
Package)
แบ่งตามกลุ่มการใช้งาน
จำแนกได้เป็น 3 กลุ่มใหญ่ๆ
ดังนี้
1. กลุ่มการใช้งานทางด้านธุรกิจ(Business)
2. กลุ่มการใช้งานด้านกราฟิกและมัลติมีเดีย(Graphic
and Multimedia)
3. กลุ่มการใช้งานบนเว็บ
(Web and Communications)
กลุ่มการใช้งานทางด้านธุรกิจ
(Business)
ซอฟแวร์กลุ่มนี้
ถูกนำมาใช้โดยมุ่งหวังให้การทำงานมีประสิทธิภาพมากขึ้น
เช่นการจัดพิมพ์รายงานเอกสาร นำเสนองาน และการบันทึกนัดหมายต่างๆ ตัวอย่างเช่น:
- โปรแกรมประมวลคำ อาทิ Microsoft Word, Sun
StarOffice Writer
- โปรแกรม ตารางคำนวณ อาทิ Microsoft Excel,
Sun StarOffice Cals
- โปรแกรมนำเสนองาน อาทิ Microsoft PowerPoint,
Sun StarOffice Impress
กลุ่มการใช้งานทางด้านกราฟิกและมัลติมีเดีย
ซอฟแวร์กลุ่มนี้ถูกพัฒนาขึ้นเพื่อช่วยจัดการด้านงานกราฟิกและมัลติมีเดีย
เพื่อให้งานง่ายขึ้น เช่น ใช้ตกแต่ง วาดรูป ปรับเสียง ตัดต่อภาพเคลื่อนไหว
และการสร้างและออกแบบเว็บไซต์ ตัวอย่างเช่น
- โปรแกรมงานออกแบบ อาทิ Microsoft Visio
Professional
- โปรแกรมตกแต่งภาพ อาทิ CorelDRAW, Adobe
Photoshop
- โปรแกรมตัดต่อวิดิโอและเสียง อาทิ Adobe
Premiere, Pinnacle Studio DV
- โปรแกรมสร้างสื่อมัลติมีเดีย อาทิ Adobe
Authorware, Toolbook Instructor, Adobe Director
- โปรแกรมสร้างเว็บ อาทิ Adobe Flash, Adobe
Dreamweaver
กลุ่มการใช้งานบนเว็บและการติดต่อสื่อสาร
เมื่อเกิดการเติบโตของเครือข่ายอินเตอร์เน็ต
ซอฟแวร์กลุ่มนี้ได้ถูกพัฒนาขึ้นเพื่อใช้งานเฉพาะเพิ่มมากขึ้น เช่น
โปรแกรมการตรวจเช็คอีเมล การท่องเว็บไซต์ การจัดการดูแลเว็บ
และการส่งข้อความติดต่อสื่อสาร การประชุมทางไกลผ่านเครือข่าย
ตัวอย่างโปรแกรมในกลุ่มนี้ได้แก่:
- โปรแกรมจัดการอีเมล อาทิ Microsoft Outlook,
Mozzila Thunderbird
- โปรแกรมท่องเว็บ อาทิ Microsoft Internet
Explorer, Mozzila Firefox
- โปรแกรม ประชุมทางไกล (Video Conference) อาทิ Microsoft Netmeeting
- โปรแกรมส่งข้อความด่วน (Instant Messaging) อาทิ MSN Messenger/ Windows Messenger, ICQ
- โปรแกรมสนทนาบนอินเทอร์เน็ต
อาทิ PIRCH, MIRCH
ความจำเป็นของการใช้ซอฟต์แวร์
การใช้ภาษาเครื่องนี้ถึงแม้ว่าคอมพิวเตอร์จะเข้าใจได้ทันที
แต่มนุษย์ผู้ใช้จะมีข้อยุ่งยากมากเพราะเข้าใจและจดจำได้ยาก จึงมีผู้สร้างภาษา
คอมพิวเตอร์ในรูปแบบที่เป็นตัวอักษร เป็นประโยค ข้อความ
ภาษาในลักษณะดังกล่าวนี้เรียกว่าภาษาคอมพิวเตอร์ระดับสูง ภาษาระดับสูงมีอยู่มากมายบางภาษามีความเหมาะสมกับการใช้สั่งงานการ-
คำนวณทางคณิตศาสตร์ และวิทยาศาสตร์
บางภาษามีความเหมาะสมไว้ใช้สั่งงานทางด้านการจัดการข้อมูล
ซอฟต์แวร์และภาษาคอมพิวเตอร์
เมื่อมนุษย์ต้องการใช้คอมพิวเตอร์ช่วยในการทำงาน
มนุษย์จะต้องบอกขั้นตอนวิธีการให้คอมพิวเตอร์ทราบ
การที่บอกสิ่งที่มนุษย์เข้าใจให้คอมพิวเตอร์รับรู้ และทำงานได้อย่างถูกต้อง
จำเป็นต้องมีสื่อกลาง ถ้าเปรียบเทียบกับชีวิตประจำวันแล้ว
เรามีภาษาที่ใช้ในการติดต่อซึ่งกันและกัน
เช่นเดียวกันถ้ามนุษย์ต้องการจะถ่ายทอดความต้องการให้คอมพิวเตอร์รับรู้
และปฏิบัติตามจะต้องมีสื่อกลางสำหรับการติดต่อเพื่อให้คอมพิวเตอร์รับรู้เราเรียกสื่อกลางนี้ว่า
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ในแต่ละยุคประกอบด้วย
ภาษาเครื่อง (Machine Languages)
เนื่องจากคอมพิวเตอร์ทำงานด้วยสัญญาณทางไฟฟ้า ใช้แทนด้วยตัวเลข
0 และ 1 ได้
ผู้ออกแบบคอมพิวเตอร์ใช้ตัวเลข 0 และ 1 นี้เป็นรหัสแทนคำสั่งในการสั่งงานคอมพิวเตอร์
รหัสแทนข้อมูลและคำสั่งโดยใช้ระบบเลขฐานสองนี้ คอมพิวเตอร์สามารถเข้าใจได้
เราเรียกเลขฐานสองที่ประกอบกันเป็นชุดคำสั่งและใช้สั่งงานคอมพิวเตอร์ว่าภาษาเครื่อง
การใช้ภาษาเครื่องนี้ถึงแม้คอมพิวเตอร์จะเข้าใจได้ทันทีแต่มนุษย์ผู้ใช้จะมีข้อยุ่งยากมาก
เพราะเข้าใจและจดจำได้ยาก
จึงมีผู้สร้างภาษาคอมพิวเตอร์ในรูปแบบอื่นที่เป็นตัวอักษร
ภาษาแอสเซมบลี (Assembly Languages)
เป็นภาษาคอมพิวเตอร์ในยุคที่ 2 ถัดจากภาษาเครื่อง
ภาษาแอสเซมบลีช่วยลดความยุ่งยากลงในการเขียนโปรแกรมเพื่อติดต่อกับคอมพิวเตอร์
แต่อย่างไรก็ตามภาษาแอสเซมบลีก็ยังมีความใกล้เคียงภาษาเครื่องอยู่มาก
และจำเป็นต้องใช้ตัวแปลภาษาที่เรียกว่าแอสเซมเบลอร์(Assembler) เพื่อแปลชุดภาษาแอสเซมบลีให้เป็นภาษาเครื่อง
ภาษาระดับสูง (High-Level Languages)
เป็นภาษาคอมพิวเตอร์ในยุคที่ 3 เริ่มมีการใช้ชุดคำสั่งที่เรียกว่า
Statements ที่มีลักษณะเป็น
ประโยคภาษาอังกฤษ
ทำให้ผู้ที่เขียนโปรแกรมสามารถเข้าใจชุดคำสั่งเพื่อสั่งให้คอมพิวเตอร์
ทำงานง่ายขึ้น
ผู้คนทั่วไปสามารถเรียนรู้และเขียนโปรแกรมได้ง่ายขึ้น เนื่องจากภาษาระดับสูง
ใกล้เคียงภาษามนุษย์
ตัวแปลภาษาระดับสูงเพื่อให้เป็นภาษาเครื่องนั้นมีอยู่ 2 ชนิด ด้วยกัน คือ
คอมไพเลอร์ (Compiler) และ อินเทอร์พรีเตอร์ (Interpreter)
คอมไพเลอร์
คอมไพเลอร์
จะทำการแปลโปรแกรมที่เขียนเป็นภาษาระดับสูงทั้งโปรแกรมให้เป็นภาษาเครื่องก่อน
แล้วจึงให้คอมพิวเตอร์ทำงานตามภาษาเครื่องนั้น
อินเทอร์พรีเตอร์
อินเทอร์พรีเตอร์
จะทำการแปลทีละคำสั่ง แล้วให้คอมพิวเตอร์ทำตามคำสั่งนั้น
เมื่อทำเสร็จแล้วจึงมาทำการแปลคำสั่งลำดับต่อไป
ข้อแตกต่างระหว่างคอมไพเลอร์กับอินเทอร์พรีเตอร์จึงอยู่ที่การแปลทั้งโปรแกรมหรือแปลทีละคำสั่ง