|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Здравствуйте! Назрел такой вопрос. Насколько я знаю, если центральному процессору нужно выполнить программу, она копируется в ОЗУ и выполняется оттуда, т.к. скорость общения с ОЗУ гораздо быстрее, чем с хардом. Для этих вещей в составе процессора есть контроллер ОЗУ, который этим занимается. Также это одна из ролей биоса. (<<<- по-моему, я тут где-то ошибся, поправьте, пожалуйста). Также у процессора есть свой собственный кэш, в котором сохраняются адреса регистров, к которым он чаще всего обращается, сделано это из соображений, опять же, увеличения скорости работы процессора. А теперь, внимание, вопрос! Размер кэша у современных процессоров постепенно увеличивается (например, у распространенных i7 в среднем ценовом диапазоне - 8 мб). Можно ли перекинуть функции оперативной памяти на кэш? И, как следствие, отказаться от использования оперативной памяти вовсе? Интересует в этом вопросе основной момент - как сказать процессору копировать исполняемую программу не в ОЗУ, а к себе в кэш и выполнять её оттуда? Этот процесс закладывается производителем? Или это можно реализовать на низком уровне программирования? Можно ли это сделать, написав "свой биос"? Тема дискуссионная, давайте обсуждать :) ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 06:22 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINe Тема дискуссионная, давайте обсуждать :) тут нечего обсуждать вообще - почитай в интернете, для чего нужен кеш ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 09:16 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Можно использовать всего 8Мб памяти, и все будет закэшировано в CPU. Есть такая самодельная ОС - фантом. Так в ней по факту ее создатель предлагает отказаться от памяти, а работает только с диском. (ну он не так предлагает, но фактически память у него только как кэш загрузки программ). Идея чем то похожа ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 09:22 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINeМожно ли перекинуть функции оперативной памяти на кэш? И, как следствие, отказаться от использования оперативной памяти вовсе?Тут есть противоречие. Как только "перекинуть функции оперативной памяти на кэш", то кэш станет оперативной памятью. Т.е. произойдет не отказ от ОЗУ, а перенос его в один корпус с процессором. А такой подход уже давно существует, хотя и применяется обычно в куда боле слабых процессорах и контроллерах. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 10:01 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINe, Какая в п**у дискуссия, вам просто надо почитать почему на процессоре имеется кеш... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 11:48 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Sergey OrlovG00dWINe, Какая в п**у дискуссия, вам просто надо почитать почему на процессоре имеется кеш...+1 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 12:53 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Прогер_самоучка, ну и ник ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 15:10 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINeМожно ли это сделать, написав "свой биос"? Когда-то слышал, что можно запрещать блокам кеша процессора выборку из ОЗУ. Отображать адреса ОЗУ на кеш и обращаться к нему как к ОЗУ. Это было давно и отличалось от процессора к процессору. Но в даташитах этого не читал, подтвердить не могу. Для написания BIOS можно обратиться в Coreboot ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 16:41 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
По Вашей же ссылки можно найти документ: CAR: Using Cache as RAM in LinuxBIOS http://rere.qmqm.pl/~mirq/cache_as_ram_lb_09142006.pdf Т.ч. похоже действительно возможно. Никогда о таком не знал. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 17:21 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
у систем построенных на первых пнях ваще был ВНЕШНИЙ кеш второго уровня (не первого). в виде специального модуля. как опция. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 17:40 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Мимопроходящий, попахивает нищебродством. я имею в виду отказ от ОЗУ. разумеется, могут быть совсем специфические применения, но все-таки. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:33 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Hello, Kdv! You wrote on 21 апреля 2016 г. 18:39:29: Kdv> попахивает нищебродством.не. школоты дух ощущаю я. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:40 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
kdvразумеется, могут быть совсем специфические применения HP the Machine, например. Но там они скорее отказались от накопителей, чем от ОЗУ. Хотя можно рассматривать и наоборот: отказались от ОЗУ и работают прямо с винта. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:44 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, ну, с учетом ssd как бы, можно понять логику вопроса. Допустим, нахера надо ОЗУ, если можно все положить на SSD. Однако, SSD не вечен, значит, надо ОЗУ переложить на проц, но там всего 8мб памяти. Херня получается. Какие-то уродцы, конечно, получатся. Но "ан масс" эта идея не пойдет. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 18:54 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
kdvс учетом ssd Насколько я понял их блаболы, в HP пошли дальше современного флэша. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 19:21 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
SiemarglМожно использовать всего 8Мб памяти, и все будет закэшировано в CPU. Есть такая самодельная ОС - фантом. Так в ней по факту ее создатель предлагает отказаться от памяти, а работает только с диском. (ну он не так предлагает, но фактически память у него только как кэш загрузки программ). Идея чем то похожа Да, в принципе, это и планируется сделать, использовать именно память, что в CPU. Таким образом, отказавшись от ОЗУ. miksoftG00dWINeМожно ли перекинуть функции оперативной памяти на кэш? И, как следствие, отказаться от использования оперативной памяти вовсе?Тут есть противоречие. Как только "перекинуть функции оперативной памяти на кэш", то кэш станет оперативной памятью. Т.е. произойдет не отказ от ОЗУ, а перенос его в один корпус с процессором. А такой подход уже давно существует, хотя и применяется обычно в куда боле слабых процессорах и контроллерах. Ну не совсем, сам кэш процессору все же нужен. Идея в том, чтобы часть памяти кэша процессора оставить для, собственно кэша, а другую часть эксплуатировать как ОЗУ. "Противоречие" - придираетесь :) Отсутствие физических планок оперативной памяти, вот чего пытаюсь добиться ;) Sergey OrlovG00dWINe, Какая в п**у дискуссия, вам просто надо почитать почему на процессоре имеется кеш... Прошу Вас не вести себя как всезнающий ребенок, а прочитать остальные посты в данной теме. Прогер_самоучкаSergey OrlovG00dWINe, Какая в п**у дискуссия, вам просто надо почитать почему на процессоре имеется кеш...+1 И Вам тоже. tunknownG00dWINeМожно ли это сделать, написав "свой биос"? Когда-то слышал, что можно запрещать блокам кеша процессора выборку из ОЗУ. Отображать адреса ОЗУ на кеш и обращаться к нему как к ОЗУ. Это было давно и отличалось от процессора к процессору. Но в даташитах этого не читал, подтвердить не могу. Для написания BIOS можно обратиться в Coreboot Большое спасибо за ссылку! Всем остальным, кто в данном топике посылает меня учить устройство CPU, желаю прочитать. К автору - Вы, помимо этого, можете еще какими-нибудь ссылками поделиться? Насколько я понял, тут уже готовая реализация со своими настраиваемыми функциями. А что-нибудь "глубже" есть? Чтобы, собственно, самому реализовать данную вещь. Заранее благодарен. Dimitry Sibiryakovkdvразумеется, могут быть совсем специфические применения HP the Machine, например. Но там они скорее отказались от накопителей, чем от ОЗУ. Хотя можно рассматривать и наоборот: отказались от ОЗУ и работают прямо с винта. Спасибо за наводку, но тут они ведь пытаются наоборот, запихнуть все в ОЗУ. А у меня задача - отказаться от этого :) То бишь, чтобы компьютер мог функционировать ГРУБО ГОВОРЯ на процессоре и каком-нибудь накопителе (повторюсь - ГРУБО ГОВОРЯ). kdvDimitry Sibiryakov, ну, с учетом ssd как бы, можно понять логику вопроса. Допустим, нахера надо ОЗУ, если можно все положить на SSD. Однако, SSD не вечен, значит, надо ОЗУ переложить на проц, но там всего 8мб памяти. Херня получается. Какие-то уродцы, конечно, получатся. Но "ан масс" эта идея не пойдет. Тем не менее, технический прогресс шагает вперед семимильными шагами, особенно в плане развития возможностей накопителей информации. Например, Intel Xeon E7-2850V2 имеет объем кэша аж 37.5 мб! Однако, давным давно компьютеры обладали как раз таки весьма маленькими объемами ОЗУ, а теперь эти объемы сопоставимы с объемами кэша CPU. Да, такой компьютер будет работать как тот, старинный, хотя не факт, учитывая скорость "общения" CPU с его кэшем... :) А теперь я все же ПОВТОРЮ СВОЙ ВОПРОС (и впредь попрошу отвечать на него). Чтобы заставить процессор "глядеть" не в оперативную память (физически), а перенести все функции ОЗУ в свой кэш, необходимо переписать биос? Или это заложено в сам процессор его производителями? PS: спасибо всем, кто оставил свой ответ в данной теме. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 19:46 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINeЧтобы заставить процессор "глядеть" не в оперативную память (физически), а перенести все функции ОЗУ в свой кэш, необходимо переписать биос? Нет. Нужно переплавить железо. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 19:49 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovG00dWINeЧтобы заставить процессор "глядеть" не в оперативную память (физически), а перенести все функции ОЗУ в свой кэш, необходимо переписать биос? Нет. Нужно переплавить железо. Если верить тому документу, можно обходится без ОЗУ. Только это очень ранняя стадия загрузки, и к прочему железу доступа нет (дисков ес-но тоже). Т.е. программа - сама в себе, грузится из ПЗУ. Только что можно сделать без ввода/вывода? Или плавить железо - использовать что то простое типа одноплатки (только с охрененным процессором) и самому писать драйвера. Оба пути - малоперспективные. Вариант 2. Использовать ОС, размером с кеш процессора. Есть набор таких экспериментальных ОС. Память в этом случае просто кэш ввода/вывода (L4). Но планки стоять будут. Вопрос в том, какая конечная цель эксперимента? ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 21:36 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINeЗдравствуйте! Назрел такой вопрос. Насколько я знаю, если центральному процессору нужно выполнить программу, она копируется в ОЗУ и выполняется оттуда, т.к. скорость общения с ОЗУ гораздо быстрее, чем с хардом. Для этих вещей в составе процессора есть контроллер ОЗУ, который этим занимается. Также это одна из ролей биоса. (<<<- по-моему, я тут где-то ошибся, поправьте, пожалуйста). Также у процессора есть свой собственный кэш, в котором сохраняются адреса регистров, к которым он чаще всего обращается, сделано это из соображений, опять же, увеличения скорости работы процессора. А теперь, внимание, вопрос! Размер кэша у современных процессоров постепенно увеличивается (например, у распространенных i7 в среднем ценовом диапазоне - 8 мб). Можно ли перекинуть функции оперативной памяти на кэш? И, как следствие, отказаться от использования оперативной памяти вовсе? Интересует в этом вопросе основной момент - как сказать процессору копировать исполняемую программу не в ОЗУ, а к себе в кэш и выполнять её оттуда? Этот процесс закладывается производителем? Или это можно реализовать на низком уровне программирования? Можно ли это сделать, написав "свой биос"? Тема дискуссионная, давайте обсуждать :)Жесть :-) Что ни фраза, то золото :-) Предлагаю почитать что нибудь про компьютеры, прежде чем генерить гениальные идеи. SiemarglЕсть такая самодельная ОС - фантом. Так в ней по факту ее создатель предлагает отказаться от памяти, а работает только с диском. (ну он не так предлагает, но фактически память у него только как кэш загрузки программ). Идея чем то похожаЕсть вполне взрослые и массовые системы System 38 и AS\400, которые до сих пор обрабатывают, наверное, большинство бизнес-транзакций в США. Вот у них так, единое адресное пространство, а RAM служит для него кешем. Пространство 128 разрядное, кстати, потому что при таком подходе оно очень востребовано. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 22:21 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
tunknownКогда-то слышал, что можно запрещать блокам кеша процессора выборку из ОЗУ. Отображать адреса ОЗУ на кеш и обращаться к нему как к ОЗУ. Это было давно и отличалось от процессора к процессору.По моему, вы что то не так интерпретировали... Процессор не может обращаться к кешу не как к ОЗУ. Так что для этого не нужно делать ничего специального. "Отображать адреса ОЗУ на кеш и обращаться к нему как к ОЗУ" - это и делает аппаратный блок управления кешем любого процессора. ИМХО вы перепутали с обратной задачей - не позволять процессору обращаться к кэшу как к ОЗУ. Вот это важная задача, и разумеется, в любом процессоре, имеющем кэш, есть такие команды. Без них бы ничего не работало, как вы понимаете. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 22:26 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
SiemarglТолько что можно сделать без ввода/вывода? ну, на СМ1420 ОС можно было грузануть с ленты, задав чтение с нее, через панель ввода команд через 16-ричные переключатели. Вероятно, автору вопроса надо вернуться лет на 30 назад, чтобы прочувствовать возможности. Нынешние системы развиваются несколько в иной плоскости, ибо стоимость ОЗУ уже давно почти равна нулю (относительно окружения). ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2016, 23:25 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINeА теперь я все же ПОВТОРЮ СВОЙ ВОПРОС (и впредь попрошу отвечать на него). Чтобы заставить процессор "глядеть" не в оперативную память (физически), а перенести все функции ОЗУ в свой кэш, необходимо переписать биос? Или это заложено в сам процессор его производителями? PS: спасибо всем, кто оставил свой ответ в данной теме. Начнем с того, что считать процессором, если вернутся во времена появляния микропроцессоров, то тогда сам проц это просто арифметическое устройство, быстродействие которого очень быстро росло, а быстродействие такого элемента как память росло не так быстро как хотелось, в принципе можно было бы сделать быстродействующую память, но стоимость ее была бы запредельной, отсюда и причины появления кеша на кристалле проца: если нет кеша в процессоре, то он должен непосредственно обратиться к озу, в тоже время кеш на кристалле проца работает с его системной частотой, а не с частотой системной шины на которой сидит озу, Ремарка: в свое время пролетели пентиумы 2-ые, у которых кеш работал на частоте вдвое ниже, чем сам проц, а вот целероны с маленьким кешом, но работающим на частоте проца нашли спрос, с другой стороны вылетели в трубы самые первые целероны, у них отсутствовал кеш, Intel усвоила этот урок, петиумы теперь всегда имеют кеш, работающий на частоте проца, а целеорона без кеша не сыскать днем с огнем. 3. для быстрой загрузки данных из озу в кеш проца используют контроллер памяти и механизм "предсказаний что потребуется", и тот и другой в настоящее время интегрированы на кристалле, в результате в неиспользуемую часть кеша просто сливают блоками данные из озу без участия проца, а уже использованную такими же блоками обратно в озу... Ну это общие слова, а как это реализовано это уже к производителю. Другими словами кеш на проце нужен, чтоб убрать разницу в производительности самого числового блока и общей памяти. Вообще возьмите книжечку времен IBM PC, и почитайте, в принципе именно она и реализована в современных процессорах, да возможно иметь программу, которая и себя и свои данные уместит в кеше процессора, вот только ее надо сначала туда загрузить., как вы это сделаете.ваша головная боль... запишите вашу программу в биос, да стартуйте... ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 00:29 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Siemargl Вариант 2. Использовать ОС, размером с кеш процессора. Есть набор таких экспериментальных ОС. Память в этом случае просто кэш ввода/вывода (L4). Но планки стоять будут. Вопрос в том, какая конечная цель эксперимента? Цель, как вы и сказали - "Использовать ОС, размером с кеш процессора". А точнее - её разработка и запуск её именно из кэша. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 06:51 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
G00dWINeИ Вам тоже.о, спасибо. Можно вопрос? Как вы собираетесь 8 гигов оперативки запихнуть в проц? И сколько он будет стоить такой? Цель кеша проца - убрать задержки при обращении к оперативной памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 09:37 |
|
Обойтись без ОЗУ?
|
|||
---|---|---|---|
#18+
Прогер_самоучкаG00dWINeИ Вам тоже.о, спасибо. Можно вопрос? Как вы собираетесь 8 гигов оперативки запихнуть в проц? И сколько он будет стоить такой? Цель кеша проца - убрать задержки при обращении к оперативной памяти. Я там приводил выше пример о размерах кэша на современных топовых CPU. Этих объемов вполне хватит для простейшей ОС. А вообще, учитывая, что технологии функционирования накопителей информации развиваются весьма динамично, то объемы кэша CPU будут расти. И эти Ваши "8 гигов" - это лишь вопрос времени. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.04.2016, 09:51 |
|
|
start [/forum/topic.php?fid=30&fpage=12&tid=1529200]: |
0ms |
get settings: |
12ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
130ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 222ms |
0 / 0 |