MINIX ay isang bukas na pinagmulan, independiyente at malayang ipinamamahagi ng UNIX-tulad ng computer operating system batay sa isang microkernel architecture. Ito ay isang maliit na OS na idinisenyo mula sa lupa hanggang sa magamit bilang tool na pang-edukasyon na naka-target sa mga low-power na laptops at naka-embed na mga system.
Ang OS ay ibinahagi bilang isang dual-arch ISO image
Ang operating system ng MINIX ay ipinamamahagi bilang isang dual-arch ISO na imahe, na na-archive na may paraan ng compression bz2 at ininhinyero upang tumakbo sa mga computer na sumusuporta sa parehong 32-bit (x86) at 64-bit (x86_64) Mga arkitektura. Habang ang bz2 archive ay may humigit-kumulang na 120MB ang sukat, ang ISO image ay nagkakahalaga ng tungkol sa 400MB.
Nagtatampok ang menu ng lumang-paaralan na boot ng apat na iba't ibang mga opsyon
Mangyaring tandaan na ang ISO na imahe ay dapat na nakasulat sa isang CD disc o USB thumb drive ng 512MB o mas mataas na kapasidad upang i-boot ito mula sa BIOS ng isang PC. Ito ay mag-prompt ng mga user na may isang boot menu na nagtatampok ng apat na iba't ibang mga opsyon, ang kakayahan upang simulan ang live na sistema na may o walang suporta ng AHCI, ang kakayahang mag-drop sa prompt ng shell, at ang kakayahang i-edit ang mga opsyon sa menu.
Nagpapatakbo ito sa live mode at maaaring mai-install sa isang lokal na biyahe
Habang ang system ay tatakbo nang maayos mula sa bootable medium at marami sa mga pre-installed commands nito ay gagana ng maayos, kakailanganin mong i-install ito sa isang lokal na drive upang mapakinabangan nang husto ang pag-andar nito, kasama ang graphical desktop environment . Sa pamamagitan ng default, ikaw ay bumaba sa isang prompt ng shell kung saan kailangan mong mag-login gamit ang & ldquo; root & rdquo; Username. I-type ang & ldquo; setup & rdquo; (Walang mga panipi) upang simulan ang pag-install ng script.
Hindi ito isang operating system ng Linux o BSD
Ang lahat ng mga bagay na isinasaalang-alang, ang MINIX ay hindi dapat malito sa Linux o BSD. Ito ay pa rin sa mabigat na pag-unlad at wala kahit saan malapit sa pagiging mature tulad ng nabanggit UNIX-tulad ng operating system. Ito ay hindi idinisenyo para sa end-user, bilang isang pang-araw-araw na operating system!
Ano ang bago sa paglabas na ito:
- Ang sistema ay batay sa isang maliit (12,700 linya ng code) na microkernel
- Ang microkernel ay humahawak sa mga interrupts at pagpapasa ng mensahe at ang tanging code na tumatakbo sa kernel mode.
- Ang natitirang bahagi ng operating system ay tumatakbo bilang isang koleksyon ng mga nakahiwalay, protektado, mga proseso ng user-mode
- Ang bawat driver ng aparato ay isang hiwalay na proseso ng user-mode na nakahiwalay sa hardware ng MMU
- Kung ang isang drayber ay nag-crash, ang system ay awtomatikong mag-restart ito, na may tumatakbo na mga application na hindi nakakaalam
- Nangangahulugan ito na ang MINIX 3.3.0 ay pagpapagaling sa sarili
- Ang Userland ay higit sa lahat tugma sa NetBSD at nagpapatakbo ng libu-libong mga pakete ng NetBSD
- Sa pamamagitan ng pagsasama-sama ng isang makabagong pananaliksik sa pananaliksik OS sa NetBSD userland, nakuha namin ang pinakamahusay na ng parehong mundo
- Magagamit ang clang / LLVM at gcc compiler, pati na rin ang perl, python, atbp.
- MINIX 3.3.0 ay magagamit para sa parehong arkitektura ng x86 at ARM Cortex A8, na ginagawang perpekto para sa naka-embed na mga system
- Ang mga tool para sa cross compiling MINIX 3 para sa ARM sa Linux ay ibinigay
- Ang mga port ay magagamit na ngayon para sa BeagleBoard XM, BeagleBone white, at BeagleBone black
- Malawak na dokumentasyon ang magagamit sa MINIX 3 wiki
Ang code ay pinabuting sa paglipas ng MINIX 3.2.1 sa daan-daang mga paraan, na humahantong sa mas malinis at mas maaasahan na sistema
Ano ang bago sa bersyon 3.3.0:
- Ang sistema ay batay sa isang maliit (12,700 linya ng code) na microkernel
- Ang microkernel ay humahawak sa mga interrupts at pagpapasa ng mensahe at ang tanging code na tumatakbo sa kernel mode.
- Ang natitirang bahagi ng operating system ay tumatakbo bilang isang koleksyon ng mga nakahiwalay, protektado, mga proseso ng user-mode
- Ang bawat driver ng aparato ay isang hiwalay na proseso ng user-mode na nakahiwalay sa hardware ng MMU
- Kung ang isang drayber ay nag-crash, ang system ay awtomatikong mag-restart ito, na may tumatakbo na mga application na hindi nakakaalam
- Nangangahulugan ito na ang MINIX 3.3.0 ay pagpapagaling sa sarili
- Ang Userland ay higit sa lahat tugma sa NetBSD at nagpapatakbo ng libu-libong mga pakete ng NetBSD
- Sa pamamagitan ng pagsasama-sama ng isang makabagong pananaliksik sa pananaliksik OS sa NetBSD userland, nakuha namin ang pinakamahusay na ng parehong mundo
- Magagamit ang clang / LLVM at gcc compiler, pati na rin ang perl, python, atbp.
- MINIX 3.3.0 ay magagamit para sa parehong arkitektura ng x86 at ARM Cortex A8, na ginagawang perpekto para sa naka-embed na mga system
- Ang mga tool para sa cross compiling MINIX 3 para sa ARM sa Linux ay ibinigay
- Ang mga port ay magagamit na ngayon para sa BeagleBoard XM, BeagleBone white, at BeagleBone black
- Malawak na dokumentasyon ang magagamit sa MINIX 3 wiki
Ang code ay pinabuting sa paglipas ng MINIX 3.2.1 sa daan-daang mga paraan, na humahantong sa mas malinis at mas maaasahan na sistema
Ano ang bago sa bersyon 3.2.1:
- Pag-unlad:
- Suporta para sa mga dynamic na naka-link na executable, bumuo din ng mga nakabahaging bersyon ng mga library ng base system
- http://wiki.minix3.org/en/UsersGuide/UsingSharedLibraries.
- Alisin ang paggamit ng mga segment ng Intel nang buo, na nagbibigay ng dagdag na pagganap habang lumilipat ang konteksto. Umasa lamang sa mga talahanayan ng pahina. (Higit pang impormasyon)
- Nagdagdag ng suporta para sa mga kernel call system na SYSENTER / SYSCALL, isang makabuluhang pagpapabuti ng pagganap. (Higit pang impormasyon)
- Buong bagong malinis na na-update na NetBSD build import system. Ang build.sh ay suportado, na nagpapahintulot sa crossbuilding MINIX 3.
- http://wiki.minix3.org/en/DevelopersGuide/Crosscompiling
- I-import o na-upgrade ang maraming mga utility ng gumagamit at mga aklatan mula sa NetBSD: libc, lorder, sumali, mtree, tsort, cksum, pumatay, xinstall, du, libutil, tic, postinstall, flex, zlib, bsdtar, Echo, pax, file, mktemp, libc, csu, curses, byacc, tput, test, ln, nvi, ctags, infocomp, nbperf, make, m4, bzip2, libcrypt, printf, passwd, make, ed, nawk, expr, Pwd.
- DDEKIT support (suporta para sa USB keyboard, mouse at mass storage).
- http://wiki.minix3.org/en/DdeKitUsb
- Pangkalahatan ng tsuper ng TTY.
- Ang maliliit at malalaking paglilinis ay kinakatawan ng pagretiro ng mga MINIXisms tulad ng mga hindi nonsymbolic rootdev, dev2name, checkhier, badblocks, readall, BIOS_SEG at umap_bios, bios_wini, C macros bilang _ANSI, _CONST, _VOLATILE, _SIZET, _ARGS, _VOID, PUBLIC, PRIVATE at FORWARD , _PROTOTYPE.
- VM: Pangkalahatan munmap (oras ng boot ramdisk ngayon ay napalaya, nagse-save ng memorya).
- Ang pakikipag-ugnayan ng VFS sa mga driver ay ganap na asynchronous, na ginagawa ang VFS immune sa mga hindi maoperasyong driver. (Higit pang impormasyon)
- http://en.wikipedia.org/wiki/Kernel_Normal_Form
- Pagpapabuti ng pagganap ng EXEC at kalahatan. Bawasan ang pagkopya, at ang lahat ng kernel, RS, VFS at VM ay gumagamit ng parehong maipapatupad na code sa pag-parse.
- Ang ilang karagdagang abstraction sa VM upang suportahan ang mga pagpapabuti sa hinaharap.
- Ipinatupad ang suporta ng dynamic mtab at ang mount -a command
- Pangkalahatan ang cache ng file system. (Higit pang impormasyon)
- Mga Pagbabago:
- Gawin ang mundo na pinalitan ng gumawa ng build
- Bumaba ng suporta para sa a.out binaries
- Mga driver, FS:
- E1000 magdagdag ng suporta para sa 82545EM
- pagpapabuti ng EXT2 na suporta. (Higit pang impormasyon)
- Virtio: virtio-blk, virtio-net driver
- Paano gamitin: http://wiki.minix3.org/en/UsersGuide/RunningOnQemu
- Suporta para sa AHCI
- Magdagdag ng VBFS: Sistema ng Sistema ng File ng Nagbabahagi ng VirtualBox
- rtl8169: magdagdag ng suporta para sa RTL8101E pamilya
- Keymaps:
- Keymap ng Portuges
- Brazilian keymap
- Userland:
- Isulat muli ang sprofalyze sa C para sa mas mahusay na pagganap.
Ano ang bago sa bersyon 3.2.0:
- Mga Pangunahing Tampok:
- Ang Clang ay ang default na tagatala (sinusuportahan din ang GCC)
- NetBSD C library
- Ang ELF ay ang default na format na maipapatupad
- Asynchronous, multithreaded virtual filesystem (VFS) server
- Pang-eksperimentong suporta sa SMP
- FUSE support (GSOC project by Evgeniy Ivanov)
- NetBSD password file format (bahagi ng GSOC project ni Vivek Prakash)
- impormasyong FS uri:
- Gumamit ng tamang / etc / fstab file
- Malinis / di-malinis na bandila ng FS sa MFS
- Integrated integration ng buong base system: newfs, fsck, maaaring mag-install sa ext2
- Gawin ang wastong `fsck -p` sa bawat boot para sa lahat ng mga filesystem na nakalista sa fstab
- Net bootloader
- Mas maliit na mga boot image (gamit ang gzip)
- ProcFS: / proc file system
- Multithreading at suporta sa NCQ sa driver ng AHCI
- Pagpapabuti ng Pag-debug
- GDB at core dump support (GSOC project by Adriana Szekeres)
- I-block ang pagsunod ng device
- Mga bagong utility ng userland na NetBSD (bahagi ng mga ito bilang isang proyekto ng GSOC ni Vivek Prakash)
- ext2 fsck & mkfs, gzip, m4, man & tools, mkdep, mkdir, mkfifo, mktemp, rm, rmdir, tic, uniq
- libcurses, libcrypt, libprop, libterminfo, libutil
- bzip2, date, indent, mdocml (mandoc), sed, zoneinfo ports
- Mas mahusay na pagiging maaasahan
- Transparent na pagbawi mula sa pag-crash ng bloke ng driver ng device sa mga system file
- Transparent na muling subukan sa hindi pagtagumpayan ang block na aparato na I / O sa mga system file
- New Faulty Block Device fault injection driver
- Ang mga server at mga driver ay tumatakbo bilang mga hindi mapulang gumagamit
- Ayusin ang lahat (potensyal na) mga bug na natagpuan ng mas detalyadong mga babala ni Clang
- Mas mahusay na suporta sa virtualization
- Nagdagdag ng libvassert, upang paganahin ang mas madaling suporta para sa VMWare VAssert
- Bagong driver ng sync sa oras ng VirtualBox
- Iba pang mahahalagang pagkakaiba:
- Gumagamit ngayon ng MINIX project ang git bilang sistema ng kontrol ng bersyon nito
- Mga Kilalang Isyu:
- VirtualBox: Hindi ma-install ang Minix w / o suporta sa acceleration ng hardware (VT-x, AMD-V)
- Workaround: Tingnan ang Mga UserGuide / RunningMinixOnVirtualBox
- Gumawa ng mga babala: Ang Clang ay may mas mahusay na mga diagnostic kaysa sa ACK, kaya ang mga ulat ay nagsusulat ng higit pang mga babala sa MINIX codebase. Ang mga babalang ito ay naayos sa paglipas ng panahon.
- Pagganap ng kulubot: Sa MINIX, kumalat ang mas mabagal kaysa sa GCC. Nagsusumikap kami dito. Sa ngayon, mayroon kang pagpipilian upang bumuo ng MINIX sa GCC (CC = gcc).
Ano ang bago sa bersyon 3.1.7:
- Mga pag-iiskedyul ng mga userpace at server ng pag-iiskedyul
- Wastong suporta para sa maramihang mga ethernet card ng parehong uri
- Bugfixes (tulad ng workaround na tumakbo sa kamakailang KVM)
- Mga tampok ng pag-debug (variant boot monitor na & quot; verbose & quot; access sa mga debug registers DR0-DR7 sa kernel)
- Ang boot monitor ay nagbibigay-daan sa paglo-load ng mga larawan & gt; 16 MB
- Lumaki ang laki ng laki ng partisyon sa 64MB (at ang script ng pag-setup ay maaari na ngayong ligtas na haharapin ang mga partisyon ng ugat na may mga di-default na laki)
- Suporta sa buildsystem para sa pagbuo ng MINIX sa GCC
- Pinagmulang pag-aayos ng puno / paglilinis
- Mga bagong port: Git, na-update ang GCC sa bersyon 4.4.3
- Pangalawang cache ng layer ng FS sa VM na gumagamit ng lahat ng magagamit na memorya, binabawasan ang oras ng paghihintay ng I / O ng maraming
Ano ang bago sa bersyon 3.1.6:
- Mga Pangunahing Mga Tampok:
- Mga bagong driver: Atheros L2, Intel E1000, Realtek 8169, DEC Tulip
- Suporta sa VirtualPC Network (DEC Tulip)
- PipeFS - inalis ang paghawak ng tubo mula sa mga driver ng filesystem
- HGFS - suporta para sa pag-mount ng mga folder ng VMware na nakabahagi bilang file system
- suporta ng FPU
- System Event Framework (SEF)
- Suportang pang-eksperimentong APIC (hindi pinagana bilang default)
- Higit pang mga port: mas kamakailan-lamang na QEMU, BSD na mga utility, Mga Benchmark
- Mga Kilalang Isyu:
- Hindi ma-boot ng VirtualBox 3.1 ang Minix. Mangyaring gamitin ang VirtualBox 3.0 para sa ngayon.
- Hindi maaaring mag-boot ang Minix ng Qemu / KVM 0.12. Mangyaring gamitin ang Qemu / KVM 0.11 sa ngayon.
- VirtualBox: Minix 3.1.6 ay hindi maaaring mai-install w / o suporta sa acceleration ng hardware (VT-x, AMD-V)
Mga Komento hindi natagpuan