मिनिक्स 3

मिनिक्स 3 एक मुक्त स्रोत युनिक्स पर आधारित संचालन प्रणाली है। जिसके प्रकाशन के अधिकार को बीएसडी के तहत उपलब्ध कराया गया है। इसके पिछले संस्करण मिनिक्स 1 और मिनिक्स 2 भी सफल रहे। इसके कारण ही इसके नए संस्करण की परियोजना की शुरुआत की गई।

इसका मुख्य लक्ष्य त्रुटि को स्वयं ही खोजना और बिना किसी उपयोगकर्ता के निर्देश के उसे ठीक करना है। इसका मुख्य उपयोग शिक्षा के क्षेत्र में किया जाता है।

लक्ष्य
250px|अंगूठाकार|दाएँ|मोनोलिथिक कर्नेल का ढाँचा
इस परियोजना का लक्ष्य मोनोलिथिक कर्नेल के प्रकृति को प्रभावित करना था। जिससे कारण कुछ 6-7 त्रुटि आने पर पूरी प्रणाली ही बन्द हो जाती थी। मिनिक्स 3 को बनाने का लक्ष्य था, एक ऐसे संचालन प्रणाली को बनाने का जो विश्वसनीय, स्वयं उपचार करने वाला और अनेक सर्वर को उपयोग करने वाला हो। यह सभी कार्य मिनिक्स 3 कर सकता है।

इस लक्ष्य को हासिल करने के लिए वे कोड को कर्नेल के लिए बहुत ही कम कर दिये। फ़ाइल का भेजना और उसके लिए जो क्रिया होती है। यह सभी अलग अलग प्रोसैस होने लगी। इससे वह सभी के कार्य पर निगाह रख सके।

 इतिहास 
इस परियोजना का सार्वजनिक रूप से खुलासा 24 अक्टूबर 2005 में हुआ था। एंडरिव तानेंबौन ने इसे एक एसीएम के दौरान भाषण देते समय बताया। लेकिन इसका उपयोग केवल टेक्स्टबूक (पाठ्य पुस्तक) के उदाहरण के रूप में ही किया गया है। इसे पूरी तरह केवल एक स्थायी और गंभीर रूप से किसी प्रणाली को कम सामग्री के साथ चलाने के लिए बनाया गया है। इसके द्वारा उच्च गुणवत्ता के अनुप्रयोग भी चलाये जा सकते हैं।
+ मिनिक्स 3 के संस्करण संस्करण प्रदर्शन तिथि विवरण 3.1.02005-10-24मिनिक्स 3 का पहला रिलीज (किताब रिलिज). 3.1.2a2006-05-29New Packman package manager. 
Fixed an installation issue with auto-partitioning disks.  3.1.32007-04-13नया virtual file system जोड़ा गया। 3.1.3a2007-06-08त्रुटियाँ सुधारी गयीं।  3.1.42009-06-09Virtual memory समर्थन। 
Improved virtual machine support (when MINIX runs as guest). 3.1.52009-11-05Improvements performance
Shared memory
setitimer function
ISO 9660 file system
Open Sound System
Trap NULL accesses now, for user convenience
Improved signal handling
Better support for debuggers (ptrace improvements, etc.)
Network card autodetection (for supported PCI cards), improved network configuration  3.1.62010-02-08New Network drivers: Atheros L2, Intel E1000, Realtek 8169, DEC Tulip
PipeFS - removed pipe handling from filesystem drivers
HGFS - support for mounting VMware shared folders as file system
VFS: supplemental group support and sticky bit support
Floating-point unit support
System Event Framework (SEF) 
Experimental APIC support 3.1.72010-06-16Userspace scheduling and a scheduling server
Proper support for multiple ethernet cards of the same type
Boot monitor allows loading images > 16 MB
Buildsystem support for building MINIX with GCC
Support for the cp1251 and koi8-u charsets 3.1.82010-10-04New package management infrastructure: pkgsrc and pkgin
Unix domain socket support 
Multiboot support 
ext2 support 
ACPI driver
full APIC mode including I/O APICs
Experimental AHCI support 3.2.02012-02-29Porting GNU Debugger to MINIX 3 and implementing core dumping support
FUSE Support with experimental NTFS-3G file system
Gradual replacement of MINIX userland with NetBSD userland
Replacing the default compiler ACK with Clang (GCC is also supported)
Switch to ELF and NetBSD libc libraries 
Pkgsrc Upstreaming and Application Porting
Asynchronous virtual filesystem (VFS) server.
Replacing the MINIX bootloader with NetBSD bootloader
NCQ support in the AHCI driver  3.2.1 2013-02-21 Support for dynamically linked executables 
 Removal of Intel segments
 Dropped support for a.out binaries 
 Cross-compilation support
 Device Driver Environment kit support
 VBFS - support for mounting VirtualBox Shared Folder as file system 3.3.0 2014-09-16 ARM architecture support (cross-compilable)
 Support for the mmap() I/O mechanism. Allows for shared dynamic libraries and lower memory footprint.
 New input infrastructure: input server and keyboard driver separated from TTY
 VND: vnode disk (loopback) block driver
 LLVM Bitcode build of the system
 Import of LLVM / clang in the sources
 Unified block cache shared by FSes and VM
 Improved NetBSD compatibility (utilities, calls, types (lots of 64-bit), toolchain, codebase and packages)
 C type for messages. Cleaner. Bigger.
 Improved driver modularity: UDS separate from PFS, PTY from TTY, one controller per at_wini instance, LOG removed from boot image.
 Packages are now dynamically linked

विश्वसनीयता
विश्वसनीयता मिनिक्स के मुख्य लक्ष्यों में से एक है। जो कुछ इस प्रकार हैं :-
कर्नेल का आकार घटाना
त्रुटि पता लगाना
ड्राईवर द्वारा स्मृति उपयोग नियत करना
यह ड्राईवर द्वारा ली गई स्मृति को एक नियत आकार तक ही रखता है।
अनंत छोर को रोकना
कई अनुप्रयोग या प्रोग्राम बिना रुके चलते रहते हैं। जैसे सी++ में (a,a++,a>5) इसमें a का मान जब तक 5 नहीं हो जाता तब तक यह चलते रहेगा। यदि 5 के स्थान पर कोई मान ही न हो तो यह अनंत चलते रहेगा।
कर्नेल के कार्यों को प्रतिबंधित करना
I/O पोर्ट की पहुँच को प्रतिबंधित करना
बीच में आते संदेशों को एकीकृत

मिनिक्स 3 और पूर्व संस्करणों के बीच अंतर
मिनिक्स 1, 2 केवल एक उपकरण के रूप में बनाए गए थे।

इन्हें भी देखें
 मिनिक्स

सन्दर्भ

बाहरी कड़ियाँ