<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Личен блог на Ники Атанасов</title>
	<atom:link href="http://batetobg.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://batetobg.wordpress.com</link>
	<description>Just another WordPress.com weblog</description>
	<lastBuildDate>Wed, 24 Jun 2009 22:03:06 +0000</lastBuildDate>
	<language>bg</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='batetobg.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Личен блог на Ники Атанасов</title>
		<link>http://batetobg.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://batetobg.wordpress.com/osd.xml" title="Личен блог на Ники Атанасов" />
	<atom:link rel='hub' href='http://batetobg.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Файлове и каталози</title>
		<link>http://batetobg.wordpress.com/2009/06/24/%d1%84%d0%b0%d0%b9%d0%bb%d0%be%d0%b2%d0%b5-%d0%b8-%d0%ba%d0%b0%d1%82%d0%b0%d0%bb%d0%be%d0%b7%d0%b8/</link>
		<comments>http://batetobg.wordpress.com/2009/06/24/%d1%84%d0%b0%d0%b9%d0%bb%d0%be%d0%b2%d0%b5-%d0%b8-%d0%ba%d0%b0%d1%82%d0%b0%d0%bb%d0%be%d0%b7%d0%b8/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 22:03:06 +0000</pubDate>
		<dc:creator>batetobg</dc:creator>
				<category><![CDATA[Компютри и Интернет]]></category>

		<guid isPermaLink="false">http://batetobg.wordpress.com/?p=24</guid>
		<description><![CDATA[Общи положения Всички компютърни приложения трябва да съхраняват ограничен обем от данни в собствено адресно пространство. Обемът на това пространство е ограничен от размера на виртуалното адресно пространство. За някои приложения това е достатъчно за други не. Освен това след превключване на работата на процеса, съхраняваната информация в адресното пространство се изгубва. За много приложения [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=24&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong><em>Общи положения</em></strong></p>
<p>Всички компютърни приложения трябва да съхраняват ограничен обем от данни в собствено адресно пространство. Обемът на това пространство е ограничен от размера на виртуалното адресно пространство. За някои приложения това е достатъчно за други не. Освен това след превключване на работата на процеса, съхраняваната информация в адресното пространство се изгубва. За много приложения тази информация трябва да се съхранява след спиране на компютъра.</p>
<p>Често възниква необходимост няколко процеса да получат достъп до едни и същи данни. За решаването на тази задача трябва да се отделят данните от процеса.</p>
<p><strong>Към системите за дълговременно съхраняване на данните се предявяват следните изисквания:</strong></p>
<ol>
<li>Устройствата трябва да съхраняват големи обеми от данни;</li>
<li>Информацията трябва да се съхранява и след прекратяване на работата с тях (след изключване на захранването);</li>
<li>Няколко процеса требва да могат да получат едновременно достъп до информацията.</li>
</ol>
<p>Обикновено тази информация се съхранява на дискове и други външни носители във вид на <em>файлове</em><a href="http://batetobg.wordpress.com/wp-admin/#_ftn1"><strong><strong>[1]</strong></strong></a>. Процесите могат да създават нови файлове или да четат стари такива. Информацията съхранявана във файловете трябва да бъде устойчива, т.е. върху нея не трябва да оказват влияние такива явления като създаване или прекратяване работата на някакъв процес. Файлът трябва да се изтрива само тогава, когато неговият притежател пожелае това.</p>
<p><em><strong>Файловата система</strong></em> е част от операционната система предназначена да организира ефективна работа с данните. За да се облекчи взаимодействието между потребителя и сложния хардуер е създаден абстрактният модел наречен файлова система.</p>
<p>Основната идея за използване на външната памет се състои в следното. Операционната система дели паметта на блокове с фиксиран размер, например 4096 байта. Файлът обикновено представлява неструктурирана последователност от еднобайтови записи. Файлът се съхранява в поредица от блокове,съдържащи данните на файла, които са организирани във вида на свързан списък и са изнесени в отделна таблица на паметта. В UNIX адресите на блоковете се съхраняват в отделен блок на външната памет, т.н. индекс или индексен възел. Този метод, наречен още индикация, е най разпространеният за произволен достъп до записите на файла.</p>
<p>Файловата система позволява с помощта на система от справочници (каталози, директории) да свърже уникалното име на файла с блоковете от втората памет, където са данните на файла. Йерархичната структура на каталозите, използвана за управление на файловете е друг пример за индексна структура. В този случай каталозите или папките играят ролята на индекси, всеки от които съдържа указатели към своите подкаталози. От тази гледна точка файловата система е един голям индексиран файл. Заедно с файловете и структурните данни, използвани за управление на файловете (такива като каталози, дескриптори на файловете, различни таблици за разпределение на външната памет), понятието „файлова система” включва и програмни средства реализиращи различни операции с файловете.</p>
<h3><span style="text-decoration:underline;">Основни функции на файловата система</span></h3>
<p> Идентификация на файловете</p>
<ol>
<li>Връзка между имената на файловете и мястото, където е разположен във външната памет.</li>
<li>Разпределяна на външната памет между файловете. За работата на конкретен.файл потребителят не трябва да знае къде именно на външния носител е разположен същият.</li>
<li>Осигуряване на надеждност и отказоустойчивост. Информацията може да е много по-скъпа от компютъра.</li>
<li>Осигуряване на защита от несанкциониран достъп.</li>
<li>Осигуряване на съвместен достъп към файловете. Да не се налага на потребителите да прилагат специални механизми за осигуряване на синхронен достъп до файловете.</li>
<li>Осигуряване на висока производителност</li>
</ol>
<p><strong><em>“Файловата система”</em></strong> – това е част от общата система за управление на паметта, отговаряща предимно за управлението на файловете, които се съхраняват във външната памет. Тя отговаря също за осигуряване на възможност да се съхранява частна или лична информация и за контролирано разделяне на информацията между много потребители.”</p>
<p><em><strong>Файловата система</strong></em> е най-видимата част на операционната система. Тя представлява механизъм на онлайн съхранение и достъп до данни и програми за всички потребители на системата. Важен аспект в организацията на файловата система е стойността на операциите за обмен с вторичната памет. Достъпът до информацията на диска е в 100 000 пъти по-бавен от достъпа до оперативната памет. По такъв начин критерии за изчислителната сложност на алгоритмите, работещи с външна памет е броя на обръщенията към диска.</p>
<p>В настоящата тема ще разгледаме въпросите свързани със структурата, паметта, защитата на файловете, операциите които се изпълняват с файловете, организацията на файловия архив.</p>
<h3><em>Общи сведения за файловете</em></h3>
<h3>Файловете са абстрактни обекти. Тяхната задача е да съхраняват информация. При създаване на файла му се дава име. След записване на файла, същият продължава да съществува и чрез своето име е достъпен за използване от други процеси. За да подчертаем още веднъж важността на файловете, ще цитираме Кен Томсън , разработчикът на операционната система UNIX по отношение на същата: “Всичко е файл.”. С файловете може да се извършват, като с едно цяло, следните манипулации като:</h3>
<ul>
<li><strong><em>Отваряне (open)</em></strong><em> – </em>да се подготви файла за обръщане към него.</li>
<li><strong><em>Затваряне (close)</em></strong><em> – </em>да се забрани по-нататъшно общуване с файла, докато не бъде отново отворен.</li>
<li><strong><em>Създаване (create)</em></strong><em> – </em>да се осигури създаването на нов файл.</li>
<li><strong><em>Унищожаване (destroy)</em></strong><em> – </em>да се унищожи файла.</li>
<li><strong><em>Копиране (copy)</em></strong><em> – </em>да се създаде още един екземпляр на същетвуващия файл с ново име.</li>
<li><strong><em>Преименуване (rename)</em></strong><em> – </em>да се измени името на файла.</li>
<li><strong><em>Извеждане (list)</em></strong><em> – </em>да се разпечата файла на листинг или да се възпроизведе съдържанието на файла на екрана.</li>
</ul>
<p> Могат да се извършват и манипулации с индивидуални елементи от данни в рамките на файла с помощта на оператори, като:</p>
<p> <strong><em>Прочитане (read)</em></strong><em> – </em>осигурява извеждането на елементи от данни на файла в процеса.<br />
<strong><em>Записване (write)</em></strong><em> – </em>осигурява извеждане на данни от процеса във файла.<br />
<strong><em>Обновяване (update)</em></strong><em> – </em>осигурява модификация на съществуващите елементи от данни.<br />
<strong><em>Вмъкване (insert)</em></strong><em> – </em>осигурява добавяне на нови елементи от данни.<br />
<strong><em>Изключване (delete)</em></strong><em> – </em>осигурява изключване на елементи от данни от файла.</p>
<h2 style="text-align:left;">Именуване на файлове</h2>
<p style="text-align:left;"><strong> </strong>Правилата за наименуване на файловете зависи от операционната система. Допустимите символи са букви, цифри, и някои други символи. За различните операционни системи това подмножество от символи е различно. В някои файлови системи например UNIX, се различават големи и малки букви, а в други, например Windows, това е без значение.</p>
<p style="text-align:left;">Операционната система <strong>Windows 95</strong> и <strong>Windows 98</strong> изискват файловата система на MS-DOS и са наследили много свойства, включително и наименованието на файловете. ОС Windows NT и Windows 2000 също поддържат файловата система на MS-DOS и са наследили нейните свойства. Обаче последните две системи имат своя файлова система (NTFS<a href="http://batetobg.wordpress.com/wp-admin/#_ftn1">[1]</a>), при която наименуването на файловете е в Unicode<a href="http://batetobg.wordpress.com/wp-admin/#_ftn2">[2]</a>. В съответствие със стандарта POSIX<a href="http://batetobg.wordpress.com/wp-admin/#_ftn3">[3]</a>, популярните операционни системи оперират с удобни за потребител имена с дължина до 255 символа.</p>
<p style="text-align:left;">В много операционни системи имената на файловете се състоят от две части – име и разширение. Обикновено разширението означава типа на файла. Така например в MS-DOS името на файла съдържа от 1 до 5 символа, а разширението до 3 символа. В UNIX дължината на разширението зависи от потребителя. Освен това, файлът може да има няколко разширения, например</p>
<p style="text-align:left;"> <strong>prog.c.z,</strong></p>
<p style="text-align:left;"> което означава, че файлът <strong>prog.c</strong><strong> </strong>е компресиран във файла <strong>prog.c.z.</strong></p>
<p style="text-align:left;">В UNIX разширенията не са задължителни и не принуждават потребителя строго да се придържа към тях. Например файлът <strong>file.txt</strong> може да бъде текстов файл, но това е по скоро напомняне за потребителя, отколкото за операционната система. От друга страна, компилатора на езика С е възможно да компилира файлове, които нямат разширение <strong>.с</strong>.</p>
<p style="text-align:left;">В Windows разширенията на файловете са от съществено значение и всяко разширение има определена привързаност към едни или други системни или приложни програми. Потребителят или процесът  може да регистрират разширение в операционната система и по този начин да привърже определена програма към дадено разширение. При двойно щракане с мишката върху файла <strong>file.doc</strong> операционната система стартира Microsoft Word и отваря файла <strong>file.doc</strong>.</p>
<h3 style="text-align:left;"> Структура на файловете</h3>
<p style="text-align:left;"> Файловете могат да бъдат структурирани по няколко различни начина. Три типа структури са показани на фиг. 6.1. Файлът на фиг. 6.1(а) представлява неструктурирана последователност от байтове. В този случай операционната система не се интересува от съдържанието на файла. Всичко, което тя вижда – това са байтове. Значението на тези байтове се предава на програмно ниво на потребителя.Такъв подход се използва както в операционната система UNIX, така и в Windows. Моделът на фиг. 6.1(б) представлява последователност от записи с фиксиран дължина. Всеки запис има строго определена вътрешна структура. Третият вариант на файлова структура е показан на фиг. 6.1(в). Файлът представлява дърво от записи. Не е задължително записите да са с еднаква дължина и структура. Всеки запис в строго определена позиция съдържа ключово поле, което осигурява бързо търсене по зададения ключ.</p>
<p style="text-align:left;">При добавяне на нов запис не потребителят, а операционната система решава къде да се добави записа. Такъв тип файлове принципиално се отличават от преструктурираните потоци байтове, използвани в UNIX и Windows, но те широко се използват в мейнфреймните системи.</p>
<p style="text-align:left;"><img class="aligncenter size-full wp-image-25" title="Структура на файловете" src="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b5.jpg?w=500&#038;h=194" alt="Структура на файловете" width="500" height="194" /></p>
<p style="text-align:left;"><strong>Фиг. 6.1. Три типа файлове: (а) последователност от байтове;<br />
</strong><strong>(б) последователност от записи; (в) дърво</strong></p>
<h2 style="text-align:left;"> Типове файлове</h2>
<p style="text-align:left;">Операционните системи поддържат различни типове файлове. В UNIX и Windows се прави разлика между обикновените файлове и каталози. Към обикновените файлове се отнасят всички файлове, съдържащи информация на потребителя. Всички файлове от фиг. 6.1 са обикновени файлове. <strong><em>Каталозите</em></strong> са системни файлове, осигуряващи поддръжка на структурата на файловата система.</p>
<p style="text-align:left;"><strong><em>Символните специални файлове</em></strong> имат отношение към входа и изхода и се използват за диалог с последователни входно-изходни устройства – терминали, принтери и мрежи. Блоковите специални файлове се използват за моделиране на дискове.</p>
<p style="text-align:left;">Обикновените файлове са или ASCII-файлове или двоични файлове. ASCII-файловете се състоят от текстови редове. За край на реда в някои системи се използва „връщане на каретка” в UNIX се използва символа „нов ред”, а в MS-DOS се използват и двата символа. Редовете не е задължително да са еднакво дълги.</p>
<p style="text-align:left;">ASCII-файловете могат да се изобразяват на екран или да се отпечатват без никакви преобразувания. Също така могат да се редактират практически с всеки текстов редактор.</p>
<p style="text-align:left;">Двоичните имат вътрешна структура. На фиг. 6.2 е показан обикновен изпълним двоичен файл за една от версиите на UNIX. Въпреки че файлът представлява последователност от байтове, операционната система ще изпълнява файла само, ако той отговаря на съответния формат.</p>
<p style="text-align:left;">Файлът се състои от 5 раздела:</p>
<p style="text-align:left;"> </p>
<ul style="text-align:left;">
<li><strong>заглавие </strong></li>
<li><strong>текст</strong></li>
<li><strong>данни</strong></li>
<li><strong>релокационни битове</strong></li>
<li><strong>таблица на символите</strong></li>
</ul>
<p style="text-align:left;"><strong> </strong></p>
<p style="text-align:left;">Заглавието на файла се състои от:</p>
<p style="text-align:left;"> </p>
<ul style="text-align:left;">
<li><strong>идентификатор на файла – „магическо число”</strong>
<ul>
<li><strong>размер на текста</strong></li>
<li><strong>размер на данните </strong></li>
<li><strong>размер на релокационния блок </strong></li>
<li><strong>размер на таблицата със символите</strong></li>
<li><strong>адрес на входната точка на изпълнимия файл</strong></li>
<li><strong>флагове</strong></li>
</ul>
</li>
</ul>
<p style="text-align:left;"><strong> </strong></p>
<p style="text-align:left;">След заглавието следва текста на програмата и данните. Те се зараждат в оперативната памет и се настройват за работа по входния адрес с помощта на битовете за релаксация. Таблицата със символите се използва за настройка.</p>
<p style="text-align:left;"> <img class="aligncenter size-full wp-image-26" title="Типове файлове" src="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b51.jpg?w=500" alt="Типове файлове"   /></p>
<p style="text-align:left;"> <strong>Фиг. 6.2. Типове файлове: (а) изпълним файл; (б) архивен файл.</strong></p>
<p style="text-align:left;">Вторият пример за двоичен файл представлява архивен файл от UNIX. Той се състои от компилирани библиотечни процедури.</p>
<p style="text-align:left;">Всяка процедура започва със заглавие състоящо се от име на модула, дата на създаване, собственик на файла, код за защита и размер.</p>
<p style="text-align:left;">Обикновено приложните програми, разпознават типа на файла по името на разширението в съответствие с общоприетите норми. Например, файловете с разширение <strong>.c</strong>, <strong>.pas,</strong> <strong>.txt</strong> са ASCCII файлове, файловете с разширение <strong>.exe</strong> са изпълними, файловете с разширения <strong>.obj</strong>, <strong>.zip</strong> са бинарни и т.н.</p>
<p style="text-align:left;"><strong>Видове достъп</strong></p>
<p style="text-align:left;">В старите операционни системи се използва само <em>последователен достъп</em>. Файловете могат да бъдат прочетени само от  началото към края последователно четейки байт по байт, ред по ред или запис по запис.</p>
<p style="text-align:left;">Такъв метод за достъп се използва, ако файлът е записан на магнитна лента.</p>
<p style="text-align:left;">С появата на дисковете става възможно да се четат байтовете или записите на файла в произволен ред или да се направи достъп към запис по ключ. Файлове, на които записите могат да се прочетат в произволен ред се наричат <em>файлове с произволен достъп.</em></p>
<p style="text-align:left;">За достъп в произволна позиция на файла се използва операцията <em>seek</em><a href="http://batetobg.wordpress.com/wp-admin/#_ftn4"><strong><strong>[4]</strong></strong></a>, чрез което специален указател се позиционира в началото на необходимия запис за четене. След всяка операция <em>read<a href="http://batetobg.wordpress.com/wp-admin/#_ftn5"><strong>[5]</strong></a></em> се прочита един запис.Указателят се позиционира в началото на следващия запис.</p>
<p style="text-align:left;">Подобна логическа структура имат файловете в много файлови системи, например в UNIX и MS-DOS. Тази схема осигурява максимална гъвкавост и универсалност.</p>
<p style="text-align:left;">В частност, много системи за управление на данни съхраняват своите бази данни в обикновени файлове.</p>
<p style="text-align:left;">В първия вид файлове с произволен достъп записите са с фиксирана дължина. Всички записи имат еднаква вътрешна структура.</p>
<p style="text-align:left;">Другият вид файлове са с променлива дължина на записа. Всеки запис съдържа ключово поле с фиксирана позиция вътре в записа. (фиг. 6.3.)</p>
<p style="text-align:left;">Базовата операция в случая е четене на запис с определена стойност на ключа. Записите се разполагат във файла последователно, например, сортирани по стойностите на ключовото поле. Методът за достъп до записите на последователния файл се реализира по стойностите на ключовото поле. Методът се нарича <em>индексно-последователен.</em></p>
<p style="text-align:left;"> </p>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="36" valign="top">K<sub>1</sub></td>
<td width="112" valign="top"> </td>
<td width="44" valign="top">K<sub>2</sub></td>
<td width="140" valign="top"> </td>
<td width="40" valign="top">K<sub>3</sub></td>
<td width="180" valign="top"> </td>
</tr>
</tbody>
</table>
<p style="text-align:left;">                 r<sub>1</sub>                                    r<sub>2</sub>                                           r<sub>3</sub></p>
<p style="text-align:left;"> </p>
<p style="text-align:left;"><strong>Фиг. 6.3. Файл, състоящ се от записи с променлива дължина</strong></p>
<p style="text-align:left;">Ускоряване на достъпа във файла се осъществява чрез създаване на индексен файл. Индексът обикновено се намира на същото устройство, на което се намира и самият файл.</p>
<p style="text-align:left;">Индексът се състои от идентификатор и адрес на разположението на дадения запис. За намиране на записа, отначало се прави обръщение към индекса, откъдето се намира указателя към търсения запис.</p>
<p style="text-align:left;">Такива файлове се наричат <em>индексни</em>, а методът за достъп &#8211; <em>достъп с използване на индекс.</em></p>
<p style="text-align:left;">Да предположим, че имаме голям несортиран файл, съдържащ списък със служители във фирма трябва да се намери служителя на фирмата по неговата фамилия. На фиг. 6.4. е дадена илюстрация на решаването на дадения проблем чрез организиране на метод за достъп към файла с използване на индекс.</p>
<p style="text-align:left;">Главният фактор за увеличаване на скоростта за достъп е наличието на <em>излишък</em> в данните.</p>
<p style="text-align:left;">Методът за разделяне на дисковото устройство с помощта на индексни възли се използва в различни операционни системи. Използва се дървовидна организация на блоковете, при което, блоковете, които са файлове се представят във вид на листа в дървовидната структура, а всеки вътрешен възел съдържа указатели към множеството блокове на файла. За големите файлове индексът може да бъде прекалено голям. В този случай се създава индекс на индексния файл (блокове на междинното ниво или блокове с косвена адресация).</p>
<p style="text-align:left;"> </p>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="103" valign="top"><strong>Фамилия</strong></td>
<td width="48" valign="top"><strong>ID</strong></td>
</tr>
<tr>
<td width="103" valign="top">Ангелов</p>
<p>Асенов</p>
<p>&#8230;&#8230;&#8230;&#8230;&#8230;</p>
<p>Борисов</p>
<p>&#8230;&#8230;&#8230;&#8230;&#8230;</td>
<td width="48" valign="top"> </td>
</tr>
<tr>
<td width="103" valign="top">Василев</td>
<td width="48" valign="top">
<p align="center">3</p>
</td>
</tr>
<tr>
<td width="103" valign="top">&#8230;&#8230;&#8230;&#8230;..</p>
<p>Иванов</p>
<p>&#8230;&#8230;&#8230;&#8230;</td>
<td width="48" valign="top"> </td>
</tr>
</tbody>
</table>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="0" width="331">
<tbody>
<tr>
<td width="31" valign="top">ID</td>
<td width="72" valign="top">
<h6>Фамилия</h6>
</td>
<td width="60" valign="top">Име</td>
<td width="96" valign="top">Длъжност</td>
<td width="72" valign="top">Телефон</td>
</tr>
<tr>
<td width="31" valign="top">1</td>
<td width="72" valign="top"> </td>
<td width="60" valign="top"> </td>
<td width="96" valign="top"> </td>
<td width="72" valign="top"> </td>
</tr>
<tr>
<td width="31" valign="top">2</td>
<td width="72" valign="top"> </td>
<td width="60" valign="top"> </td>
<td width="96" valign="top"> </td>
<td width="72" valign="top"> </td>
</tr>
<tr>
<td width="31" valign="top">3</td>
<td width="72" valign="top">Василев</td>
<td width="60" valign="top">Петър</td>
<td width="96" valign="top">счетоводител</td>
<td width="72" valign="top">77 88 99</td>
</tr>
<tr>
<td width="31" valign="top">4</td>
<td width="72" valign="top"> </td>
<td width="60" valign="top"> </td>
<td width="96" valign="top"> </td>
<td width="72" valign="top"> </td>
</tr>
<tr>
<td width="31" valign="top">5</td>
<td width="72" valign="top"> </td>
<td width="60" valign="top"> </td>
<td width="96" valign="top"> </td>
<td width="72" valign="top"> </td>
</tr>
<tr>
<td width="31" valign="top">6</td>
<td width="72" valign="top"> </td>
<td width="60" valign="top"> </td>
<td width="96" valign="top"> </td>
<td width="72" valign="top"> </td>
</tr>
<tr>
<td width="31" valign="top"> </td>
<td width="72" valign="top"> </td>
<td width="60" valign="top"> </td>
<td width="96" valign="top"> </td>
<td width="72" valign="top"> </td>
</tr>
</tbody>
</table>
<p style="text-align:left;"><strong> Фиг. 6.4. Достъп с използване на индекс</strong></p>
<p style="text-align:left;"><strong> Атрибути на файла</strong></p>
<p style="text-align:left;">Всеки файл има име и данни. Освен това операционната система поддържа и друга информация, например дата и време на създаване на файла, неговия размер и т.н. Тези допълнителни сведения се наричат <em>атрибути на файла</em>.</p>
<p style="text-align:left;">В таблица 6.1. са изведени някои възможни атрибути. Нито една от съществуващите операционни системи не поддържа едновременно всички изброени в таблицата атрибути, но всяка от тях ги използва в една или друга степен.</p>
<p style="text-align:left;">Първите четири атрибута се отнасят към защитата на файла и съдържат информация за това, как може и как не може да се получи достъп към файла.</p>
<p style="text-align:left;">Възможни са различни схеми за реализация на защита. В някои системи потребителят за да получи достъп към файла, трябва да въведе парола. В този случаи паролата влиза в атрибутите на файла.</p>
<p style="text-align:left;">Флаговете са битове за управление на някои специфични свойства. Например, скритите файлове не се показват в списъка на файловете при разпечатване на каталога.</p>
<p style="text-align:left;">Флагът “временен” позволява автоматично да се изтрие такъв файл след приключване на работата на създалия процес.</p>
<p style="text-align:left;">Атрибутите за дължина на записа, позицията на ключа и дължината на ключа присъстват само при тези файлове, чийто записи могат да се търсят по ключ.Тези атрибути предоставят необходимата информация за планиране на ключа.</p>
<p style="text-align:left;">Различните атрибути, съхраняващи времеви стойности, позволяват да се следи кога е създаден, кога за последен път е бил променен и кога за последен път е направен достъп до него. Тези сведения могат да се използват за различни цели. Например, ако програмният файл е <em>модифициран</em> след създадения от него обектен файл, то първият трябва да се прекомпилира.</p>
<p style="text-align:left;"> </p>
<table style="text-align:left;" border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td width="235" valign="top">
<p align="center">Атрибут</p>
</td>
<td width="365" valign="top">
<h5>Описание</h5>
</td>
</tr>
<tr>
<td width="235" valign="top">Защита</td>
<td width="365" valign="top">Кой и по какъв начин може да получи достъп до файла</td>
</tr>
<tr>
<td width="235" valign="top">Парола</td>
<td width="365" valign="top">Парола за получаване на достъп до файла</td>
</tr>
<tr>
<td width="235" valign="top">Създател</td>
<td width="365" valign="top">Идентификатор на потребителя, създал файла</td>
</tr>
<tr>
<td width="235" valign="top">Собственик</td>
<td width="365" valign="top">Текущ собственик</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,само за четене’’</td>
<td width="365" valign="top">0-за четене/запис;</p>
<p>1-само за четене</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,скрит’’</td>
<td width="365" valign="top">0-нормален;</p>
<p>1-не се показва в списъка на файловете в каталога</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,системен’’</td>
<td width="365" valign="top">0-нормален;</p>
<p>1-системен</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,архивен’’</td>
<td width="365" valign="top">0-архивиран; 1-изисква архивиране</td>
</tr>
<tr>
<td width="235" valign="top">Флаг ASCII/двоичен</td>
<td width="365" valign="top">0-ASCII; 1-двоичен</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,произволен достъп’’</td>
<td width="365" valign="top">0-само за последователен достъп;</p>
<p>1-произволен достъп</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,временен’’</td>
<td width="365" valign="top">0-нормален;</p>
<p>1-за изтриване след изключване на процеса</td>
</tr>
<tr>
<td width="235" valign="top">Флаг,,блокировка’’</td>
<td width="365" valign="top">0-неблокиран;</p>
<p>1-блокиран</td>
</tr>
<tr>
<td width="235" valign="top">Дължина на записите</td>
<td width="365" valign="top">Брой байтове в записа</td>
</tr>
<tr>
<td width="235" valign="top">Позиция на ключа</td>
<td width="365" valign="top">Отместване до ключа в записа</td>
</tr>
<tr>
<td width="235" valign="top">Дължина на ключа</td>
<td width="365" valign="top">Брой байтове в полето на ключа</td>
</tr>
<tr>
<td width="235" valign="top">Времето на създаване</td>
<td width="365" valign="top">Дата и време на създаване на файла</td>
</tr>
<tr>
<td width="235" valign="top">Времето на последния достъп</td>
<td width="365" valign="top">Дата и време на последния достъп във файла</td>
</tr>
<tr>
<td width="235" valign="top">Времето на последното измене-ние</td>
<td width="365" valign="top">Дата и време на последното изменение на файла</td>
</tr>
<tr>
<td width="235" valign="top">Текущ размер</td>
<td width="365" valign="top">Брой байтове във файла</td>
</tr>
<tr>
<td width="235" valign="top">Максимален размер</td>
<td width="365" valign="top">Брой байтове до които може да се увеличи размера на файла</td>
</tr>
</tbody>
</table>
<p style="text-align:left;"><strong> Таблица 6.1. Някои възможни атрибути на файловете</strong></p>
<h2 style="text-align:left;"> Операции с файлове</h2>
<p style="text-align:left;">Операционната система предоставя на потребителя комплект операции за работа с файлове. Често при работа с файл потребителят изпълнява не само една, а няколко операции. Първо, трябва да намери файла и неговите атрибути по името на файла. Второ, трябва да прочете необходимите атрибути на файла в определена област на оперативната памет и да направи анализ на правата на потребителя за изпълнение на заявената операция. След това трябва да изпълни операцията и накрая да освободи паметта, заемана от данните на файла.</p>
<p style="text-align:left;">Ще се спрем, още веднъж, този път в по-голяма дълбочина и конкретно на основните файлови операции на UNIX:</p>
<p style="text-align:left;">1<strong>. </strong><em>Create</em>. Създава се файл без данни. Смисълът на това създаване е да се обяви, че файлът съществува и да му се присвоят атрибути.На файла се определя място на диска и същият се записва в каталога.</p>
<p style="text-align:left;">2<strong>. </strong><em>Delete</em>.<a href="http://batetobg.wordpress.com/wp-admin/#_ftn6">[6]</a> Изтриване на файл и освобождаване на заеманото от него пространство.</p>
<p style="text-align:left;">3. <em>Open</em>. <a href="http://batetobg.wordpress.com/wp-admin/#_ftn7">[7]</a> Отваряне на файл. Преди да се използва един файл, той трябва да бъде отворен. Системното извикване <em>open</em> позволява на системата да персонализира атрибутите на файла и да провери достъпа към него, а също така да прочете от оперативната памет списъка от адреси на блоковете на файла за бърз достъп към него.</p>
<p style="text-align:left;">4. <em>Close</em>.<a href="http://batetobg.wordpress.com/wp-admin/#_ftn8">[8]</a> Затваряне на файл.Ако работата с файла е приключена, то неговите атрибути и адреси на блокове повече не са необходими. Затова файлът трябва да се затвори, за да се освободи пространство във вътрешната таблица.</p>
<p style="text-align:left;">5<strong>. </strong><em>Read.</em> <a href="http://batetobg.wordpress.com/wp-admin/#_ftn9">[9]</a> Четене на данните от файла. Обикновено данните се четат от текущата позиция във файла. Извикващият процес трябва да зададе обема на необходимите данни и да предостави за тях буфер в оперативната памет.</p>
<p style="text-align:left;">6. <em>Write</em>.<a href="http://batetobg.wordpress.com/wp-admin/#_ftn10">[10]</a> Записване на данни във файл.Записването се прави от текущата позиция във файла. Ако текущата позиция е в края на файла, размерът на файла автоматично се увеличава. В противен случай записването се осъществява върху старите данни, които се изгубват безвъзвратно.</p>
<p style="text-align:left;">7. <em>Append</em>.<a href="http://batetobg.wordpress.com/wp-admin/#_ftn11">[11]</a> Добавяне на данни в края на файла.Това системно извикване е форма на извикването <em>write</em>, след като указателят е позициониран в края на файла. В някои операционни системи това системно извикване може и да не съществува.</p>
<p style="text-align:left;">8. <em>Seek</em>. Позициониране на указателя във файла. За файловете с достъп трябва да се намира мястото където се намират данните.След изпълнение на даденото системно извикване във файла могат да се записват или четат данни от тази позиция.</p>
<p style="text-align:left;">9<strong>. </strong><em>Get<a href="http://batetobg.wordpress.com/wp-admin/#_ftn12"><strong>[12]</strong></a> attributes</em>. Прочита атрибутите на файла. Процесите, които работят с файлове трябва да имат информация за атрибутите на файловете.</p>
<p style="text-align:left;">10. <em>Set<a href="http://batetobg.wordpress.com/wp-admin/#_ftn13"><strong>[13]</strong></a> attributes</em>. Изменение на атрибутите на файла.На някои атрибути трябва да се дадат определени стойности от потребителя веднага след създаване на файла.Това системно извикване предоставя такава възможност. Например на файла може да се зададе код за защита на достъпа.Много от флаговете могат да се настроят в съответно необходимото състояние като се използва даденото системно извикване.</p>
<p style="text-align:left;">6.<strong> </strong><em>Rename.<a href="http://batetobg.wordpress.com/wp-admin/#_ftn14"><strong>[14]</strong></a></em> Преименуване на файл.Това системно извикване позволява да се промени името на файла. Неговото присъствие не е задължително, т.к. файлът може да се откопира под друго име, а старият файл да се изтрие.</p>
<p style="text-align:left;">Съществуват два начина за работа с файлове.</p>
<p style="text-align:left;">В първия случай последователността на операции може да бъде такава:</p>
<p style="text-align:left;"><em>open, read1, close, </em></p>
<p style="text-align:left;"><em>open, read2, close, </em></p>
<p style="text-align:left;"><em>open, read3, close, </em></p>
<p style="text-align:left;">Алтернативният начин е следният</p>
<p style="text-align:left;"><em>open, read1, …, read2, …, read3, &#8230;, close</em></p>
<p style="text-align:left;">т.е. файлът се отваря веднъж, многократно се извършват четения и някакви други операции с данните и накрая файлът се затваря.</p>
<p style="text-align:left;">Повечето операционни системи използват втория начин, като по-икономичен и по-бърз. Първият начин е по-устойчив към откази, т.к. резултатите от всяка операция стават независими от резултатите по предната операция. Затова този метод се изисква в разширените файлови системи.</p>
<p style="text-align:left;"> <span style="text-decoration:underline;"><strong>Каталози</strong></span></p>
<p style="text-align:left;">Във файловите системи обикновено файловете се организират в <em>каталози</em><strong>  </strong>или <em>папки</em>, които на свой ред в повечето операционни системи също са файлове.</p>
<p style="text-align:left;">Всеки каталог съдържа списък на каталозите и/или файловете, където на всеки файл съответства един запис във файла директория.</p>
<p style="text-align:left;"><strong>Каталожна система на едно ниво</strong></p>
<p style="text-align:left;">Най-простата форма на каталог се състои от една папка, в която се съдържат всички файлове.</p>
<p style="text-align:left;">Такава система е била разпространена в ранните версии на персоналните компютри.Първият в света суперкомпютър CDC 6600 (разработен е от Сеймур Крей от Control Data Corp. през 1964 г.)<a href="http://batetobg.wordpress.com/wp-admin/#_ftn15">[15]</a> също е имал един каталог, независимо от това, че на него са работили едновременно много потребители.</p>
<p style="text-align:left;">На фиг. 6.5 е показана еднокаталожна файлова система.</p>
<p style="text-align:left;"> <img class="aligncenter size-full wp-image-27" title="Каталожна система на едно ниво" src="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b52.jpg?w=500" alt="Каталожна система на едно ниво"   /></p>
<p style="text-align:left;">В каталога има 4 файла. С буквите A, B и C са обозначени имената на притежателите на файловете, а не имената на самите файлове, понеже наличието на няколко потребителя в такава система създава проблеми.  В тази система файловете се намират лесно.</p>
<p style="text-align:left;">Недостатък на тази система е това, че случайно потребителите могат да именуват различни файлове с еднакви имена. Затова такава схема не се използва в многопотребителските системи.</p>
<p style="text-align:left;"><strong> Каталожна система на две нива</strong></p>
<p style="text-align:left;">За да се разделят файловете на различните потребители за всеки от тях се създава отделен каталог (фиг. 6.6).</p>
<p style="text-align:left;">Тук имената на файловете на различните потребители, дори и да са еднакви, няма да влизат в конфликт.<br />
С буквите A, B и C са означени имената на притежателите на файловете.Такава организация се използва в многопотребителските компютри или в мрежа от персонални компютри, съединени с общ файлов сървър на локалната мрежа.</p>
<p style="text-align:left;"> <img class="aligncenter size-full wp-image-28" title="Каталожна система на две нива" src="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b53.jpg?w=500&#038;h=279" alt="Каталожна система на две нива" width="500" height="279" /></p>
<p style="text-align:left;">За работата в такава среда всеки потребител първоначално се регистрира, за да може операционната система да го разпознава и да знае кой каталог му принадлежи. Така и потребителят получава достъп само към файловете от собствения каталог.</p>
<p style="text-align:left;">Един потребител може да ползва файл от друг каталог като укаже пътя до другия файл. Например командата</p>
<p style="text-align:left;"><em>open(“A/x.txt”)</em></p>
<p style="text-align:left;">ще отвори  файла <em>x.txt</em> от каталога <em>A</em>. Така възниква необходимостта от създаване на един общ системен каталог, където да бъдат изнесени всички файлове за общо ползване (например, всички изпълними двоични файлове).</p>
<p style="text-align:left;"> <strong>Йерархични каталожни системи</strong></p>
<p style="text-align:left;">Каталозите на две нива решават конфликта между файловете на отделните потребители, но това не е достатъчно при използването на много файлове от един потребител. Обикновено потребителите групират своите файлове в различни функционални групи.</p>
<p style="text-align:left;">При тази организация всеки потребител може да създаде в собствения каталог, толкова подкаталози, колкото му трябват.Този подход е показан на фиг. 6.7. Тук каталозите са A, B и C, подчинени на корена и принадлежат на трима потребители, съответно A, B и C. Двама от потребителите B и C са създали свои подкаталози.</p>
<p style="text-align:left;">Възможността да се създаде произволен брой подкаталози е важен инструмент за структуриране  на файловото стопанство. Поради това почти всички съвременни файлови системи са организирани по този начин.</p>
<p style="text-align:left;">Име на пътя (Pathname<a href="http://batetobg.wordpress.com/wp-admin/#_ftn16">[16]</a>)</p>
<p style="text-align:left;">При организирането на файловата система в дървовиден каталог е необходимо да се използва някакъв способ за еднозначно описание на файловете, за да се избегне коалицията с еднаквите имена на файловете в различните подкаталози. Използват се два метода &#8211; <em>абсолютен</em> и <em>относителен</em>.</p>
<p style="text-align:left;"><img class="aligncenter size-full wp-image-29" title="Йерархична каталожна система" src="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b54.jpg?w=500&#038;h=423" alt="Йерархична каталожна система" width="500" height="423" /></p>
<p style="text-align:left;">В първия случаи на всеки файл се дава <em>абсолютното име на пътя</em>, състоящо се от имената на всички каталози от корена до тези, в които се намира описвания файл, като се добавя и името на файла.</p>
<p style="text-align:left;">Например, пътят</p>
<p style="text-align:left;"><em>/usr/ast/mailbox</em></p>
<p style="text-align:left;">означава, че коренът съдържа каталога <em>usr</em>, който от своя страна съдържа подкаталога <em>ast,</em> където се намира и файла <em>mailbox</em>. Абсолютното поле на пътя винаги започва от корена и е уникално. В UNIX компонентите на пътя се разделят с дясно наклонена черта “/”. В Windows в качеството на разделител се използва ляво наклонена черта “\”. В системата MULTICS се използва символа по-голямо “&gt;”. По такъв начин едно и също поле на път в трите операционни системи ще изглежда по-различен начин:</p>
<p style="text-align:left;"><em>Windows                               \usr\ast\mailbox</em></p>
<p style="text-align:left;"><em>UNIX                                     /usr/ast/mailbox</em></p>
<p style="text-align:left;"><em>MULTICS                           &gt;usr&gt;ast&gt;mailbox</em></p>
<p style="text-align:left;">Ако първият символ от името на пътя е разделител, това означава, че пътят е абсолютен, независимо от това, в коя операционна система какъв разделител се използва.</p>
<p style="text-align:left;">Във втория метод се използва <em>относително име на пътя</em><strong>. </strong>То се използва заедно с концепцията за <em>текущия каталог</em>. Потребителят може да определи един каталог за текущ работен каталог. В този случай името на пътя не започва с разделител. Например, ако текущият каталог е <em>/usr/ast</em>, то файла с абсолютен път<em> /usr/ast/mailbox</em> може да се намира само с името <em>mailbox</em>.</p>
<p style="text-align:left;">С други думи, UNIX командите</p>
<p style="text-align:left;"><em>cp /usr/ast/mailbox /usr/ast/mailbox.bak</em></p>
<p style="text-align:left;">и <em>cp mailbox mailbox.bak </em>изпълняват едно и също действие, ако текущият каталог е <em>/usr/ast.</em></p>
<p style="text-align:left;">Относителната форма често се оказва по-удобна, още повече, че е по-компактна и в крайна сметка изпълнява същото действие.</p>
<p style="text-align:left;">Понякога се налага да се направи достъп към файл, независимо от това, кой е текущият каталог в момента. В този случай трябва да се използват абсолютното име на пътя. Абсолютното име на файла винаги сочи необходимия файл, независимо от това в дадения момент кой каталог е текущ.</p>
<p style="text-align:left;">Ако от някакъв каталог трябва да се използва много често голям асортимент файлове, може да се направи следното-въпросният каталог да се направи текущ и след това файловете да се използват с относителното име.</p>
<p style="text-align:left;">Всеки процес има свой каталог и когато процесът изменя своя работен каталог, това не влияе на работата на другите процеси. Във файловата система не остават следи от подобни изменения на работния каталог, след приключване работата на съответния процес.</p>
<p style="text-align:left;">От друга страна, ако <em>библиотечна процедура</em> измени текущия каталог и не го възстанови след връщане на управлението към програмата, която я е извикала, може да се укаже, че няма да е възможно да продължи, т.к. предположението за текущия каталог ще се укаже неточно. По тази причина на библиотечните процедури рядко се променят работните директории, а когато се менят, обезателно след приключване на работата трябва да се възстанови работния каталог.</p>
<p style="text-align:left;">Голяма част от операционните системи, изискващи йерархични каталози имат специални елементи във всеки каталог. Това са “<strong>.</strong>” и “<strong>..</strong>”, с които се обозначават <em>текущите</em> и <em>родителските</em> каталози.</p>
<p style="text-align:left;">За да продемонстрираме как се изискват тези елементи ще покажем на примера от фиг. 6.8. Нека за някакъв процес работният каталог да бъде</p>
<p style="text-align:left;"><em>/usr/ast</em></p>
<p style="text-align:left;">За да се осъществи преместване нагоре по дървото трябва да се използва елемента “<strong>..</strong>”. Например може да се откопира файла <em>dict</em> от директорията <em>/usr/lib</em> в работната директория, като се използва командата</p>
<p style="text-align:left;"><em>cp ../lib/dict .</em></p>
<p style="text-align:left;">Двете точки (“<strong>..</strong>”) реализират преход към родителския каталог <em>lib</em><strong>.</strong> В него се намира файла <em>dict</em>. Точката “<strong>.</strong>” в края на командата обозначава мястото към което трябва да се копира въпросния файл, а именно &#8211; в текущия каталог. Горната команда може да се зададе и по следния начин:</p>
<p style="text-align:left;"><em>cp /usr/lib/dict .</em></p>
<p style="text-align:left;">Използването на точката “<strong>.</strong>”  съкращава и записването на командата, т.к. не се изписва пътя и името на новия файл. Командата може да се напише и така:</p>
<p style="text-align:left;"><em>cp /usr/lib/dict dict</em></p>
<p style="text-align:left;">а също и <em>cp /usr/lib/dict /usr/ast/dict</em></p>
<p style="text-align:left;">Всички тези команди изпълняват едни и същи действия.</p>
<h2 style="text-align:left;">Раздели на диска. Организация на достъпа към архива на файловете</h2>
<p style="text-align:left;">Задаването на пътя към файловите системи на някои операционни системи се различават с това, с какво започва тази последователност от имена.</p>
<p style="text-align:left;">В съвременните операционни системи обикновено дисковете се разбиват/разцепват на <em>логически дискове</em> (това се прави на ниско ниво). Тези дискове се наричат <em>раздели</em> (partitions<a href="http://batetobg.wordpress.com/wp-admin/#_ftn17">[17]</a>). Понякога възниква необходимост от обединяване на няколко физически дискове в един логически. Това може да се направи в Windows NT. В по-нататъшните изложения ще игнорираме въпроса за физическото определяне на пространството за файловете и всеки раздел ще си представяме като един отделен (виртуален) диск. Дискът съдържа йерархична дървовидна структура, състояща се от файлове, всеки от които съхранява данни на потребителя, а също така и каталози или директории за съхраняване на информация за файловата система. Файлове, съдържащи информация за файловете в каталога, влизат в състава на каталога.</p>
<p style="text-align:left;">В някои системи за управление на файловете се изисква всички файлове да са разположени на един диск. В този случай името на файла започва с името на логическото устройство.</p>
<p style="text-align:left;">Например <em>c:\util\nu\nudd.exe</em></p>
<p style="text-align:left;">Такъв способ за описание на имената на файловете се използва в файловите системи на DEC<a href="http://batetobg.wordpress.com/wp-admin/#_ftn18">[18]</a> и Microsoft.</p>
<p style="text-align:left;">В MULTICS<a href="http://batetobg.wordpress.com/wp-admin/#_ftn19">[19]</a> цялата съвкупност от каталози и файлове е единно дърво. Операционната система търси файловете по имена, като започва винаги от корена.</p>
<p style="text-align:left;">В UNIX е възможно наличието на няколко архива на файлове, всеки в свой раздел, един от които е основен. След стартиране на операционната системата могат да се “<em>монтират</em>” основна файлова система и няколко изолирани файлови системи, обединени в една обща файлова система.</p>
<p style="text-align:left;"> <img class="aligncenter size-full wp-image-30" title="Раздели на диска" src="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b55.jpg?w=500&#038;h=339" alt="Раздели на диска" width="500" height="339" /></p>
<p style="text-align:left;"> </p>
<p style="text-align:left;"><strong> Фиг. 6.8. Дърво на каталози в UNIX</strong></p>
<p style="text-align:left;">Това се постига чрез създаване на специални празни каталози в основната файлова система. Специалната системна команда <em>mount<a href="http://batetobg.wordpress.com/wp-admin/#_ftn20"><strong>[20]</strong></a></em> на UNIX позволява към един от празните каталози на основния каталог да се включат файлове от нов архив. След монтирането на общата файлова система именоването на файловете се извършва централизирано. Задачата на операционната система се състои в това да осъществи безпрепятствен преход в точката на монтиране за получаване на достъп до файловете по веригата от имена. Като се отчете това, че обикновено монтирането на файловата система става при зареждането на системата, потребителите на UNIX обикновено не се замислят върху начина на създаване на общата файлова система.</p>
<p style="text-align:left;"><strong>Операции с каталози</strong></p>
<p style="text-align:left;">Както и в случая с файлове, операционната система трябва да осигури на потребителите набор от операции, които са необходими за работа с каталозите.Независимо от това, че каталозите са файлове, логиката за работа с тях се отличава от логиката за работа с обикновени файлове. Съвкупността от команди за управление на каталозите зависи от конкретната операционна система. Ще приведем пример с UNIX, за да получим представа за набора от команди.</p>
<p style="text-align:left;">1. <em>Create</em>. Създаване на каталог. Новосъздаденият каталог включва само елементите “.” и “..”. Въпреки това той е празен.</p>
<p style="text-align:left;">2. <em>Delete</em><em>.</em> Изтриване на каталог. Може да се изтрие само празен каталог.</p>
<p style="text-align:left;">3. <em>Opendir.</em> Отваряне на каталог.След тази операция каталогът може да се прочете. Например, за да се отпечата съдържанието на каталога, най-напред същият трябва да се отвори, за да се прочетат имената на файловете, записани в него.</p>
<p style="text-align:left;">4. <em>Closedir.</em> Затваряне на каталог. След прочитането каталогът трябва да се затвори за да се освободят вътрешните системни таблици.</p>
<p style="text-align:left;">5. <em>Readdir</em><em>.</em> Прочитане на следващия запис от отворения каталог. Винаги се прочита един запис със стандартен формат, независимо от използваната структура на каталозите.</p>
<p style="text-align:left;">6. <em>Rename.</em> Преименуване на каталога.Имената на каталозите могат да се променят както и тези на файловете.</p>
<p style="text-align:left;">7. <em>Link</em><em>.</em><a href="http://batetobg.wordpress.com/wp-admin/#_ftn21">[21]</a> Свързване на файл към няколко каталози. Един и същи файл може да се появи в няколко каталози, като се описва пътя за достъп към него.</p>
<p style="text-align:left;">8. <em>Unlink.</em> Премахва връзка към файл от каталога.Ако съществуват няколко връзки към един файл с тази команда се премахва само една, а другите остават.Това системно извикване се използва и за изтриване на файл в UNIX.</p>
<p style="text-align:left;">Очевидно, че създаването и изтриването на файлове предполага също така изпълнение и на съответни файлови операции. Има и други системни извиквания, например за управление защитата на информацията.</p>
<p style="text-align:left;"><strong>Защита на файловете</strong></p>
<p style="text-align:left;">Информацията в компютъра може да бъде защитена както от физическо <em>разрушаване</em> (reliability<a href="http://batetobg.wordpress.com/wp-admin/#_ftn22">[22]</a>), а също така и от <em>несанкциониран достъп</em> (protection<a href="http://batetobg.wordpress.com/wp-admin/#_ftn23">[23]</a>).</p>
<p style="text-align:left;"><strong>Контрол на достъпа</strong></p>
<p style="text-align:left;">Наличието в системата на много потребители предполага организирането на контролиран достъп към файловете. Изпълняването на каквато и да е операция с файловете трябва да бъде разрешена само в случаите когато потребителят има съответните права. Обикновено се контролират следните операции: четене, запис и изпълнение.Могат да се контролират и други операции, например-копиране на файлове и преименуване. Този контрол често се реализира чрез по-горните. Така операцията копиране на файлове може да се представи като операция четене, последвана от операция запис.</p>
<p style="text-align:left;"><strong>Списък на правата за достъп</strong></p>
<p style="text-align:left;">Най-общият подход за защита на файлове от несанкционирано ползване е да се направи достъпът да зависи от идентификатора на потребителя. За целта всеки файл или каталог се свързва със <em>списък на правата за достъп</em> (access control list<a href="http://batetobg.wordpress.com/wp-admin/#_ftn24">[24]</a>), където се изброяват имената на потребителите и типовете разрешени за тях способи за достъп към файловете. Всяка заявка за изпълнение на операции се свързва с такъв списък. Основният проблем за реализацията на дадения способ е това, че списъкът може да стане прекалено дълъг. За да се разреши на всички потребители да четат даден файл, трябва всичките да се запишат в списъка. Тази техника има две нежелателни следствия:</p>
<ul style="text-align:left;">
<li>Конструирането и поддържането на такъв списък може да се окаже сложна задача, особено ако не са известни предварително потребителите на системата;</li>
<li>Записът в каталога трябва да има променлив размер (т.к. списъкът на потенциалните потребители може да се променя).</li>
</ul>
<p style="text-align:left;">За решаването на този проблем се създава класификация от потребители. В UNIX всички потребители се разделят на три групи: </p>
<ol style="text-align:left;">
<li><em>Собственик</em> (Owner<a href="http://batetobg.wordpress.com/wp-admin/#_ftn25">[25]</a>).</li>
<li><em>Група</em><em> (</em>Group<a href="http://batetobg.wordpress.com/wp-admin/#_ftn26">[26]</a>). Това са потребители, които разделят даден файл и се нуждаят от типов метод за достъп към него.</li>
<li><em>Останалите</em> (Univers<a href="http://batetobg.wordpress.com/wp-admin/#_ftn27">[27]</a>).</li>
</ol>
<p style="text-align:left;">По такъв начин се реализира конкретизирана версия на списъка с правата за достъп. В рамките на тази ограничена класификация се задават само три полета (по едно за всяка група) за всяка контролирана операция. В крайна сметка в UNIX операциите четене, запис и изпълнение се контролират с помощта на 9 бита (rwxrwrrwx).</p>
<p style="text-align:left;"><strong>Обобщение</strong></p>
<p style="text-align:left;">Файловата система е набор от файлове, каталози и операции, които могат да се извършват с тях. Имената и структурите на файловете, способите за достъп към тях и техните атрибути са важни аспекти от организацията на файловата система.</p>
<p style="text-align:left;">Главната задача на файловата система е да свърже символичното име на файла с данните на диска. Повечето съвременни операционни системи поддържат йерархична структура на каталозите с възможност за влагане на каталози.</p>
<p style="text-align:left;">Безопасността на файловата система се базира на въвеждането на списък с права за достъп-една от най-важните концепции на операционната система.</p>
<p style="text-align:left;"> </p>
<hr size="1" />
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref1">[1]</a> NTFS <em>същ.</em> Акроним на NT file system. Файлова система NT &#8211; съвременна файлова система, специално проектирана за употреба с операционната система Windows NT. Тя поддържа дълги имена на файлове, пълна защита на управлението на достъпа, възстановяване на файловата система, изключително големи среди за съхранение и различни възможности на подсистемата Windows NT POSIX. Освен това, поддържа обектно-ориентирани приложения, третирайки файловете като обекти с дефинирани от потребителя или системата атрибути. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 70.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref2">[2]</a> Unicode <em>същ.</em>Стандарт за кодиране с 16-битови знаци, разработени от Unicode Consortium между 1988 и 1991 година. Чрез използване на два байта за представянето на всеки знак, Unicode позволява почти всички писмени знаци на света да бъдат представени чрез един набор от знаци. (За разлика от 8-битовия ASCII, който не е способен да представи всички комбинации от букви и диактрични знаци, които се използват само в римската азбука.) Приблизително 39 000 от 65 536-те възможни Unicode кодове на знаците са предназначени за дати, 21 0000 се използват за китайски идеограми. Останалите комбинации са отворени за разширение. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 305.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref3">[3]</a> POSIX <em>същ.</em> Акроним на Portable Operating System Interface for UNIX. Стандарт за IEEE (Institute of Electrical and Electronics Engineers), дефиниращ набор от услуги на операционни системи. Програмите, придържащи се към POSIX стандарта, могат лесно да бъдат пренасяни от една система на друга. POSIX е базиран на системните услуги на UNIX, но е създаден по начин, който позволява той да бъде имплементиран от други операционни системи. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 131.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref4">[4]</a> seek <em>същ. </em>търсене, достигане = процесът на предвижване на главата за четене/писане в дисковото устройство до конкретно местоположение на диска. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 210.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref5">[5]</a> read <em>същ. </em>четене = прехвърляне на данни от входно устройство в паметта на компютъра или от паметта в централния процесор (CPU). Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 166.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref6">[6]</a> delete <em>гл.</em> изтривам = премахвам текст, файл или част от документ с намерението да премахна информацията завинаги. Има няколконачина за изтриване. Екранните знакове и частите от документа могат да бъдат изтрити с клавиша Delete, клвиша Backspace или командата Delete на програма. Файловете могат да се изтриват чрез команда към операционната система. Англо-български тълковен компютърен речник том 1: A-L стр. 216.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref7">[7]</a> open <em>прил.</em> Отворен = който е достъпен или предоставя достъпност. Например отворения файл е файл, който може да бъде използван, защото програмата е подала команда за отваряне на файла до операционната система.</p>
<p style="text-align:left;">open <em>гл. </em>0тварям = правя някакъв обект (например файл) достъпен.</p>
<p style="text-align:left;">Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 81.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref8">[8]</a> close <em>същ.</em> FTP команда, която инструктира клиента да затвори текущата връзка със сървъра.</p>
<p style="text-align:left;">close <em>гл.</em> затварям = 1. Прекратявам връзката на приложението с отворен файл, така че то да не може да осъществи достъп до файла без да го отвори повторно. 2. Прекръсвам връзката на компютъра с друг компютър в мрежа.</p>
<p style="text-align:left;">Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2 005, стр. 148.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref9">[9]</a> read <em>същ.</em> четене = прехвърляне на данни от входно устройство в паметта на компютъра или от паметта в централния процесор (CPU).</p>
<p style="text-align:left;">read <em>гл. </em>чета, прочитам = прехвърлям данни от външен източник, например от диск или клавиатура, в паметта, или от паметта в централния процесор (CPU)</p>
<p style="text-align:left;">Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 166.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref10">[10]</a> write <em>същ.</em> запис = трансфер на информация към устройството за съхранение (например диск) или към изходно устройство (например монитор или принтер). Например запис на диска означава, че информацията е прехвърлена от паметта в съхранение на диска.</p>
<p style="text-align:left;">write <em>гл.</em> записвам = прехвърлям информация на устройство за съхранение (например диск) или към изходно устройство (например монитор или принтер). Записването е начинът, по който компютърът предоставя резултатите от обработката. Когато компютърът визуализира информация на екрана, може да се каже също така, че той извършва запис на екрана.</p>
<p style="text-align:left;">Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 357.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref11">[11]</a> append <em>гл.</em> добавям = добавям данни към края на файл или база данни, или разширявам знаков низ. Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2 005, стр. 47.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref12"><em><strong>[12]</strong></em></a><em> </em>get <em>същ.</em> FTP команда, която инструктира сървъра да прехвърли определен файл на клиента. Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2 005, стр. 337.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref13">[13]</a> set <em>същ. </em>набор, множество = (при печатане и визуализиране) група от свързани знакове, например набор от знакове.</p>
<p style="text-align:left;">set <em>гл. </em>задавам, определям, дефинирам = 1. Променям стойността на един бит на 1. 2. Задавам конкретно условие, например задавам позиция за стопиране на табулация, задавам на брояч стойност 0, или пък задавам точка на пркъсване.</p>
<p style="text-align:left;">Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 217.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref14">[14]</a> rename <em>същ.</em> Команда в повечето FTP клиенти и много други системи, позволяваща на потребителя да присвои ново име на един или няколко файла. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 179.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref15">[15]</a> Същият в последствие се усивиршенства и е известен под името:</p>
<p style="text-align:left;">Cray-1 <em>същ.</em> Ранен суперкомпютър, разработен от Сеймор Крей. Изключително мощен за времето си, 64-битовият Cray-1 работи на 75 MHz и може да изпълнява 160 операции с плаваща запетая в секунда. Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2 005, стр. 190.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref16">[16]</a> pathname <em>същ. </em>път до файл = (в йерархична файлова система) листинг с директориите или папките, водещи от текущата директория до някакъв файл. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 104.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref17">[17]</a> partition <em>същ.</em> дял = 1. Логическа част от памет или съхраняващо устройство, която функционира сякаш е физическа отделна единица. 2. В програмирането на бази от днни, подмножество на таблица или файл от базата от данни. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 101.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref18">[18]</a> DEC Акроним на Digital Equipment Corporation.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref19">[19]</a> MULTICS (MULTiplexed Information and Computing Sysytem – Мултиплексна Информационна и Изчислителна Система). Разработва се от Кен Томсън от AT&amp;T на компютър DEC PDP – 7.Източник EMILIT UNIX.<strong> </strong></p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref20">[20]</a> mount монтирано устройство = в NFS, папка или файл, получен от друго място в мрежата и достъпен локално. Англо-български тълковен компютърен речник, Т.2 M-Z, Софтпрес 2 005, стр. 40.<strong> </strong></p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref21">[21]</a> link <em>гл.</em> свързвам = 1. Създавам изпълнима програма от компилирани модули (програми, процедури или библиотеки), като сливам обектния код (обектен код на асемблерен език, изпълним машинен код или вариация на машинен код) на програмата и определям взаимните връзки (например функция на библиотека, извиквана от програма). 2. Свързвам два елемента в структура от данни, като използвам променливи за индекси или указатели.</p>
<p style="text-align:left;">link <em>същ.</em> връзка, препратка.</p>
<p style="text-align:left;">Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2005, стр. 450.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref22">[22]</a> reliability &#8211; сигурност, надеждност, благонадеждност.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref23">[23]</a> protection &#8211; пазене, запазване, предпазване, бранене, отбраняване, предвардване, защищаване, защита, закриляне, закрила.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref24">[24]</a> access control list<strong> </strong><em>същ.</em> списък за контрол на достъпа = списък, асоцииран с файл или ресурс, който съдържа информация за това, кои потребители или групи разполагат с право на достъп до ресурс или за модифициране на файла. Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2 005, стр. 24.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref25">[25]</a> оwner &#8211; собственик, притежател, владетел, стопанин.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref26">[26]</a> group <em>същ.</em> група = множество елементи, коитомогат да бъдат третирани като едноцяло, например множество от записи в отчет на база от данни или мнпжество от обекти в програма за рисуване, които могат да бъдат местени или променяни като един обект. В различни многопотребителски операционни системи, групата е набор от потребителски акаунти, понякога наричани членове; на групата могат да се задават привелегии и тогава всеки член ще има тези превилегии. Англо-български тълковен компютърен речник, Т.1 A-L, Софтпрес 2 005, стр. 347.</p>
<p style="text-align:left;"><a href="http://batetobg.wordpress.com/wp-admin/#_ftnref27">[27]</a> universal. 1. световен, всемирен, универсален; 2. всеобщ, всеобхватен, пълен, цялостен; 3. широко разпространен, общоприет;</p>
<p style="text-align:left;"> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/batetobg.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/batetobg.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/batetobg.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/batetobg.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/batetobg.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/batetobg.wordpress.com/24/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/batetobg.wordpress.com/24/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/batetobg.wordpress.com/24/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=24&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://batetobg.wordpress.com/2009/06/24/%d1%84%d0%b0%d0%b9%d0%bb%d0%be%d0%b2%d0%b5-%d0%b8-%d0%ba%d0%b0%d1%82%d0%b0%d0%bb%d0%be%d0%b7%d0%b8/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c7c014d1ffeb83c5d32409f8749ebeda?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">batetobg</media:title>
		</media:content>

		<media:content url="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b5.jpg" medium="image">
			<media:title type="html">Структура на файловете</media:title>
		</media:content>

		<media:content url="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b51.jpg" medium="image">
			<media:title type="html">Типове файлове</media:title>
		</media:content>

		<media:content url="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b52.jpg" medium="image">
			<media:title type="html">Каталожна система на едно ниво</media:title>
		</media:content>

		<media:content url="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b53.jpg" medium="image">
			<media:title type="html">Каталожна система на две нива</media:title>
		</media:content>

		<media:content url="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b54.jpg" medium="image">
			<media:title type="html">Йерархична каталожна система</media:title>
		</media:content>

		<media:content url="http://batetobg.files.wordpress.com/2009/06/d0b1d0b5d0b7-d0b8d0bcd0b55.jpg" medium="image">
			<media:title type="html">Раздели на диска</media:title>
		</media:content>
	</item>
		<item>
		<title>Оперативна памет</title>
		<link>http://batetobg.wordpress.com/2009/06/23/%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%82%d0%b8%d0%b2%d0%bd%d0%b0-%d0%bf%d0%b0%d0%bc%d0%b5%d1%82/</link>
		<comments>http://batetobg.wordpress.com/2009/06/23/%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%82%d0%b8%d0%b2%d0%bd%d0%b0-%d0%bf%d0%b0%d0%bc%d0%b5%d1%82/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 14:47:28 +0000</pubDate>
		<dc:creator>batetobg</dc:creator>
				<category><![CDATA[Компютри и Интернет]]></category>

		<guid isPermaLink="false">http://batetobg.wordpress.com/2009/06/23/%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%82%d0%b8%d0%b2%d0%bd%d0%b0-%d0%bf%d0%b0%d0%bc%d0%b5%d1%82/</guid>
		<description><![CDATA[Оперативна памет е компонент в изчислителната техника за средносрочно съхраняване на резултати от операциите и част от общата йерархия на паметта. В съвременните ЕИМ това най-често е памет със свободен достъп (RAM), но в зората на изчислителната техника се е използвала също феритна памет и памет на магнитни барабани. Едно от деленията на RAM паметта [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=14&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Оперативна памет</strong> е компонент в изчислителната техника за средносрочно съхраняване на резултати от операциите и част от общата йерархия на паметта. В съвременните ЕИМ това най-често е памет със свободен достъп (RAM), но в зората на изчислителната техника се е използвала също феритна памет и памет на магнитни барабани.</p>
<p>Едно от деленията на RAM паметта е на D (Dynamic) RAM и S (Static) RAM. DRAM е по-евтината и разпространена и се използва като основна компютърна памет. SRAM e по-скъпа и се използва главно за кеш памети. Основната разлика между тях е, че информацията в DRAM трябва да бъде опреснявана периодично (няколко хиляди пъти в секунда) &#8211; поради елементите, от които е изградена, тя има свойството да “забравя” информацията, съдържаща се в нея. Също така, прочитането на нещо от паметта води до неговото “забравяне” , което налага допълнително презареждане. Тази операция (презареждане) нормално се извършва от един чип, наречен контролер на паметта. Има обаче и специални памети, които не се нуждаят от външно въздействие на процесора или гореспоменатия контролер, за да се опресняват; те често се използват в преносимите компютри, защото консумацията на енергия при тях е по-ниска. При SRAM няма опресняване на информацията, поради различните елементи от които е изградена. Освен това, докато за DRAM нормални времена на достъп са от порядъка на 50-60ns (ns &#8211; наносекунди, една наносекунда е една милиардна част от секундата) за SRAM тези времена са около 10ns &#8211; значи пет пъти по добри. Нормално е в този момент човек да си помисли &#8211; ами този динозавър, DRAM, използва ли се още? Да, и то много. Причината &#8211; SRAM са много по-скъпи за производство. И DRAM, и SRAM присъстват във вашия компютър &#8211; първата в лицето на така наречената “оперативна памет”, втората &#8211; в ролята на “кеш памет”.</p>
<p>На процесора често му се налага да контактува с паметта (изградена от DRAM). Осъществяването на тази връзка влиза в задачите на контролера на паметта. Въпреки високата скорост с която се извършва преносът на данни, процесорът е принуден да чака, защото работи няколко пъти по-бързо. За преодоляване на това забавяне в работата се използва кеш паметта, изградена на базата на SRAM. Кеш паметта е разположена много близо до процесора и е с неголям размер &#8211; обикновено по-малко от мегабайт. Идеята е най-често използваните команди и данни да не бъдат извличани от системната (оперативна) памет, а от по-бързата и по-близо разположена кеш памет. Затова процесорът първо проверява дали в кеша се намира това което му трябва и едва след това (ако го няма) търси в RAM. В аналогична ситуация попадате когато ви се допие бира &#8211; първо проверявате дали има в хладилника и чак когато с неудоволствие се убедите, че няма, отскачате до магазина за да купите.</p>
<p>Ефективността на идеята се подкрепя от едно емпирично (получено с експерименти, а не по формула) правило: от всичките данни, програми и информация на вашия компютър, около 20% се използва през 80% от времето. Кеш паметта се опитва да прихване и задържи тези 20% по следния начин: контролера на паметта записва в кеша всичко, което процесорът взима от паметта под формата на списък; всеки път, когато CPU намери нужната му информация в кеша се получава “попадение” и тази информация се премества на върха на списъка. Когато кеш паметта е пълна и се налага да се запише още нещо, последния запис (този който е на дъното и следователно е най-рядко използван) се изтрива и на негово място се поставя новата информация.</p>
<p>В съвременните компютърни системи има повече от един вид кеш. Има такъв, който се намира в корпуса на самия процесор и се нарича L1 cache (L1 &#8211; level 1, първо ниво), следва L2, може да има и L3. Всичките тези видове са памет. Само че, има и друга ситуация, в която може да се употреби термина кеш и кеширане. Първата е, когато говорим за swap файла (тук употребата е неправилна), който както споменах представлява разширение на паметта върху твърдия диск и втората &#8211; когато част от паметта се заделя, за да се подобри работата на вашия харддиск. Тук вече употребата е съвсем на място, защото се заделя част от оперативната памет, която да служи за кеш на много по-бавния от нея твърд диск. Програмата с която може да указвате каква част от паметта да се използва за кеширане на диска под DOS се нарича Smartdrv. Windows се грижи сам за тези настройки затова не е необходимо да настройвате нищо. Ако обаче ви се иска да пипнете и да видите ефекта при различни стойности (ефект има, защото тази част която заделите за дисков кеш не се използва от програмите). Във файла system.ini, раздел [vcache], добавяте един ред &#8222;MinFileCache=хххх&#8220; за минималния размер (вместо хххх слагате число примерно 4096, което е 4MB RAM) и един &#8222;MaxFileCache=хххх&#8220; за максималния. Ако зададете двете числа еднакви, ще имате постоянен размер.</p>
<p>Освен кеша, съществуват други похвати за подобряване ефективността на оперативната памет:</p>
<p>Interleaving &#8211; става дума за начина, по който CPU се обръща към паметта. Нормално след като процесора адресира дадена банка памет, тя има нужда от един цикъл за да се възстанови, следователно процесорът трябва да изчака. Но през това време той може да се обърне към друга банка памет и така да ги сменя, за да не губи време. А какви са тези “банки”? Слотовете, в които се поставят чиповете с памет се разделят на банки. Всички слотове могат да принадлежат към една банка, или да са разделени на повече &#8211; в книжката на дъното ви може да е дадена схема на банките памет. Interleaving се прилага и вътре в самия чип памет &#8211; клетките на паметта се разделят на две независими банки от клетки и така се осигурява непрекъснатост на потока на данните</p>
<p>Bursting &#8211; обикновено на процесора не му трябва само една клетка от паметта, а няколко съседни. При bursting се взимат няколко клетки като цял блок и се пращат на CPU. Това значително ускорява работата, макар да се случва и ненужна информация да се подаде заедно с необходимата. Тази технология може да се прилага при различни видове памети, а така също и при четене, и при запис</p>
<p>Pipelining &#8211; това е процес, при който някаква по-сложна задача се разбива на поредица от елементарни инструкции, които “потичат” като по “тръба” към процесора и той ги изпълнява една след друга в бърза последователност &#8211; без да отправя искане за нови данни и да чака да му се доставят. Така ако имаме няколко задачи, разделяме ги на малки части и ги пускаме на процесора да ги обработва, в резултат на което имаме решение за по-малко време отколкото ако подавахме една по една големите задачи (процесорът ще трябва да ги извиква една по една и да чака идването им).</p>
<p>След това запознаване с паметта като цяло, нека да погледнем конкретно чиповете с памет (RAM). Едно от възможните деления е според вида на модула памет (модул памет звучи малко изкуствено, но искам до направя разделение между чип памет и платката на която има няколко чипа, които са свързани заедно и образуват това, което получаваме като отидем да си купим памет и което наричам модул):</p>
<p>SIMM &#8211; съкращение от Single In Line Memory Module, имат две разновидности &#8211; 30 пинови и 72 пинови. Думата “пин” идва от директното произнасяне на английската pin и означава изводите на модула с памет, които контактуват с дънната платка &#8211; блестящите лентички на долния край. 72 пиновите памети са с около 2 см по-дълги, но по важното е, че те прехвърлят информацията на части от по 32 бита, докато при 30 пиновите размера е 8 бита (което ги прави по-бавни). И двата вида не се използват вече, и може да ги намерите само в по-стари системи</p>
<p>DIMM &#8211; името им (Dual In Line Memory Module) подсказва, че са наследници на SIMM-овете. Може да си представите, че това са два SIMM чипа в един корпус; те са с около 2,5 см по-дълги от 72 пиновите чипове, имат 168 извода и прехвърлят по 64 бита. Това е паметта, която се използва в момента. За notebook компютрите има модифицирани DIMM памети, наречени SO (Small Outline) DIMM, които са по къси, със 72 или 144 пина, прехвърлящи съответно 32 и 64 бита</p>
<p>RIMM &#8211; това е небезизвестната Rambus памет, която Intel се опита неуспешно да наложи като масова. Характерна черта при нея е наличието на алуминиева пластина, която покрива чиповете памет. Нейната роля е да разсейва топлината, защото тези памети са доста по-горещи от останалите.</p>
<p>Освен разделянето по вида на модула, класификация може да се направи и според технологията и организацията, използвани при чипа памет &#8211; въпреки, че всички чипове са DRAM, те са доста различни. Така върху един модул DIMM може да има EDO, SDRAM или друг вид чипове (съвременните памети са само SDRAM, така че не е нужно да се тревожите за това). Единствения сигурен начин да познаете каква е паметта, е да прочетете маркировката на чиповете, обаче всеки производител използва собствена система за означение. Но, да се върнем на класификацията:</p>
<p>FPM (Fast Page Mode) DRAM &#8211; първия широко разпространен вид памет, придобил и широка известност само като DRAM. Предимството на този вид памети, наложило ги над други по-стари технологии е възможността за по-бърз достъп до данни, разположени на един и същи ред (вътре в чипа памет отделните клетки са подредени като таблица с редове и колони)</p>
<p>EDO (Extended Data Out) &#8211; много близка до FPM DRAM, но с модификация, позволяваща последователния достъп до паметта да става по-бързо, като по този начин контролера на паметта спестява време, изпускайки някои операции, които са задължителни при FPM. Печалбата в производителност е 15-20%</p>
<p>S (Synchronous) DRAM &#8211; достигаме и до най-разпространената в момента памет. За разлика от всички изброени технологии, SDRAM е проектирана да се синхронизира с базовата честота на процесора, така наречения FSB (Front Side Bus). Какво е FSB? Това е скоростта, с която дънната платка “разговаря” с процесора или паметта. Скоростта на процесора се получава като се умножи тази базова скорост (FSB) с някакво число (множител) &#8211; 4*66=266Mhz или 4,5*100=450Mhz. Това синхронизиране (уеднаквяване) на скоростта на паметта с FSB позволява избягване на времената, в които процесорът чака, защото може да се предвиди кога точно данните ще са на разположение. Когато тази възможност за предвиждане се съчетае с гореописаните техники interleaving, bursting, pipelining, получава се много по-голяма бързина. Засега скоростите, с които работят SDRAM паметите са 66, 100, 133Mhz</p>
<p>DDR (Double Data Rate) SDRAM &#8211; придобиваща все по голяма популярност разновидност на SDRAM, тази технология се базира на пренасянето на двойно повече информация за единица време (един такт) при същата скорост на FSB. По такъв начин, ако имаме FSB от 133Mhz, скоростта, с която би работила DDR e 266Mhz. Вече виждаме видеокарти с такава памет и е въпрос на време да навлизането ѝ масово и като RAM.</p>
<p>И накрая, да кажем няколко думи за това как се означава скоростта на паметите. В по-старите чипове (FPM, EDO) скоростта на паметта се измерваше с времето за достъп “access time” на паметта &#8211; времето, необходимо на модула памет да достави исканите данни. Времената варираха около 80 до 60ns, като границата беше скоростта с която работи чипа DRAM (50ns). Много често индикациите на чипа показваха неговата скорост: -7 за 70ns, -6 за 60ns.</p>
<p>С идването на SDRAM паметите и различните начини за увеличаване ефективността на работа на паметта, този начин за измерване отпадна и започна да се цитира скоростта в Mhz (трептения или цикли в секунда; 1 Hz=1 цикъл в секунда, 1Mhz е 1 000 000 цикъла в секунда). Обаче, маркировката върху чиповете продължи да бъде в наносекунди, но не измерващи времето за достъп а времето между два цикъла. От Mhz лесно се преминава в наносекунди, като разделим 1000 на тактовата честота: ако имаме 100Mhz, това се трансформира като 1000/100=10 наносекунди; аналогично ако разделим 1000/10ns=100Mhz. При паметите SDRAM 133Mhz чиповете могат да бъдат означени като -8, -7,5, -7 &#8211; и трите съответстват на 133Mhz, като този с -7 е най-добър (при условие, че и трите са на една фирма).</p>
<p>Последния начин за определяне на скоростта е колко байта в секунда се прехвърлят Получава се по следния начин &#8211; ако имаме 100Mhz памет, и тя прехвърля по 64 бита (или 8 байта) на цикъл, умножаваме 100 000 000х8, преобразуваме го в мегабайти и получаваме 800MB за секунда. За сравнение, RAMBUS паметта работи на 400Mhz, но по подобие на DDR пренася два пъти повече информация за цикъл, което прави реална скорост от 800Mhz. Тя пренася по 2 байта, значи 800х2=1600MB/s. При 100Mhz DDR памет (ефективно 200) сметката е 200х8=1600, точно колкото и RAMBUS, но на много по ниска цена.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/batetobg.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/batetobg.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/batetobg.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/batetobg.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/batetobg.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/batetobg.wordpress.com/14/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/batetobg.wordpress.com/14/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/batetobg.wordpress.com/14/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=14&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://batetobg.wordpress.com/2009/06/23/%d0%be%d0%bf%d0%b5%d1%80%d0%b0%d1%82%d0%b8%d0%b2%d0%bd%d0%b0-%d0%bf%d0%b0%d0%bc%d0%b5%d1%82/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c7c014d1ffeb83c5d32409f8749ebeda?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">batetobg</media:title>
		</media:content>
	</item>
		<item>
		<title>Централен процесор</title>
		<link>http://batetobg.wordpress.com/2009/06/23/%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b0%d0%bb%d0%b5%d0%bd-%d0%bf%d1%80%d0%be%d1%86%d0%b5%d1%81%d0%be%d1%80/</link>
		<comments>http://batetobg.wordpress.com/2009/06/23/%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b0%d0%bb%d0%b5%d0%bd-%d0%bf%d1%80%d0%be%d1%86%d0%b5%d1%81%d0%be%d1%80/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 14:31:37 +0000</pubDate>
		<dc:creator>batetobg</dc:creator>
				<category><![CDATA[Компютри и Интернет]]></category>

		<guid isPermaLink="false">http://batetobg.wordpress.com/?p=10</guid>
		<description><![CDATA[Централният процесор е основната част на електронно-изчислителна машина, която декодира и изпълнява инструкциите от програмното осигуряване. Често в контекста на изчислителната техника се използва по-общият термин процесор и определението се подразбира. С напредъка в миниатюризацията при производството на интегрални схеми през 70-те, 80-те и 90-те години на XX век, централните процесори все по-често се изпълняват [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=10&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Централният процесор</strong> е основната част на електронно-изчислителна машина, която декодира и изпълнява инструкциите от програмното осигуряване. Често в контекста на изчислителната техника се използва по-общият термин процесор и определението се подразбира. С напредъка в миниатюризацията при производството на интегрални схеми през 70-те, 80-те и 90-те години на XX век, централните процесори все по-често се изпълняват като една интегрална схема и се наричат микропроцесори. Част от микропроцесорите включват в същата интегрална схема и контролера на паметта. Когато интегралната схема включва контролери за вход-изход, тя се нарича микроконтролер. През 1999 г. развитието на технологиите позволява съвместяването на два централни процесора в рамките на една интегрална схема и отделните процесори биват наричани процесорни ядра. В такъв контекст терминът „процесор“ се използва за обозначаване на цялата интегрална схема и се говори за едно-и дву- и многоядрени процесори.</p>
<p>Микропроцесорът се изработва във вид на интегрална схема върху един силициев чип по методите на планарната технология. От средата на 70-те години тази реализация на централен процесор е една от най-популярните и вече е почти синоним на &#8216;централен процесор&#8217;.В най-общ смисъл обаче централен процесор е термин за описание на определен клас машини с програмируема логика, независимо от конкретната технология на изпълнението им, приложимо е и към по-ранните компютри и се употребява още от 60-те години.</p>
<table id="toc" style="height:20px;" border="0" width="7" summary="Съдържание">
<tbody>
<tr>
<td></td>
</tr>
</tbody>
</table>
<p>//</p>
<p><a id=".D0.9E.D0.B1.D1.89.D0.BE_.D0.BE.D0.BF.D0.B8.D1.81.D0.B0.D0.BD.D0.B8.D0.B5" name=".D0.9E.D0.B1.D1.89.D0.BE_.D0.BE.D0.BF.D0.B8.D1.81.D0.B0.D0.BD.D0.B8.D0.B5"></a><strong><span>Общо описание</span></strong> <span style="float:none;"> </span></p>
<ul>
<li>Съвременният микропроцесор най-общо се състои от ядро и кеш-памет (от първо, второ и трето ниво, а може и да липсва) и входни, изходни и контролни изводи от общ електрически характер. Той изпълнява набор от команди, реализирани логически от транзисторни схеми. Основни характеристики са: честота на работа на ядрото, честота на работа с входно/изходните канали и обем на кеш-паметта за всяко ниво. Процесорът също така може да бъде синхронен (синхронизиран с външен или вътрешен източник на честота &#8211; кварц) или асинхронен, който не използва синхронизиращ източник. Процесорът 80&#215;86 се състои от две части: устройство за магистрален интерфейс (Bus interface unit), което образува интерфейса към адресната магистрала за данни, прочита инструкциите в паметта и обменя данни с паметта или периферните устройства, и изпълнително устройство което обработва прочетените инструкции и данни. Докато изпълнителният блок още обработва една инструкция, следващите байтове-инструкции се прочитат от паметта от устройството за магистрален интерфейс и се подреждат на опашка. Чрез този начин на паралелна работа се повишава значително скоростта на обработката. При Pentium паралелната обработка е развита още повече. При него освен по една свръхбързодействаща междинна памет (кеш-памет) за инструкции и за данни има още един предварително запълван буфер за инструкции и две паралелно работещи аритметично-логически устройства за цели числа (ALU), така че могат да се извършват паралелно две аритметични операции. Процесорът за обработка на числа с плаваща запетая е интегриран в чипа и работи също така паралелно с целочислените устройства. Той е реализиран с конвейерна структура &#8211; обработката на инструкциите протича на няколко стъпки. В устройството за магистрален интерфейс се намира блок от пет 16-разредни регистъра (при новите процесори, регистрите са 32-разредни), които посредством един суматор през магистралната система имат достъп до паметта (RAM/ROM).</li>
</ul>
<p><a id=".D0.A1.D1.8A.D1.89.D0.BD.D0.BE.D1.81.D1.82_.D0.B8_.D0.BF.D1.80.D0.B5.D0.B4.D0.BD.D0.B0.D0.B7.D0.BD.D0.B0.D1.87.D0.B5.D0.BD.D0.B8.D0.B5" name=".D0.A1.D1.8A.D1.89.D0.BD.D0.BE.D1.81.D1.82_.D0.B8_.D0.BF.D1.80.D0.B5.D0.B4.D0.BD.D0.B0.D0.B7.D0.BD.D0.B0.D1.87.D0.B5.D0.BD.D0.B8.D0.B5"></a></p>
<h3><span>Същност и предназначение</span> <span style="float:none;"> </span></h3>
<p>Централният процесор е най-големият чип на дънната платка. Той е сърцето на компютърната система, изпълнява инструкциите и борави с данните. Представлява малка капсулирана силициева пластина с вградени микроелектронни елементи (транзистори). Микропроцесорите дълго време представляваха един-единствен чип, който се свързваше към различни по размер гнезда (sockets) върху дънната платка. Много от по-новите модели се произвеждат върху обособена платка с интегрални схеми, която се поставя в специален процесорен слот върху дънната платка. Най-важните характеристики на един процесор са:</p>
<ul>
<li><strong>Тип на процесора;</strong></li>
<li><strong>Скоростта, с която работи;</strong></li>
<li><strong>Размер и тип на включената в него кеш-памет;</strong></li>
<li><strong>Колко бита е шината за данни;</strong></li>
<li><strong>Колко битова адресна шина поддържа;</strong></li>
<li><strong>Допълнителни процесорни инструкции, които поддържа;</strong></li>
<li><strong>Тип на физическото свързване, което поддържа</strong></li>
</ul>
<p><a id=".D0.A1.D1.8A.D1.81.D1.82.D0.B0.D0.B2.D0.BD.D0.B8_.D1.87.D0.B0.D1.81.D1.82.D0.B8" name=".D0.A1.D1.8A.D1.81.D1.82.D0.B0.D0.B2.D0.BD.D0.B8_.D1.87.D0.B0.D1.81.D1.82.D0.B8"></a></p>
<h3><span>Съставни части</span> <span style="float:none;"> </span></h3>
<p>CPU се състои от две основни части:</p>
<ul>
<li><strong>Аритметико-логическо устройство (АЛУ)</strong></li>
<li><strong>Контролно (управляващо) устройство (УУ)</strong></li>
</ul>
<p>Тези части на процесора са свързани с електронна връзка наречена шина (BUS). Шината действа като високоскоростна магистрала между тях. За временно съхранение на данни и инструкции процесорът използва специални клетки памет, наречени регистри.</p>
<p><a id=".D0.90.D1.80.D0.B8.D1.82.D0.BC.D0.B5.D1.82.D0.B8.D0.BA.D0.BE-.D0.BB.D0.BE.D0.B3.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.BE_.D1.83.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.BE_.28.D0.90.D0.9B.D0.A3.29" name=".D0.90.D1.80.D0.B8.D1.82.D0.BC.D0.B5.D1.82.D0.B8.D0.BA.D0.BE-.D0.BB.D0.BE.D0.B3.D0.B8.D1.87.D0.B5.D1.81.D0.BA.D0.BE_.D1.83.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.BE_.28.D0.90.D0.9B.D0.A3.29"></a></p>
<h4><span>Аритметико-логическо устройство (АЛУ)</span> <span style="float:none;"> </span></h4>
<p>Аритметико-логическото устройство изпълнява всички аритметични и логически функции – събиране, изваждане, умножение, деление и сравняване на две числа (А&gt;В, А≥В, А=В, А≠В, А≤В, А&lt;В). Това устройство контролира скоростта на изчислителния процес. При по-старите микрокомпютри времето за изпълнение на една инструкция се измерваше в милисекунди, а при новите в наносекунди или в пикосекунди. Изградено е от ЛЕ(логически елементи) ИЗКЛЮЧВАЩО ИЛИ,ИЛИ,ИЛИ-НЕ и НЕ.АЛУ е комбиниран компаратор с пълен суматор.АЛУ може да бъде 2разреден,4разреден,8 и т.н. 8 разредните са изградени от над 300 отделни компонента.</p>
<p><a id=".D0.A3.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D1.8F.D0.B2.D0.B0.D1.89.D0.BE_.D1.83.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.BE_.28.D0.A3.D0.A3.29" name=".D0.A3.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D1.8F.D0.B2.D0.B0.D1.89.D0.BE_.D1.83.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.BE_.28.D0.A3.D0.A3.29"></a></p>
<h4><span>Управляващо устройство (УУ)</span> <span style="float:none;"> </span></h4>
<p>Контролното устройство е сложна електронна схема, която извършва управлението и координирането на повечето от дейностите на компютъра. То не изпълнява инструкции, а казва на отделните части на компютърната система какво да правят. То определя движението на електронните сигнали между главната памет и аритметико-логическото устройство, а също и на контролните сигнали между централния процесор и входно-изходните устройства.</p>
<p><a id=".D0.A8.D0.B8.D0.BD.D0.B0_.28BUS.29" name=".D0.A8.D0.B8.D0.BD.D0.B0_.28BUS.29"></a></p>
<h4><span>Шина (BUS)</span> <span style="float:none;"> </span></h4>
<p>Терминът адресна шина или просто шина отговаря на електрическия път, по който битовете се пренасят между различните компютърни компоненти. В зависимост от типа на системата, могат да съществуват няколко вида шини. За потребителите най-съществена е шината за данни, която пренася данните от и към централния процесор. Колкото е по-широка шината за данни, толкова по-голяма е изчислителната скорост на компютъра. Например процесор Intel Pentium II има 32 битова шина, което означава, че тя може да пренася 32 бита наведнъж.</p>
<p><a id=".D0.A7.D0.B5.D1.81.D1.82.D0.BE.D1.82.D0.B0_.D0.BD.D0.B0_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80.D0.B0" name=".D0.A7.D0.B5.D1.81.D1.82.D0.BE.D1.82.D0.B0_.D0.BD.D0.B0_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80.D0.B0"></a></p>
<h3><span>Честота на процесора</span> <span style="float:none;"> </span></h3>
<p>Микропроцесорът си има часовник, който синхронизира и задава скоростта на всички операции в един машинен цикъл. Скоростта на системния часовник в една компютърна система се измерва като честота, изразена в цикли и секунди. Тя се контролира от кварцов кристал в малък метален контейнер. Когато към краищата на кристала се подаде напрежение, той започва да осцилира (вибрира) с определена честота, която зависи от неговата форма и големина. Тези вибрации генерират променлив ток с честота, хармонична на честотата на трептене на кристала. Това променливо напрежение е и честотата на часовника. Обективно тя е от порядъка на няколко милиона цикъла в секунда.</p>
<p>Бързодействието на процесор (тактовата честота) се измерва в мегахерци &#8211; 1MHz означава един милион такта в секунда. Тактовата честота определя до голяма степен производителността на процесора. Съвременните процесори имат тактова честота от 2 и повече GHz, а най-новите процесори <strong>Pentium IV</strong> са с честота 3,7 GHz.</p>
<p>Един цикъл е най-малкият интервал от време, който може да съществува в работата на процесора. Всяко действие продължава най-малко един, а обикновено и повече цикли. Например при прехвърлянето на данни от и към паметта на процесор 8086 са му необходими четири цикъла плюс състояние на изчакване. Състоянието на изчакване е цикъл, при който процесорът не извършва никакво действие, за да не изпревари останалата част от компютъра. За същото нещо на процесор 80286 са му необходими два цикъла плюс състояние на изчакване.</p>
<p>Времето, необходимо за изпълнение на инструкциите, е също различно за различните процесори. Оригиналните процесори 8086 и 8088 изпълняват една инструкция средно за 12 цикъла. Процесорите 80286 и 80386 извършват същата инструкция за около 4–5 цикъла, а 80486 за два цикъла. При Pentium процесорите една инструкция се изпълнява за един цикъл, а при Pentium 4 за половин. Сравнението на различните системи само на базата на тактовата честота е трудно поради различните времена (в цикли) за изпълнение на инструкциите. Така един 100 MHz Pentium се равнява приблизително на 200Mhz 80486 процесор или на 400Mhz процесор 80386 или 286. Както се вижда, сравняването на различните системи само на базата на тактовата честота не е правилно, тъй като има много други фактори, които влияят върху производителността на системата.</p>
<p><a id=".D0.9A.D0.B0.D0.BA_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D0.B8_.D0.B5.D0.B4.D0.B8.D0.BD_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80" name=".D0.9A.D0.B0.D0.BA_.D1.80.D0.B0.D0.B1.D0.BE.D1.82.D0.B8_.D0.B5.D0.B4.D0.B8.D0.BD_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80"></a></p>
<h2><span>Как работи един процесор</span> <span style="float:none;"> </span></h2>
<p>Процесорите работят, като извършват изчисления на базата на конкретни инструкции, записани в софтуера, работещ на компютъра. Тези инструкции, които при стартиране на дадено приложение се зареждат в процесора, му указват как да обработва порциите от данни, записани в оперативната памет (RAM) на компютъра. Така процесорите непрекъснато „препускат“ през инструкции и данни, които се зареждат в тях от паметта. Освен, че работят с основната памет, процесорите използват и един специален тип бързодействаща памет, наричана „кеш памет“ (cache). Кеш-паметта спомага процесорите да бъдат по-продуктивни. Тя съхранява инструкции и данни, използвани наскоро от процесора. Благодарение на своята близост до главния изчислителен механизъм вътре в процесора и на факта, че процесорът често се нуждае от повторно използване на едни и същи инструкции и данни, кеш-паметта поддържа процесора активен и ускорява работата на компютъра като цяло. Всъщност през повечето време процесорите работят директно с различни типове кеш-памет, а тя от своя страна се свързва с основната оперативна памет. Така кеш-паметта служи като бързодействащ буфер между процесора и основната памет, прехвърляйки данните в процесора, когато се нуждае от тях и ги изисква.</p>
<p><a id=".D0.91.D1.8A.D1.80.D0.B7.D0.BE.D0.B4.D0.B5.D0.B9.D1.81.D1.82.D0.B2.D0.B8.D0.B5" name=".D0.91.D1.8A.D1.80.D0.B7.D0.BE.D0.B4.D0.B5.D0.B9.D1.81.D1.82.D0.B2.D0.B8.D0.B5"></a></p>
<h2><span>Бързодействие</span> <span style="float:none;"> </span></h2>
<p>Въпреки, че номиналното бързодействие на процесора е важен фактор при определяне на бързината, с която той извършва изчисления, има и други важни различия в това как различните процесори вършат своята работа вътрешно. Например много процесори изпълняват няколко изчисления едновременно. Технологията, която поддържа този метод, се нарича „конвейрна обработка“. Освен това някои прескачат напред, за да изпълнят допълнителни изчисления, за които се предполага, че работещата програма ще ги поиска, преди програмата да ги поиска наистина. Това се нарича „спекулативно изпълнение“ и е една от многото сложни операции, които се срещат в съвременните процесори. Различните процесори реализират тези методи по разнообразни начини, с което се обясняват многото разлики в цялостната производителност на чипа, независимо от неговото бързодействие в MHz.</p>
<p>Друг важен фактор в общата производителност на чипа е доколко са работоспособни различните процесорни схеми. Процесорите имат способност да работят непрекъснато и да дават резултати толкова бързо, колкото им се задават задачи, над които да работят. Следователно в идеалния случай бихме искали да подаваме на процесора непрекъснат поток от данни, така че той да може да ги обработва с максимална скорост. В действителност обаче различни забавяния, които се получават в компютърната система, често принуждават процесора да стои без работа за кратки периоди от време, през които той изчаква пристигането на следващите данни.</p>
<p>Важен метод за компенсиране на тези забавяния е добавянето на специална бързодействаща памет в цялостната схема на процесора на компютъра. И в двата случая целта е процесорът да се накара да работи колкото е възможно повече, защото това се трансформира директно в по-голямо общо бързодействие на компютъра.</p>
<p><a id=".D0.9A.D0.B5.D1.88_.D0.BF.D0.B0.D0.BC.D0.B5.D1.82_L1_.D0.B8_L2" name=".D0.9A.D0.B5.D1.88_.D0.BF.D0.B0.D0.BC.D0.B5.D1.82_L1_.D0.B8_L2"></a></p>
<h2><span>Кеш памет L1 и L2</span> <span style="float:none;"> </span></h2>
<p>Кеш паметта играе особено важна роля за производителността на процесора(CPU). Тя може в голяма степен да подобри ефективността на процесора(CPU), като му предоставя достъп до необходимите данни по-бързо, отколкото това прави обикновената оперативна памет(RAM).Чиповете на кеш паметта са не само по-бързи, но имат и по-бърза връзка с процесора(CPU).</p>
<p><strong>Как работи кеш паметта?</strong></p>
<p>Процесорът работи много по-ефективно, когато има по-бърз достъп до вече използвани данни и инструкции, или до „кеш паметта“. След като процесорът завърши това, над което е работил, той може да се обърне към нея, вместо към обикновената (и по-бавна) RAM памет, която се намира по-далеч и получаването на данни от нея изисква повече време.</p>
<p>Двата най-разпространени типа кеш-памет се означават като L1 (Level 1- ниво 1) и L2 (Level 2– ниво 2). Има и кеш-памет L3 (Level 3), но този вид не е много популярен. Въпреки, че в техническо отношение кеш-паметта е вид памет, в повечето случаи L1 и L2 са вградени в процесорния чип или в самата процесорна карта. Така че тя е по-скоро елемент на процесора, отколкото на паметта.</p>
<p>Всяко ниво на кеш паметта представлява отделна част памет и се третира от процесора независимо. По традиция кеш паметта L1 е по-малка от двете и се разполага в самия процесор, а L2 се разполага извън него, но в непосредствена близост.</p>
<p>Когато процесорът работи с няколко вида кеш памет, първо проверява кеш паметта L1, след това кеш L2 и накрая – основната памет. Реално кешът е прозрачен за процесора, тъй като CPU се обръща към RAM паметта чрез виртуални адреси, а кеш паметта използва своите механизми за да определи дали има съвпадение на даден адрес вътре в регистрите си. При съответствие на адрес кеш паметта подава данните към процесора, като обръщението към основната памет се прекратява.</p>
<p>Друга съществена разлика между кеш L1 и L2 е бързината, с която процесорът може да осъществява достъп до различните видове памет. Тъй като кеш паметта L1 е интегрирана във вътрешността на микропроцесора, тя обикновено работи със същата бързина, с каквато и централният процесор; така например при процесор с тактова честота 500 MHz, скоростта на връзката към кеш паметта L1 е също 500 MHz. Кеш паметта L2 се свързва при по-старите системи с процесора със същата скорост като на оперативната памет. Тази скорост се определя от „системната шина“ (system bus) на компютъра, което обикновено работи при 66, 100, 133 MHz, а при новите процесори Pentium 4 при 400, 533,667,800MHz.За Pentium EE 1067Mhz,а за Intel&#8217;s Core 2 Quadro на 1333Mhz. Ако кеш паметта се намира в самия процесор или на процесорната платка, както е при повечето процесори Pentium II и Pentium III, връзката процесор-кеш L2 става през така наречената „задна шина“ (backside bus). Тази шина работи по-бързо от системната шина, но наполовина от скоростта на процесора. Това се нарича „съотношение 1:2“. Така при процесор Pentium III с тактова честота 500 MHz, скоростта на връзката процесор – кеш L2 е 250 MHz. При системи, при които кеш паметта L2 е вградена в самия чип, има съотношение 1:1 между скоростта на процесора и скоростта на връзката процесор – кеш L1.Вече всички производители Intel AMD и други вграждат L2 кеша в самия чип тъй като настоящите а и бъдещи процесори, са зависими до голяма степен от неговата скорост.Тоест при работа в режим 1:1 времето за зареждане от L2 е много по малко. При PentiumD моделите от серия 9хх L2 кеша е общ за двата процесора като по този начин се постига динамично разпределение на кеша от процесорните ядра, ако едното ядро е неактивно другото може да ползва целия обем L2.За Core 2 Quadro се използва подобна организация на кеша но разликата е че има 2 кеша от второ ниво тъй като общо са 4 ядра. Или получаваме следната конфигурация.L1 data-4x32KBytes за L1 Code-4x32KBytes и L2-2x4096Kbytes.</p>
<p><a id=".D0.9F.D1.80.D0.BE.D0.B8.D0.B7.D0.B2.D0.BE.D0.B4.D0.B8.D1.82.D0.B5.D0.BB.D0.B8_.D0.BD.D0.B0_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80.D0.B8" name=".D0.9F.D1.80.D0.BE.D0.B8.D0.B7.D0.B2.D0.BE.D0.B4.D0.B8.D1.82.D0.B5.D0.BB.D0.B8_.D0.BD.D0.B0_.D0.BF.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80.D0.B8"></a></p>
<h2><span>Производители на процесори</span> <span style="float:none;"> </span></h2>
<ul>
<li><strong>Intel</strong></li>
<li><strong>AMD</strong></li>
<li><strong>Motorola</strong></li>
<li><strong>IBM</strong></li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/batetobg.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/batetobg.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/batetobg.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/batetobg.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/batetobg.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/batetobg.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/batetobg.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/batetobg.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=10&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://batetobg.wordpress.com/2009/06/23/%d1%86%d0%b5%d0%bd%d1%82%d1%80%d0%b0%d0%bb%d0%b5%d0%bd-%d0%bf%d1%80%d0%be%d1%86%d0%b5%d1%81%d0%be%d1%80/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c7c014d1ffeb83c5d32409f8749ebeda?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">batetobg</media:title>
		</media:content>
	</item>
		<item>
		<title>Компютърът &#8211; Подробна информация</title>
		<link>http://batetobg.wordpress.com/2009/06/23/5/</link>
		<comments>http://batetobg.wordpress.com/2009/06/23/5/#comments</comments>
		<pubDate>Tue, 23 Jun 2009 14:10:21 +0000</pubDate>
		<dc:creator>batetobg</dc:creator>
				<category><![CDATA[Компютри и Интернет]]></category>
		<category><![CDATA[информатика]]></category>
		<category><![CDATA[компютър]]></category>
		<category><![CDATA[периферия]]></category>

		<guid isPermaLink="false">http://batetobg.wordpress.com/?p=5</guid>
		<description><![CDATA[Компютърът е сложна електронно изчислителна машина, състояща се от отделни модули (елементи, части), чието общо предназначение е обработка на информация, (данни), представени в цифров (дигитален) вид. Тази обработка се извършва съгласно някакъв алгоритъм, представен в компютъра като програма. Програмата е последователност от инструкции, които водят до решаването на някакъв конкретен проблем или клас от проблеми. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=5&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<table id="toc" class="toc" style="height:7px;" border="0" width="6" summary="Съдържание">
<tbody>
<tr></tr>
</tbody>
</table>
<p><strong>Компютърът</strong> е сложна електронно изчислителна машина, състояща се от отделни модули (елементи, части), чието общо предназначение е обработка на информация, (<span class="new">данни</span>), представени в цифров (дигитален) вид. Тази обработка се извършва съгласно някакъв алгоритъм, представен в компютъра като <span class="new">програма</span>. Програмата е последователност от инструкции, които водят до решаването на някакъв конкретен проблем или клас от проблеми.</p>
<h2><span class="mw-headline">Класификация на компютрите</span> <span class="editsection" style="float:none;"> </span></h2>
<p><a id=".D0.9A.D0.BB.D0.B0.D1.81.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.86.D0.B8.D1.8F_.D1.81.D0.BF.D0.BE.D1.80.D0.B5.D0.B4_.D0.BF.D1.80.D0.B5.D0.B4.D0.BD.D0.B0.D0.B7.D0.BD.D0.B0.D1.87.D0.B5.D0.BD.D0.B8.D0.B5.D1.82.D0.BE" name=".D0.9A.D0.BB.D0.B0.D1.81.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.86.D0.B8.D1.8F_.D1.81.D0.BF.D0.BE.D1.80.D0.B5.D0.B4_.D0.BF.D1.80.D0.B5.D0.B4.D0.BD.D0.B0.D0.B7.D0.BD.D0.B0.D1.87.D0.B5.D0.BD.D0.B8.D0.B5.D1.82.D0.BE"></a></p>
<h3><span class="mw-headline">Класификация според предназначението</span> <span class="editsection" style="float:none;"> </span></h3>
<ul>
<li><strong>Суперкомпютър</strong></li>
<li><strong>Мини суперкомпютър</strong></li>
<li><strong><span class="new">Мейнфрейм</span></strong></li>
<li><strong>Бизнес сървър</strong></li>
<li><strong><span class="new">Миникомпютър</span></strong></li>
<li><strong><span class="new">Работна станция</span></strong></li>
<li><strong>Персонален компютър</strong></li>
<li><strong><span class="mw-redirect">Лаптоп</span></strong></li>
<li><strong>Електронно ръчно информационно устройство (Personal Digital Assistant, PDA)</strong></li>
</ul>
<p>Тази класификация е доста неопределена по характер. Това е така, защото непрекъснато се откриват нови приложения на компютрите. Това, което до преди няколко десетилетия е било непосилно за персоналния компютър, днес може да е част от ежедневието на домашния потребител. Затова границите между горните термини е неясна и се променя с времето.</p>
<p><a id=".D0.9A.D0.BB.D0.B0.D1.81.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.86.D0.B8.D1.8F_.D1.81.D0.BF.D0.BE.D1.80.D0.B5.D0.B4_.D1.82.D0.B5.D1.85.D0.BD.D0.BE.D0.BB.D0.BE.D0.B3.D0.B8.D1.87.D0.BD.D0.BE.D1.82.D0.BE_.D0.B8.D0.B7.D0.BF.D1.8A.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5" name=".D0.9A.D0.BB.D0.B0.D1.81.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.86.D0.B8.D1.8F_.D1.81.D0.BF.D0.BE.D1.80.D0.B5.D0.B4_.D1.82.D0.B5.D1.85.D0.BD.D0.BE.D0.BB.D0.BE.D0.B3.D0.B8.D1.87.D0.BD.D0.BE.D1.82.D0.BE_.D0.B8.D0.B7.D0.BF.D1.8A.D0.BB.D0.BD.D0.B5.D0.BD.D0.B8.D0.B5"></a></p>
<h3><span class="mw-headline">Класификация според технологичното изпълнение</span><span class="editsection" style="float:none;"> </span></h3>
<p>Технологиите за изработка на компютри са се променили много от първоначалното им създаване. Първите компютри са били изцяло механични. През <span class="mw-redirect">30-те години</span> на XX век се въвежда използването на <span class="new">релета</span>, а през <span class="mw-redirect">40-те</span> Джон Атанасов и <span class="new">Клифърд Бери</span> създават първия електронен компютър(ABC). От 60-те досега компютрите са изцяло транзисторни. Освен тези основни технологии, в развитието на компютрите е имало опити и с други доста екзотични такива. Например, за икономическо моделиране са били изпозвани канали с различни стеснявания, през които тече вода. Днес се разработват нови технологии, които да увеличат производителността на компютрите. Ето основните от тях:</p>
<ul>
<li><strong><span class="new">Оптичен компютър</span></strong></li>
<li><strong><span class="new">Квантов компютър</span></strong></li>
</ul>
<p>За класифицирането не е толкова важна технологията на изработка, колкото са например функциите, които изпълнява компютърът. Изключение правят единствено квантовите компютри, тъй като тяхната технология би позволила дотолкова да се увеличи скоростта на обработка на информация, че това ще доведе до качествено нови функции на компютъра.</p>
<p><a id=".D0.9F.D1.80.D0.B8.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F" name=".D0.9F.D1.80.D0.B8.D0.BB.D0.BE.D0.B6.D0.B5.D0.BD.D0.B8.D1.8F"></a></p>
<h2><span class="mw-headline">Приложения</span> <span class="editsection" style="float:none;"> </span></h2>
<p>Първите електронни компютри са били много скъпи и големи — с размерите на стая. Това ограничавало тяхната употреба само до научни изчисления, често за военни цели. <span class="new">ENIAC</span> например е бил създаден за балистични изчисления, но по-късно е използван за проверка на конструкцията на водородната бомба. Това изчисление, проведено от 15 декември 1945 до януари 1946, включило над един милион перфокарти с данни, и показало, че водородната им бомба не би работила както трябва. (Много от съвременните суперкомпютри също се използват за симулации, включващи ядрени оръжия.) Британският Colossus пък е използван за разбиване на вражеските кодове през Втората световна война.</p>
<p>С развитието на универсалните компютри приложенията им стават практически неизчерпаеми. Основната им функция си остава обработката на данни, но тя придобива много мащабни размери — особено след създаването на глобалната мрежа Интернет. Информацията става все по-важна част от живота на хората, а с това и самите компютри. Развитието на комуникациите и натрупването на огромни количества информация довежда до необходимостта тя да се систематизира. Самият проект Уикипедия например има за цел да систематизира знанията на човечеството на едно място и да представи максимално ясно за читателя информацията.</p>
<p><a id=".D0.A3.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.BE_.D0.BD.D0.B0_.D0.BA.D0.BE.D0.BC.D0.BF.D1.8E.D1.82.D1.8A.D1.80.D0.B0" name=".D0.A3.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.BE_.D0.BD.D0.B0_.D0.BA.D0.BE.D0.BC.D0.BF.D1.8E.D1.82.D1.8A.D1.80.D0.B0"></a></p>
<h2><span class="mw-headline">Устройство на компютъра</span> <span class="editsection" style="float:none;"> </span></h2>
<p>Почти всички съвременни компютри са изградени съгласно архитектурата, описана от Джон фон Нойман. Според нея компютърът се състои от три основни компонента: процесор, памет и входно-изходни устройства.</p>
<p>Следва кратко описание на основни съставни части на един съвременен персонален компютър:</p>
<p><a id=".D0.9F.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80" name=".D0.9F.D1.80.D0.BE.D1.86.D0.B5.D1.81.D0.BE.D1.80"></a></p>
<h3><span class="mw-headline">Процесор</span> <span class="editsection" style="float:none;"> </span></h3>
<dl>
<dd>
<div class="noprint"><em> </em></div>
</dd>
</dl>
<p>Сърцето на компютъра е процесорът, наричан още Централен процесор, (ЦПУ) (Central Processing Unit, CPU). Той управлява работата на всички останали устройства и изпълнява самата програма (намираща се в паметта на компютъра). Състои се от аритметично-логическо устройство (АЛУ), управляващо устройство (УУ) и регистров блок (РБ). АЛУ изпълнява целочислените (събиране, изваждане и т.н.), логическите (И, ИЛИ, НЕ) и сравнителните операции.</p>
<p>Управляващото устройство следи къде се намира следващата за изпълнение инструкция в паметта и се грижи разултатът от изпълнението на инструкцията да бъде записан в паметта, ако това е посочено в програмата.</p>
<p>Регистровия блок или бързо достъпни клетки. Използва се за служебни цели на УУ и АЛУ и като свръх бърза памет за съхраняване на получаваните резултати.</p>
<p><a id=".D0.94.D1.8A.D0.BD.D0.BD.D0.B0_.D0.BF.D0.BB.D0.B0.D1.82.D0.BA.D0.B0" name=".D0.94.D1.8A.D0.BD.D0.BD.D0.B0_.D0.BF.D0.BB.D0.B0.D1.82.D0.BA.D0.B0"></a></p>
<h3><span class="mw-headline">Дънна платка</span> <span class="editsection" style="float:none;"> </span></h3>
<p><strong>Дънната платка (MotherBoard)</strong> е една от основните хардуерни части на компютъра. чрез нея се свързват всички останали части &#8211; процесор, памет, входно-изходни устройства. Като цяло архитектурата на всяка дънна платка се състои от 2 основни елемента &#8211; северен (North bridge) и южен (South bridge) мост.</p>
<p><a id=".D0.9E.D0.BF.D0.B5.D1.80.D0.B0.D1.82.D0.B8.D0.B2.D0.BD.D0.B0_.D0.BF.D0.B0.D0.BC.D0.B5.D1.82" name=".D0.9E.D0.BF.D0.B5.D1.80.D0.B0.D1.82.D0.B8.D0.B2.D0.BD.D0.B0_.D0.BF.D0.B0.D0.BC.D0.B5.D1.82"></a></p>
<h3><span class="mw-headline">Оперативна памет</span> <span class="editsection" style="float:none;"> </span></h3>
<dl>
<dd>
<div class="noprint"><em> </em></div>
</dd>
</dl>
<p><strong>Оперативната памет</strong> е последователност от номерирани клетки с еднаква големина, съдържащи информация. Тази информация може да е инструкция, която процесорът трябва да изпълни, или данни, които трябва да се обработят. Всяка клетка има адрес, чрез който програмата се обръща към необходимото място в паметта. Оперативната памет също така бива наричана памет от 1-во ниво, според отдалечеността от процесора. По принцип тя се дели на ROM (Read Only Memory) и RAM (Random Access Memory).</p>
<p>Най-близка до процесора и най-често вградена в него е малка по-размер памет, наречена кеш памет (процесорен кеш). Времето за достъп до тази памет е най-малко. Кешът най-често е разделен на две части &#8211; за данни и за инструкции. Процесорът зарежда в кеша си (на база евристични алгоритми) части от оперативната памет, наречени линии, за да ускори изчислителния процес. Поради факта, че оперативната памет работи със скорост, която е в пъти по-малка от тази на процесора, когато последният трябва да ползва ОП, се налага да изчака, което е продиктувало създаването на процесорния кеш. Процесорният кеш за разлика от ОП не може да бъде директно адресиран от програмиста.</p>
<p>Оперативната памет се различава от външната памет по това, че в нея се съхраняват активните програми, т.е. тези, които се изпълняват в момента от процесора. Чрез техника, наречена <span class="new">суопинг</span> (<em><span class="new">swapping</span></em>), външната памет (обикновено твърд диск) може да се използва като оперативна. Външната памет под формата на твърд диск се нарича обикновено памет от 2-ро ниво.</p>
<p>Съществува и понятието памет от 3-то ниво, която се използва при компютри с големи изисквания за количеството на съхранените данни. Такива системи са библиотеките от ленти, които могат да съхранят огромно количество информация, но времето за достъп до нея е огромно, защото самата лента трябва да бъде поставена в четящото устройство от автомат, като бъде физически преместена от мястото на съхранение.</p>
<p>Дънната платка, процесорът, оперативната памет и захранващият блок се намират монтирани в т.нар. системен блок или компютърна кутия, към която се свързват входно-изходните устройства &#8211; обикновено твърд диск, <span class="mw-redirect">флопидисково устройство</span>, монитор, клавиатура, <span class="mw-redirect">мишка</span> и др.</p>
<p><a id=".D0.9F.D0.B5.D1.80.D0.B8.D1.84.D0.B5.D1.80.D0.BD.D0.B8_.D1.83.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.B0" name=".D0.9F.D0.B5.D1.80.D0.B8.D1.84.D0.B5.D1.80.D0.BD.D0.B8_.D1.83.D1.81.D1.82.D1.80.D0.BE.D0.B9.D1.81.D1.82.D0.B2.D0.B0"></a></p>
<h2><span class="mw-headline">Периферни устройства</span> <span class="editsection" style="float:none;"> </span></h2>
<dl>
<dd>
<div class="noprint"><em> </em></div>
</dd>
</dl>
<p><strong>Периферните устройства</strong> увеличават функционалността на компютъра. Повечето от тях улесняват и разширяват връзката им с околния свят, в частност с човека. Пълен списък на съществуващите периферни устройства е посочен в статията за <span class="mw-redirect">периферни устройства</span>. Основните от тях са:</p>
<ul>
<li><strong>Монитор</strong></li>
</ul>
<p>Мониторът е устройство за извеждане на информация от компютъра към потребителя. Самият монитор е управляван от <span class="new">видеокартата</span> и визуализира подадената информация.</p>
<ul>
<li><strong>Клавиатура и <span class="mw-redirect">мишка</span></strong></li>
</ul>
<p>Клавиатурата и мишката са периферни устройства, които служат за подаване на информация към компютъра.</p>
<ul>
<li><strong>Скенер</strong></li>
<li><strong>Принтер</strong></li>
<li><strong><span class="new">Копир</span></strong></li>
<li><strong><span class="mw-redirect">Тонколони</span></strong></li>
<li><strong>Микрофон</strong></li>
<li><strong>Уеб камера</strong></li>
</ul>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/batetobg.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/batetobg.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/batetobg.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/batetobg.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/batetobg.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/batetobg.wordpress.com/5/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/batetobg.wordpress.com/5/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/batetobg.wordpress.com/5/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=batetobg.wordpress.com&amp;blog=8293462&amp;post=5&amp;subd=batetobg&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://batetobg.wordpress.com/2009/06/23/5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c7c014d1ffeb83c5d32409f8749ebeda?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">batetobg</media:title>
		</media:content>
	</item>
	</channel>
</rss>
