<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Bloog.sk &#187; Singularity</title>
	<atom:link href="http://www.bloog.sk/category/software/singularity/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bloog.sk</link>
	<description>recenzie a kvalitné informácie z digitálneho sveta</description>
	<lastBuildDate>Sun, 26 Jun 2011 20:30:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Singularity: Lepší Windows &#8211; nová generácia OS od MS</title>
		<link>http://www.bloog.sk/2009/10/25/singularity-lepsi-windows-nova-generacia-os-od-ms/</link>
		<comments>http://www.bloog.sk/2009/10/25/singularity-lepsi-windows-nova-generacia-os-od-ms/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 11:43:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Singularity]]></category>

		<guid isPermaLink="false">http://www.bloog.sk/?p=916</guid>
		<description><![CDATA[Skutočne, nový operačný systém od Microsoftu sa volá Singularity. Nikdy nespadne, je odolný voči vírusom a rýchlejší ako Windows, Mac OS alebo Linux. Dokonca je teraz k dispozícii zadarmo. Napriek tomu nie je pre užívateľa vhodný. Prezradím prečo. Pred šiestimi rokmi sa Microsoft rozhodol, že vyvinie úplne nový typ operačného systému. Projekt pomenoval Singularity. Tím [...]]]></description>
			<content:encoded><![CDATA[<p>Skutočne, nový operačný systém od Microsoftu sa volá Singularity. Nikdy nespadne, je odolný voči vírusom a rýchlejší ako Windows, Mac OS alebo Linux. Dokonca je teraz k dispozícii zadarmo. Napriek tomu nie je pre užívateľa vhodný. Prezradím prečo.</p>
<p>Pred šiestimi rokmi sa Microsoft rozhodol, že vyvinie úplne nový typ operačného systému. Projekt pomenoval Singularity. Tím vývojárov preto začal s písaním úplne nového operačného systému s jediným cieľom: musí byť nepriestrelný. V minulom roku bol projekt Singularity predstavený na vývojárskom veľtrhu TechFest. Microsoft však zdôrazňoval: Singularity nie je ďalší Windows. Je to predovšetkým studňa nápadov a technických inovácií. Microsoft tým chce tým najskôr utlmiť záujem o nový operačný systém. Teraz je potrebné sa marketingovo orientovať na Windows 7. Tie sú ešte postavené na úplne inej architektúre. Kto si chce nový operačný systém vyskúšať, môžete si stiahnuť obraz, a spustiť vo Microsoft Virtual PC 2007. </p>
<p>Najdôležitejšou otázkou, ktorá každého napadne, je to, ako bezpečný je nový operačný systém. Bežným užívateľom by nový systém mohol na tvári vykúzliť úsmev. Výrobcovia antivírusov už snáď ani nebudú potrební. Uľahčia najmodernejšie technológie tiež ovládanie produktu? </p>
<p>Utajený vývoj systému je potrebný: Windows, Mac OS, Linux &#8212; prakticky každý desktopový systém je vytvorený z veľmi starej architektúry. Ich koncepcia pochádza z čias, keď si nikto nepredstavoval nič ako internet alebo počítačový vir a bežný počítač bol veľký ako serverová skriňa.</p>
<p>Veľká časť tradičných operačných systémov (predovšetkým jadra) je naprogramovaná v jazyku C. To by už dnes vývojári nerobili, pretože príkazy v jazyku C a v jeho nasledovníkovi C++ pracujú priamo s registrami procesora a operačnou pamäťou. Výhodou je vysoký výkon takéhoto systému, súčasne však vzniká pri písaní tak obrovského množstvo kódu veľa chýb. Spustený kód sa potom môže zacyklit alebo začne vykonávať úplne iné operácie, ako programátor zamýšľal. </p>
<p>Typickým príkladom sú rôzne pretečenia pamäte: program je uložený v operačnej pamäti a začne prepisovať časti pamäte, ktoré mu už nepatria, alebo naopak &#8211; Malware prepíše určitú časť pamäte bežného programu, ktorý potom pri vykonávaní kódu začne spôsobovať príkazy, ktoré mu malware podstrčil. Nič z toho by nebolo možné, keby programy neboli písané lajdácký. Kvôli ledabolo napísaným aplikáciám sa potom operačný systém stáva nebezpečným.</p>
<h3>Kód: Bezpečný programovací jazyk</h3>
<p>V Singularity je tento problém vyriešený: v systéme je možné písať len bezpečný programový kód, ktorý neprevýši svoju aplikáciu, a nikto nemôže aplikácii podstrčiť iný kód. Môže za to úplne nový Runtime. Ten vlastne pre každú aplikáciu vytvorí špeciálny virtuálny stroj, v ktorom potom aplikácia beží. Programovacími jazykmi s podporou Runtimu sú predovšetkým Java a všetky .NET jazyky, ako napríklad C#. Tiež kód Singularity je takmer celý vytvorený v C#. Je však v trochu zmenenej forme a nesie meno Sing#. </p>
<p>Na rozdiel od C a C++ neprekladá kompilátor programový kód priamo do strojového kódu. Miesto toho ho prekladá do tzv byte kódu. Výhoda: Vďaka tomuto medzikroku môže systém kód vyskúšať a zamedziť tak rôznym formám pretečenia pamäte. To ale samozrejme stojí nejaký výkon. Čím sa to snažia Singularity dobehnúť, to sa dočítate v odseku &#8220;Výkon&#8221;.<br />
</p>
<h3>Ochrana: Všetky procesy izolované</h3>
<p>Na rozdiel od súčasných operačných systémov môže Singularity od seba na softvérovej úrovni oddeliť a izolovať bežiace procesy. Vďaka tomu beží aplikácia, vrátane knižníc, úplne samostatne. O túto funkciu sa stará Software Isolated Process (SIP), ktorý tiež aplikáciám prideľuje požadované zdroje. Operačná pamäť potom kompletne<br />
spravuje SIP. Nepoužitá pamäť je prichystaná pre ďalšie aplikácie. </p>
<p>Runtime každého SIP beží úplne nezávisle na systéme a spúšťa sa na žiadosť aplikácie. To je veľký rozdiel oproti Linuxom alebo Windows, kde beží iba jeden Runtime pre všetky programy. Ak sa spustí napríklad viac Java appletov, potom je za nich zodpovedný len jeden Java Runtime Environment (JRE). Ak applet spadne, zhodí so sebou<br />
JRE a aj všetky ostatné applety, ktoré v JRE bežia. V Singularity k ničomu takému nedôjde. Ak prestane fungovať jeden SIP, zvyšku systému sa to nijako nedotkne. Singularity takto navyše chránia aj jednotlivé aplikácie. Napríklad ak je ActiveX komponenta, ako súčasť Internet Exploreru, napadnutá malwarom a mohla by poškodiť systém, bude v Singularity ukončený len SIP tejto komponenty. Samotný browser zostane nedotknutý. </p>
<h3>Kanály: Efektívna komunikácia</h3>
<p>Vzhľadom k tomu, že SIP každej aplikácie beží do značnej miery nezávisle, musela sa vyriešiť komunikácia s jadrom. Tu obstaráva Application Binary Interface (ABI). Pritom si vystačí len s veľmi málo povelmi. Pre porovnanie: ABI v Singularity prichádza s 163 funkciami, Windows API (Aplication Programming Interface) obsahuje okolo<br />
14 000 príkazov. Zapuzdrené SIP komunikujú (aj medzi sebou) len prostredníctvom kanálov. Tie vedú cez oblasť, ktorú kontroluje jadro &#8212; Exchange Heap. Tu sa tiež<br />
nachádzajú súbory, s ktorými procesy práve pracujú. Každý súbor na Exchange Heap patrí vždy len jednému procesu. Zdieľaná pamäť (spoločne využívaná oblasť operačnej pamäte) je potom v Singularity úplne zakázaná, povolené je len čítanie cudzej pamäti.</p>
<p>Keď internetový prehliadač stiahne súbor z internetu, uloží ho na Exchange Heap. Aby ho mohol uložiť na disk, musí prehliadač otvoriť kanál na ovládači súborového<br />
systému. Súborový systém potom komunikuje kanálom s ovládačom pevného disku, a potom dôjde k uloženiu súboru. Zároveň kanálom odovzdá SIP informácie o vlastníkovi súboru. </p>
<p>Kanály v tejto podobe sa zatiaľ neobjavili v žiadnom inom operačnom systéme. V blízkej budúcnosti však bude veľmi ťažké nimi operačný systém vybaviť. I preto<br />
sa zrejme Microsoft bráni označovaniu &#8220;Ďalšia Windows&#8221;. Veľa práce totiž čaká i vývojárov aplikácií. Súčasné aplikácie, ako treba Photoshop alebo Nero, nový systém nebude podporovať, pretože sú napísané v nezabezpečenom jazyku, ako je C alebo C++. Dokonca ani Java alebo .NET aplikácie nie sú bez ďalších úprav použiteľné,<br />
pretože im chýba podpora kanálov. </p>
<h3>Stabilita: Modrá obrazovka je nemožná</h3>
<p>Teraz k jadru operačného systému. V ňom sa nachádzajú ovládače, ktoré tvoria najspoľahlivejšiu časť systému. 85 percent všetkých pádov systému zaviní chybný ovládač. A chyby v Linuxových ovládačoch sú sedemkrát častejšie ako chyby vo zvyšku kódu jadra.</p>
<p>Problémy s ovládačmi sú z veľkej časti spôsobené tým, že systém nad nimi nemá kontrolu. Ovládač môže spustiť kód, prideliť zdroje a spôsobiť konflikt s inou systémovým komponentom. Navyše veľa ovládačov beží s vysokými systémovými právami. Keď potom taký ovládač spadne, väčšinou to znamená pád celého systému. </p>
<p>Singularity má prichystané dve opatrenia, ktoré čierne scenáre eliminujú. Prvým je Manifest, ktorý musí byť súčasťou každej inštalačnej rutiny ovládača. Manifest nie je nič iného ako XML súbor, v ktorom je napísané, aký hardvér ovládač vyžaduje. Vďaka tejto informácii môže Singularity už vopred rozhodnúť, či daný ovládač vôbec môže s nainštalovaným hardvérom fungovať. Tiež sa tým eliminuje konflikt rôznych ovládačov. Druhým opatrením je samotné umiestnenie ovládača. Nainštalovaný ovládač už nie je súčasťou jadra systému, ale beží ako obyčajná aplikácia zabalená v SIP. Ak ovládač kvôli programovej chybe spadne, nemá to žiadny vplyv na jadro. Singularity jednoducho spustí ovládač znova a informuje užívateľov o probléme. </p>
<p>To je výhoda mikrojadrá. Čo možno najviac komponentov sa spúšťa až v okamihu, kedy sú potrebné. Mikrojadro samozrejme nie je nič nové. Objavilo sa už vo výukovom<br />
systéme Minix v roku 1987. Nasadenie v operačnom systéme sa však vtedy nedočkalo &#8211; až v Singularity. Dôvod: Systémy s mikrojadrom sú príliš pomalé.<br />
</p>
<h3>Výkon: Odstránenie brzdy</h3>
<p>Všetky x86 procesory majú chránené režimy, tzv Ringy. Celkom sú štyri, operačné systémy však používajú len Ring0 a Ring3. Zatiaľ čo procesy s Ring0 majú prístup ku všetkým častiam CPU a operačnej pamäte, procesy s Ring3 nemajú žiadny priamy prístup k hardvéru. </p>
<p>Vo Windows, Linux a Mac OS bežia všetky systémovo kritické procesy, ako sú potrebné ovládače, v Ring0 resp v kernel modu. Ostatné aplikácie, ako je potrebné Firefox, potom beží v user modu. Vlastne je to tak správne. Je tu však jedno &#8220;ale&#8221;: Hardvérové ochrana uprednostňuje monolitické jadro, v ktorom sú všetky ovládače v kernel modu. A práve to robí operačný systém zraniteľným. </p>
<p>Mikrojadro má jednoduché riešenie &#8212; ovládače sa spustia v Ring3. Systém zostane bez problémov stabilný, len sa tým zníži výkon: požiadavka aplikácie v Ring3 na systém musňi prebublať do Ring0, čo stojí čas, pretože Ring3 nemá priamy prístup k zdrojom. Koľko času a výkonu sa takto stratí? Nie zrovna málo. Jedno volanie cez hranice ring je päťkrát až desaťkrát pomalšie ako volanie vo vnútri ringu.</p>
<p>Preto sú monolitické jadrá, ktoré komunikujú len veľmi málo cez ring, rýchlejšie ako prichádzajúce mikrojadrá. Singularity sa však chránia softvérovo pomocou vyššie opísaných SIP, takže Ringy vôbec nepotrebuje. Inak povedané: Singularity beží kompletne v kernel móde, a vďaka tomu je oveľa rýchlejší ako všetky ostatné systémy. </p>
<p>Microsoftský tím pracujúci na Singularity meral, o koľko je softvérová ochrana bežiaci v kernel móde rýchlejšia ako použitie ring. Výsledok: Singularity je asi o 30% rýchlejší. </p>
<p>Windows, Linux a ďalšie systémy by tak mohli už teraz bez ďalších zložitých optimalizácií plynúť až o 30% rýchlejšie. Musela by sa však vyradiť hardvérová ochrana &#8211; čo by zvýšilo riziko pádu. Singularity sa nevzdáva vysokej ochrany a pritom ide o štíhly systém. Všetky tieto faktory vedú k excelentným výsledkom, čo sa týka výkonu. Aplikácie sú navyše, oproti tým na ostatných systémoch, znevýhodnené &#8220;Bezpečným programovaním&#8221;. Singularity sa však môžu v jednotlivých prípadoch vrátiť na hardvérovú ochranu. K tomu má systém špeciálny Sandbox, v ktorom môže kontrolovať kód, či nejde o malware. Antivir tak bude skutočne zbytočný. </p>
<p>Dobrú prácu odviedli vývojári Microsoftu. V súčasnosti je Singularity len v podobe modrého okna s príkazovým riadkom, experimentom je však tento nový systém úplne otvorený. Rozhodne sa bude konať o nástupcu Windows. Bude to úplne nová generácia operačného systému.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.bloog.sk/2009/10/25/singularity-lepsi-windows-nova-generacia-os-od-ms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using memcached
Page Caching using memcached (user agent is rejected)
Database Caching 11/25 queries in 0.014 seconds using memcached
Object Caching 271/281 objects using memcached
Content Delivery Network via N/A

Served from: www.bloog.sk @ 2012-02-08 22:17:10 -->
