ลีนุกซ์มีความสามารถเกือบทุกอย่างที่คุณจะพบได้ในระบบปฏิบัติการ
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 เพื่อใช้ในการดีบักและหาสาเหตุที่ทำให้โปรแกรมทำงานผิดพลาดได้
ไม่มีความคิดเห็น:
แสดงความคิดเห็น