...nevyšel by ze srovnání nejlépe. HURD je jenom pokus postavit POSIX nad jiným jádrem, které shodou okolností umí pár věcí z toho, co Singularity. (A je to pokus docela neúspěšný, minimálně z hlediska nasazení. To, že však jde *NIX postavit nad MACHem už ukázal NeXT a dnes to předvádí Apple.) Také se zdá, že Singularity pracuje na zcela odlišné úrovni abstrakce (ocituju-li z jejich zprávy SIPs are closed object spaces, not address spaces.)
Singularity jde, jak se zdá z uvolněných informací, notně dále - staví na jazycích s managovaným kódem a JIT kompilací. Díky tomu má podstatně větší potenciál pro vývoj software s méně chybami než jazyky postavené na makroassemblerech C a C++. Podle všeho si dali docela záležet na podpoře bezpečného programování a bezpečnosti (bohužel se asi nedočkáme capabilities, ale i tak mají imho šanci být o řád bezpečnější než současné Windows a *NIXy).
Jsem docela zvědavý, kam to povede, některé aspekty mne odrazují (A process cannot dynamically load or generate code. ), ale zatím to vypadá fain...
Mimochodem - pokud někdo hledá open source konkurenci, tak nejbližším podobným projektem je pravděpodobně jNode. Do praxe asi nejvíce zasáhne Sun a jeho Isolations API (JSR 121).
Singularity - nový systém od Microsoftu
8. 11. 2005 7:46
Pedro Alvarez
Je známým faktem, že Microsoft se rád učí kolem sebe. To se takhle vezme nápad a na světě je nový operační systém.
Senzace chtivým snad postačí následující zpráva, ti hloubavější zajdou na stránky projektu.
Tato zprávička byla zaslána čtenářem serveru Root.cz pomocí formuláře Přidat zprávičku. Děkujeme!
Dále čtěte…
- Google uvolnil informace o požadavcích na odstranění obsahu 28. 5. 2012 14:47
- Firefox na Windows 8 s ARM? Microsoft říká NE! 10. 5. 2012 13:09
- OneNote od Microsoftu dorazilo na OS Android 10. 2. 2012 15:03
- Microsoft představil nový souborový systém ReFS 18. 1. 2012 14:07
- IPv6 obsah bude globálně spuštěn 6. června 2012 18. 1. 2012 11:09
Pedro Alvarez (neregistrovaný)
8. 11. 2005 10:26
Nový
Re: Nesrovnávejte s HURDem
celé vlákno
Nesrovnávám a ani nechci, pouze jsem chtěl poukázat na podobnost filozofie (mikrokernel).
A že je HURD neúspěšný přeci neznamená, že nelze srovnávat ;-).
A že je HURD neúspěšný přeci neznamená, že nelze srovnávat ;-).
Noname (neregistrovaný)
8. 11. 2005 12:21
Nový
Re: Nesrovnávejte s HURDem
celé vlákno
Docela by mne zajimalo, jakou vyhodu ma Singularity v oblasi "Díky tomu má podstatně větší potenciál pro vývoj software " nez normalni OS s JVM.
Pisete o managed codu, ale jaksi zapominate na moznost pousteni unmanaged codu, ktera se v tom systemu velmi pravdepodobne objevi.
Dale by mne zajimalo, jak muze byt system bez capabilities radove bezpecnejsi nez system s capabilities.
No a v neposledni rade se muzeme podivat na mikrokernel architekturu, ktera se zatim nikdy neprosadila - vzdy byla pomalejsi. Tenhle system je v plenkach a hodne funkcionality neni implementovano, tudiz rychly muze byt. Az bude vyvoj u konce, tak rychlostni testy budou znacne odlisne. Staci se podivat na MACH a tu bolest pri thread managementu
Pisete o managed codu, ale jaksi zapominate na moznost pousteni unmanaged codu, ktera se v tom systemu velmi pravdepodobne objevi.
Dale by mne zajimalo, jak muze byt system bez capabilities radove bezpecnejsi nez system s capabilities.
No a v neposledni rade se muzeme podivat na mikrokernel architekturu, ktera se zatim nikdy neprosadila - vzdy byla pomalejsi. Tenhle system je v plenkach a hodne funkcionality neni implementovano, tudiz rychly muze byt. Az bude vyvoj u konce, tak rychlostni testy budou znacne odlisne. Staci se podivat na MACH a tu bolest pri thread managementu
8. 11. 2005 12:46
Nový
Re: Nesrovnávejte s HURDem
celé vlákno
Singularity bude mít výhodu v tom, že tam nebude ten "normální OS", typicky těžko laděný a plný bugů. A JVM s ním bude srovnatelná, až budou izolace (tuším, že JSR 121). Právě izolace si, pokud se nemýlím, vybrali za jeden z cílů vývojáři jNode.
Unmanaged kód se neobjeví (tedy až na velmi úzkou oblast). Code in Singularity is either verified or trusted. Verified code's type and memory safety is checked by a compiler. Unverifiable code must be trusted by the system and is limited to the hardware abstraction layer (HAL), kernel, and parts of the run-time system.
Který systém dnes používá capabilities? Maximum, na které se zmohli vývojáři různých dostupných OS je ACL. Ta bezpečnost, o které jsem mluvil bude vycházet z toho, že se používá managed kód a odpadne tak mnoho ze starých známých problémů.
Mikrokernelová architektura je v praxi používána v systémech, které vycházejí z NeXT STEPu, těch po světě běží dost možná i víc, než Linuxů.
Unmanaged kód se neobjeví (tedy až na velmi úzkou oblast). Code in Singularity is either verified or trusted. Verified code's type and memory safety is checked by a compiler. Unverifiable code must be trusted by the system and is limited to the hardware abstraction layer (HAL), kernel, and parts of the run-time system.
Který systém dnes používá capabilities? Maximum, na které se zmohli vývojáři různých dostupných OS je ACL. Ta bezpečnost, o které jsem mluvil bude vycházet z toho, že se používá managed kód a odpadne tak mnoho ze starých známých problémů.
Mikrokernelová architektura je v praxi používána v systémech, které vycházejí z NeXT STEPu, těch po světě běží dost možná i víc, než Linuxů.
uživatel si přál zůstat v anonymitě
8. 11. 2005 19:32
Nový
Re: Nesrovnávejte s HURDem
celé vlákno
Microkernel architekture je sloziteji programovatelna nez monolitni (Doporucuju diskusi Torvalds vs. Tanenbaum). Singularity by mela byt cisty mikrokernel, tudiz vic potencialnich chyb. Managed kod pomuze od urcitych chyb (range overflows atp) ale nepomuze prevenci logickych chyb. Prave implementace pres fronty zprav, coz je jeden z hlavnich rysu mikrokernelu vede k vyssi pravdepodobnosti celkem zavaznych chyb - napriklad deadlockum.
Sam priznavate, ze ve velmi uzke oblasti kod bude unmanaged. Tedy dalsi "vyhoda" pada. Jakmile to tam jednou je - jsou to problemy.
Ktery system pouziva capabilities? Co takhle systemy s vyssim stupnem zabezpeceni? Napriklad od IBM - AS/400.
Zkuste mi jmenovat jeden jediny vykonny OS urcen pro servry, ktery by byl mikrokernel. Zatim "uspesne" mikrokernel systemy jsou Mac OSX, ktery ma problemy s thread managementem a u servrovych aplikacich je na tom bidne, nebo QNX ktery je urcen uplne pro jiny segment nez je server nebo desktop.
Sam priznavate, ze ve velmi uzke oblasti kod bude unmanaged. Tedy dalsi "vyhoda" pada. Jakmile to tam jednou je - jsou to problemy.
Ktery system pouziva capabilities? Co takhle systemy s vyssim stupnem zabezpeceni? Napriklad od IBM - AS/400.
Zkuste mi jmenovat jeden jediny vykonny OS urcen pro servry, ktery by byl mikrokernel. Zatim "uspesne" mikrokernel systemy jsou Mac OSX, ktery ma problemy s thread managementem a u servrovych aplikacich je na tom bidne, nebo QNX ktery je urcen uplne pro jiny segment nez je server nebo desktop.
9. 11. 2005 21:08
Nový
Výkon
celé vlákno
Ani ten výkon nemusí být zlý:
http://blogs.zdnet.com/Murphy/index.php?p=459
Musím si v klidu to PDF prostudovat do detailů...
http://blogs.zdnet.com/Murphy/index.php?p=459
Musím si v klidu to PDF prostudovat do detailů...
Mikulas Patocka (neregistrovaný)
8. 11. 2005 16:17
Nový
capabilities
celé vlákno
"Dale by mne zajimalo, jak muze byt system bez capabilities radove
bezpecnejsi nez system s capabilities."
Ono plati zasadni pravidlo --- pridavani bezpecnostnich
featur nezvysuje bezpecnost.
Napr. linux kernel 2.2 mel v sobe diru, ktera se dala pouzit
k ziskani roota, a tato dira vznikla prave kvuli capabilities.
--- pridanim bezpecnostnich featur zvysis pravdepodobnost
vyskytu bugu v nektere z nich, a tim snizis bezpecnost.
Jinak spousta capabilities jsou proste security-through-obscurity
--- kdyz utocnik ziska danou capability, tak muze stejne
ziskat neomezena prava, ale ma to tezsi. Priklad:
CAP_SYS_PTRACE --- utocnik muze modifikovat libovolny proces
vlastneny rootem a nechat ho udelat co chce
CAP_SYS_RAWIO --- utocnik pristoupi na port harddisku a
zapise si na filesystem co chce (eventualne muze pres dma
cist/zapisovat pamet)
CAP_CHOWN --- muze zapisovat do libovolneho souboru a nejakeho
daemona pak donuti, co dela
CAP_DAC_OVERRIDE --- totez
CAP_IPC_OWNER --- muze modifikovat sdilenou pamet a ziskat
kontrolu nad libovolnym procesem, co ji pouziva
CAP_MKNOD --- vyrobi si node treba na /dev/hda a pak si do
nej zapise, co bude chtit
CAP_SETUID --- ziska libovolny uid (treba root)
CAP_SETGID --- ziska libovolny gid
CAP_SYS_ADMIN --- namountuje si filesystem s inodou popisujici
block device a pres nej muze neomezene pristupovat na disk
CAP_SYS_CHROOT --- udela hard-link na suid program do adresare,
do ktereho se bude chrootovat, ale podstrci mu vlastni .so
knihovny.
bezpecnejsi nez system s capabilities."
Ono plati zasadni pravidlo --- pridavani bezpecnostnich
featur nezvysuje bezpecnost.
Napr. linux kernel 2.2 mel v sobe diru, ktera se dala pouzit
k ziskani roota, a tato dira vznikla prave kvuli capabilities.
--- pridanim bezpecnostnich featur zvysis pravdepodobnost
vyskytu bugu v nektere z nich, a tim snizis bezpecnost.
Jinak spousta capabilities jsou proste security-through-obscurity
--- kdyz utocnik ziska danou capability, tak muze stejne
ziskat neomezena prava, ale ma to tezsi. Priklad:
CAP_SYS_PTRACE --- utocnik muze modifikovat libovolny proces
vlastneny rootem a nechat ho udelat co chce
CAP_SYS_RAWIO --- utocnik pristoupi na port harddisku a
zapise si na filesystem co chce (eventualne muze pres dma
cist/zapisovat pamet)
CAP_CHOWN --- muze zapisovat do libovolneho souboru a nejakeho
daemona pak donuti, co dela
CAP_DAC_OVERRIDE --- totez
CAP_IPC_OWNER --- muze modifikovat sdilenou pamet a ziskat
kontrolu nad libovolnym procesem, co ji pouziva
CAP_MKNOD --- vyrobi si node treba na /dev/hda a pak si do
nej zapise, co bude chtit
CAP_SETUID --- ziska libovolny uid (treba root)
CAP_SETGID --- ziska libovolny gid
CAP_SYS_ADMIN --- namountuje si filesystem s inodou popisujici
block device a pres nej muze neomezene pristupovat na disk
CAP_SYS_CHROOT --- udela hard-link na suid program do adresare,
do ktereho se bude chrootovat, ale podstrci mu vlastni .so
knihovny.
8. 11. 2005 16:25
Nový
Re: capabilities
celé vlákno
Hnáno ad absurdum nepotřebujeme ani ACL nebo rwx práva...
michich (neregistrovaný)
8. 11. 2005 16:28
Nový
Re: capabilities
celé vlákno
To ale popisujete linuxove capabilities, ktere maji s pravymi capabilities spolecny jen nazev. Viz http://en.wikipedia.org/wiki/Capability-based_security
Bohdan (neregistrovaný)
8. 11. 2005 19:38
Nový
Re: capabilities
celé vlákno
To urcite muze, ale vemte si pokud zakazete capabilities pro roota. Dokud neziska capabilities, nemuze se systemem nic moc delat. Bez capabilities pokud ziskate roota, jste kral.
Jinak se slozitosti samozrejme roste moznost chyb, ale vemte svuj argument do extremu. S jakymi featurama OS bychom dosahli nejbezpecnejsiho OS?
Jinak se slozitosti samozrejme roste moznost chyb, ale vemte svuj argument do extremu. S jakymi featurama OS bychom dosahli nejbezpecnejsiho OS?
uživatel si přál zůstat v anonymitě
8. 11. 2005 9:50
Nový
super clanok
celé vlákno
strucne, jasne, vystizne... a detaily v odkazoch.

