วันศุกร์ที่ 15 มิถุนายน พ.ศ. 2555

ประโยชน์ของลีนุกซ์

ลีนุกซ์มีความสามารถเกือบทุกอย่างที่คุณจะพบได้ในระบบปฏิบัติการ UNIX ทั่วๆ ไป อีกทั้งยังมีความสามารถบางอย่างซึ่งแตกต่างไปจาก UNIX ตัวอื่นๆ
  • ลีนุกซ์เป็นระบบปฏิบัติการแบบหลายงานและหลายผู้ใช้ (Multitasking and Multiuser) ที่สมบูรณ์แบบ (เหมือนระบบปฏิบัติการ UNIX ทั่วๆ ไป) นั่นคือสามารถมีผู้ใช้งานพร้อมๆ กันได้หลายคน และแต่ละคนสามารถรันโปรแกรมได้หลายๆ โปรแกรมพร้อมๆ กัน
  • ลีนุกซ์มีความเข้ากันได้ (compatible) กับ UNIX ส่วนมากในระดับซอร์สโค้ด ตัวอย่างเช่น IEEE POSIX.1, System V UNIX และ BSD UNIX เป็นต้น มันถูกพัฒนาขึ้นโดยยึดหลัก source portability ดังนั้นคุณจะพบว่า features ที่ถูกใช้งานเป็นประจำของลีนุกซ์สามารถพบได้ใน UNIX อื่นๆ ทั่วไป ซอฟต์แวร์ UNIX ในอินเตอร์เน็ตส่วนใหญ่สามารถนำมาคอมไพล์บนลีนุกซ์ได้โดยไม่จำเป็นต้องแก้ไขซอร์สโค้ดเลย นอกจากนี้ซอร์สโค้ดทั้งหมดของระบบลีนุกซ์อันได้แก่ เคอร์เนล ดีไวซ์ไดรเวอร์ ไลบรารี โปรแกรมใช้งาน และโปรแกรมระบบต่างๆ สามารถหาดาวน์โหลดได้ฟรีจากศูนย์บริการ FTP มากมายทั่วโลก
  • ความสามารถอื่นๆ อันได้แก่ posix job control (ซึ่งถูกใช้ในโปรแกรม shell ต่างๆ เช่น bash, sh และ csh) เทอร์มินอลเสมือน (pseudo terminal) คอนโซลเสมือน (virtual console) ซึ่งทำให้คุณสามารถสลับหน้าจอระหว่าง login sessions ต่างๆ บนหน้าจอคอนโซลในเท็กซ์โหมดได้ ฯลฯ
  • ลีนุกซ์สนับสนุนระบบไฟล์หลายชนิด เช่น ext2fs (ถูกพัฒนาสำหรับใช้งานกับลีนุกซ์โดยเฉพาะ) MINIX-1 และ XENIX (เป็นระบบไฟล์ที่ใช้งานบนระบบมินนิกซ์และซีนิกซ์) MS-DOS FAT, ISO-9660 (ระบบไฟล์ที่ใช้กันบนซีดีรอมส่วนใหญ่) NCPFS (ใช้ในการ mount volume ต่างๆ ของ NetWare) SMBFS (ใช้ในการ mount ไดเรคทอรีของ Windows for Workgroup) เป็นต้น
  • ลีนุกซ์สนับสนุนระบบเครือข่าย TCP/IP อย่างสมบูรณ์แบบ มีดีไวซ์ไดรเวอร์สำหรับอีเธอร์เน็ตการ์ดหลายยี่ห้อ สนับสนุนโปรโตคอล SLIP (Serial Line IP) PLIP (Parallel Line IP) PPP (Point-to-Point Protocol) NFS (Network File System) ฯลฯ นอกจากนี้ยังมีโปรแกรมไคล์เอ็นต์และเซิร์ฟเวอร์สำหรับบริการต่างๆ ในอินเตอร์เน็ตทุกประเภท เช่น FTP, Telnet, NNTP, SMTP, Gopher, WWW เป็นต้น
  • เคอร์เนลของลีนุกซ์มีความสามารถในการจำลองการทำงานของโปรเซสเซอร์ช่วยประมวลผลทางคณิตศาสตร์ 80387 ดังนั้นแม้ในเครื่องที่ไม่มีโปรเซสเซอร์ช่วยประมวลผลทางคณิตศาสตร์ก็ยังสามารถรันโปรแกรมที่ต้องการใช้งานคำสั่งเกี่ยวกับ floating-point ได้
  • เคอร์เนลของลีนุกซ์สนับสนุน demand-paged loaded executable นั่นคือเฉพาะส่วนของโปรแกรมที่กำลังถูกเรียกทำงานเท่านั้นที่จะถูกอ่านจากดิสค์เข้าสู่หน่วยความจำของเครื่อง ทำให้ระบบมีการใช้งานหน่วยความจำอย่างมีประสิทธิภาพ นอกจากนี้ตัวเคอร์เนลจะโหลดโปรแกรมขึ้นมาทำงานด้วยวิธี shared copy-on-write pages หมายถึงมีหลายๆ โปรเซสที่สามารถจะใช้งานหน่วยความจำส่วนเดียวกันในการทำงานได้ ซึ่งจะทำให้สามารถโหลดโปรแกรมได้อย่างรวดเร็วในกรณีที่มีการเรียกใช้โปรแกรมเดียวนี้โดยผู้ใช้คนอื่นอยู่ก่อนแล้ว และสามารถลดการใช้งานหน่วยความจำลงได้
  • เพื่อให้มีหน่วยความจำใช้งานมากขึ้น ลีนุกซ์สนับสนุน swap space มากถึง 2   กิกะไบต์ ดังนั้นคุณจึงสามารถรันแอพพลิเคชันขนาดใหญ่และมีผู้ใช้งานได้พร้อมกันมากขึ้น


  • เคอร์เนลของลีนุกซ์มีระบบ unified memory pool สำหรับโปรแกรมและดิสค์แคช นั่นคือหน่วยความจำที่ว่างอยู่ทั้งหมดจะถูกใช้งานเป็นดิสค์แคชและเมื่อมีการโหลดโปรแกรมขนาดใหญ่ ขนาดของดิสค์แคชก็จะถูกลดลงโดยอัตโนมัติ
  • โปรแกรมที่ใช้งานบนลีนุกซ์จะมีการใช้งาน dynamically linked shared libraries ซึ่งก็คือโปรแกรมที่รันบนลีนุกซ์จะมีการใช้งานไลบรารีไฟล์ร่วมกัน (เหมือน shared library ของ SunOS หรือ DLL ของ Windows) ซึ่งจะทำให้โปรแกรมที่รันบนลีนุกซ์มีขนาดเล็กลงมาก โดยเฉพาะโปรแกรมที่มีการใช้งานฟังก์ชันจากหลายๆ ไลบรารี แต่ในขณะเดียวกันถ้าคุณต้องการทำการดีบักโปรแกรมหรือต้องการใช้งานโปรแกรมแบบ static linked ก็สามารถใช้ได้เช่นกัน
  • เพื่อสนับสนุนการดีบักโปรแกรม ตัวเคอร์เนลจะทำการสร้างไฟล์ core dump เพื่อใช้ในการดีบักและหาสาเหตุที่ทำให้โปรแกรมทำงานผิดพลาดได้

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

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