История изменений
Исправление windows10, (текущая версия) :
Почему нет? Работает же в линуксе tmpfs,делающая «диск» с файловой системой в оперативной памяти. Объяснить ей что вон с того абсолютного адреса лежит область флэш-памяти и пусть с ней работает.
Потому что компьютер - не только для линукса, вот в чем ГЛАВНАЯ ПРОБЛЕМА.
Ты рассматриваешь логику работы в уже загруженной ОС, а тебе нужно эту логику развить вплоть до включения компьютера.
Рамдиск, коим является tmpfs - это ОС-специфичная приблуда, она не работает с ОЗУ прямой записью\чтением, а использует системные вызовы и выделяет память средствами самой системы. Поэтому возможны такие приколы, как создание свопа на диске в качестве ОЗУ, а потом создание в этой области рамдиска в качестве диска. Рекурсия. Соответственно работать это будет только в уже загруженном ядре системы с механизмом работы с памятью.
Вот этот как раз таки in place и работает. Но да, лишняя сущность давно уже. ARM-компы вполне без него обходятся.
Кто тебе такое сказал? в ARM это еще более костыльно, чем в x86.
С момента когда распространились SSD - тоже стало лишней сущностью.
То есть в твоей парадигме мира, вычислительные устройства не имеющие NVME, должны быть выброшены на свалку?
Вот тебе кстати и объяснение, почему это никто не будет делать.
Никто не мешает сохранять в системе программные средства для совместимости с внешними носителями.
Нет еще никакой системы. Есть процессор, который ты только включил. Этот процессор должен выполнять первичные инструкции и обращаться в конкретные места для выполнения кода.
Нет еще никаких внешних или внутренних носителей - это абстракция которую тебе, как человеку, готовят BIOS или сама ОС.
Процессор может работать только с точной адресацией, на которую расчитан. Шариться по блочным устройствам и определять, кто из них внутренний носитель, кто внешний, а кто вообще видеокарта - он сам по себе не может.
В процессоре и так всё нужное давно есть (несколько разных механизмов трансляции адресов).
Процессор даже не знает о каких-то SSD, у него нет собственного механизма обращения к блочным устройствам, как и самого определения блочности.
Линукс адаптировать как раз проще всего будет.
Прекрати мыслить Линуксами. Линукс - это операционная система, загруженная процессором в память. Тебе нужно мыслить как процессор.
Для этого тебе нужно немножко загуглить архитектуру и что происходит на этапе включения этого процессора. Как я написал выше, твой процессор даже к NVME обратиться не сможет, потому как а) Не имеет прямого доступа; б) Не имеет адресации. Он не сможет обратиться «куда-нибудь», ему нужен четкий адрес точки входа.
Давно пора перестать тащить совместимость с компами тридцатилетней давности.
Чтобы это давно было пора перестать - тебе нужно во-первых найти аргумент зачем это нужно, причем pro должны на порядок перевешивать contra; а во-вторых предложить хотя бы блочную, но действующую схему. Покамест ты просто посмотрел высокоуровневые решения сугубо Линукса, и сделал вывод что так же само они будут работать и на низком уровне.
Поэтому еще раз: открываешь хотя бы блочную схему с прерываниями и регистрами, и рассказываешь как ты собрался пинать процессор на чтение с SSDшника (и разумеется рассказываешь как процессору отличить первый SSD-шник от второго, SSD-шник от HDDшника, а их все от USB-флешки), при том не дергая по слову на цитаты, а от начала и до передачи управления ядру операционной системы :))
Программе всё равно где в физическом адресном пространстве располагаются ее страницы. Если это не модифицируемый код - то почему бы им не быть и в флэш-памяти и прямо оттуда исполняться?
Потому что тебе придется заставить оттуда исполняться ОДНОВРЕМЕННО ВСЕ ПРОГРАММЫ, начиная с BIOS, UEFI, BootROM, итд итп. Если хотя бы один из этих шагов потребует наличия ОЗУ - твоя идея херится на взлете.
Если же программа хочет изменить содержимое своей страницы - то copy on write эту страницу в обычное ОЗУ и пусть меняет.
Ты опять забываешь, что эту программу должно что-то запустить, и это что-то тоже должно быть чем-то где-то запущено.
Всякие линуксовые одноплатники,дисков не имеющие, вполне себе без Эппла существуют.
Во-первых, ты не говорил за бездисковую работу, ты говорил за работу без ОЗУ;
Во-вторых, все одноплатники имеют то, что упрощенно называется «блочным устройством», вне зависимости от того, что это - SSD, флоппи, eMMC, или ПЗУшка. Ну так на компе ты тоже можешь грузить Linux с ПЗУхи, проект CoreBoot называется, и дальше что?
Исправление windows10, :
Почему нет? Работает же в линуксе tmpfs,делающая «диск» с файловой системой в оперативной памяти. Объяснить ей что вон с того абсолютного адреса лежит область флэш-памяти и пусть с ней работает.
Потому что компьютер - не только для линукса, вот в чем ГЛАВНАЯ ПРОБЛЕМА.
Ты рассматриваешь логику работы в уже загруженной ОС, а тебе нужно эту логику развить вплоть до включения компьютера.
Рамдиск, коим является tmpfs - это ОС-специфичная приблуда, она не работает с ОЗУ прямой записью\чтением, а использует системные вызовы и выделяет память средствами самой системы. Поэтому возможны такие приколы, как создание свопа на диске в качестве ОЗУ, а потом создание в этой области рамдиска в качестве ОЗУ. Соответственно работать это будет только в уже загруженном ядре системы с механизмом работы с памятью.
Вот этот как раз таки in place и работает. Но да, лишняя сущность давно уже. ARM-компы вполне без него обходятся.
Кто тебе такое сказал? в ARM это еще более костыльно, чем в x86.
С момента когда распространились SSD - тоже стало лишней сущностью.
То есть в твоей парадигме мира, вычислительные устройства не имеющие NVME, должны быть выброшены на свалку?
Вот тебе кстати и объяснение, почему это никто не будет делать.
Никто не мешает сохранять в системе программные средства для совместимости с внешними носителями.
Нет еще никакой системы. Есть процессор, который ты только включил. Этот процессор должен выполнять первичные инструкции и обращаться в конкретные места для выполнения кода.
Нет еще никаких внешних или внутренних носителей - это абстракция которую тебе, как человеку, готовят BIOS или сама ОС.
Процессор может работать только с точной адресацией, на которую расчитан. Шариться по блочным устройствам и определять, кто из них внутренний носитель, кто внешний, а кто вообще видеокарта - он сам по себе не может.
В процессоре и так всё нужное давно есть (несколько разных механизмов трансляции адресов).
Процессор даже не знает о каких-то SSD, у него нет собственного механизма обращения к блочным устройствам, как и самого определения блочности.
Линукс адаптировать как раз проще всего будет.
Прекрати мыслить Линуксами. Линукс - это операционная система, загруженная процессором в память. Тебе нужно мыслить как процессор.
Для этого тебе нужно немножко загуглить архитектуру и что происходит на этапе включения этого процессора. Как я написал выше, твой процессор даже к NVME обратиться не сможет, потому как а) Не имеет прямого доступа; б) Не имеет адресации. Он не сможет обратиться «куда-нибудь», ему нужен четкий адрес точки входа.
Давно пора перестать тащить совместимость с компами тридцатилетней давности.
Чтобы это давно было пора перестать - тебе нужно во-первых найти аргумент зачем это нужно, причем pro должны на порядок перевешивать contra; а во-вторых предложить хотя бы блочную, но действующую схему. Покамест ты просто посмотрел высокоуровневые решения сугубо Линукса, и сделал вывод что так же само они будут работать и на низком уровне.
Поэтому еще раз: открываешь хотя бы блочную схему с прерываниями и регистрами, и рассказываешь как ты собрался пинать процессор на чтение с SSDшника (и разумеется рассказываешь как процессору отличить первый SSD-шник от второго, SSD-шник от HDDшника, а их все от USB-флешки), при том не дергая по слову на цитаты, а от начала и до передачи управления ядру операционной системы :))
Программе всё равно где в физическом адресном пространстве располагаются ее страницы. Если это не модифицируемый код - то почему бы им не быть и в флэш-памяти и прямо оттуда исполняться?
Потому что тебе придется заставить оттуда исполняться ОДНОВРЕМЕННО ВСЕ ПРОГРАММЫ, начиная с BIOS, UEFI, BootROM, итд итп. Если хотя бы один из этих шагов потребует наличия ОЗУ - твоя идея херится на взлете.
Если же программа хочет изменить содержимое своей страницы - то copy on write эту страницу в обычное ОЗУ и пусть меняет.
Ты опять забываешь, что эту программу должно что-то запустить, и это что-то тоже должно быть чем-то где-то запущено.
Всякие линуксовые одноплатники,дисков не имеющие, вполне себе без Эппла существуют.
Во-первых, ты не говорил за бездисковую работу, ты говорил за работу без ОЗУ;
Во-вторых, все одноплатники имеют то, что упрощенно называется «блочным устройством», вне зависимости от того, что это - SSD, флоппи, eMMC, или ПЗУшка. Ну так на компе ты тоже можешь грузить Linux с ПЗУхи, проект CoreBoot называется, и дальше что?
Исходная версия windows10, :
Почему нет? Работает же в линуксе tmpfs,делающая «диск» с файловой системой в оперативной памяти. Объяснить ей что вон с того абсолютного адреса лежит область флэш-памяти и пусть с ней работает.
Потому что компьютер - не только для линукса, вот в чем ГЛАВНАЯ ПРОБЛЕМА.
Ты рассматриваешь логику работы в уже загруженной ОС, а тебе нужно эту логику развить вплоть до включения компьютера.
Рамдиск, коим является tmpfs - это ОС-специфичная приблуда, она не работает с ОЗУ прямой записью\чтением, а использует системные вызовы и выделяет память средствами самой системы. Поэтому возможны такие приколы, как создание свопа на диске в качестве ОЗУ, а потом создание в этой области рамдиска в качестве ОЗУ. Соответственно работать это будет только в уже загруженном ядре системы с механизмом работы с памятью.
Вот этот как раз таки in place и работает. Но да, лишняя сущность давно уже. ARM-компы вполне без него обходятся.
Кто тебе такое сказал? в ARM это еще более костыльно, чем в x86.
С момента когда распространились SSD - тоже стало лишней сущностью.
То есть в твоей парадигме мира, вычислительные устройства не имеющие NVME, должны быть выброшены на свалку?
Вот тебе кстати и объяснение, почему это никто не будет делать.
Никто не мешает сохранять в системе программные средства для совместимости с внешними носителями.
Нет еще никакой системы. Есть процессор, который ты только включил. Этот процессор должен выполнять первичные инструкции и обращаться в конкретные места для выполнения кода.
Нет еще никаких внешних или внутренних носителей - это абстракция которую тебе, как человеку, готовят BIOS или сама ОС.
Процессор может работать только с точной адресацией, на которую расчитан. Шариться по блочным устройствам и определять, кто из них внутренний носитель, кто внешний, а кто вообще видеокарта - он сам по себе не может.
В процессоре и так всё нужное давно есть (несколько разных механизмов трансляции адресов).
Процессор даже не знает о каких-то SSD, у него нет собственного механизма обращения к блочным устройствам, как и самого определения блочности.
Линукс адаптировать как раз проще всего будет.
Прекрати мыслить Линуксами. Линукс - это операционная система, загруженная процессором в память. Тебе нужно мыслить как процессор.
Для этого тебе нужно немножко загуглить архитектуру и что происходит на этапе включения этого процессора. Как я написал выше, твой процессор даже к NVME обратиться не сможет, потому как а) Не имеет прямого доступа; б) Не имеет адресации. Он не сможет обратиться «куда-нибудь», ему нужен четкий адрес точки входа.
Давно пора перестать тащить совместимость с компами тридцатилетней давности.
Чтобы это давно было пора перестать - тебе нужно во-первых найти аргумент зачем это нужно, причем pro должны на порядок перевешивать contra; а во-вторых предложить хотя бы блочную, но действующую схему. Покамест ты просто посмотрел высокоуровневые решения сугубо Линукса, и сделал вывод что так же само они будут работать и на низком уровне.
Поэтому еще раз: открываешь хотя бы блочную схему с прерываниями и регистрами, и рассказываешь как ты собрался пинать процессор на чтение с SSDшника (и разумеется рассказываешь как процессору отличить первый SSD-шник от второго, SSD-шник от HDDшника, а их все от USB-флешки), при том не дергая по слову на цитаты, а от начала и до передачи управления ядру операционной системы :))