jcxz 240 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 3 часа назад, celsio сказал: Ну какие еще детали, которые не изложены в общем описании алгоритма. Что так еще в заголовке, кроме признака стертости сектора и т.д. О каком заголовке речь? Я вроде не писал ни о каком "заголовке". Да и не нужен он там. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
celsio 0 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 15 minutes ago, jcxz said: О каком заголовке речь? Я вроде не писал ни о каком "заголовке". Да и не нужен он там. Quote Также в каждом секторе для записи данных я использую только (РАЗМЕР_СЕКТОРА-4_БАЙТА) байт. А в 4 байтах (в конце сектора) храню маркер занятости сектора. Это для ускорения процедуры поиска стёртой дырки при старте системы хранения (чтобы уменьшать операции чтения). Почему 4 байта? Там что-то еще, кроме маркера занятости? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 240 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 2 минуты назад, celsio сказал: Почему 4 байта? Там что-то еще, кроме маркера занятости? Маркер занятости - 32-битный. Это просто какая-то 32-битная константа. Зачем там что-то ещё? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
celsio 0 25 мая, 2022 Опубликовано 25 мая, 2022 (изменено) · Жалоба Почему 32 бита а не 8? Маркер не защищен контрольной суммой? Изменено 25 мая, 2022 пользователем celsio Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 240 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 2 минуты назад, celsio сказал: Почему 32 бита а не 8? Маркер не защищен контрольной суммой? Зачем его защищать??? Вы похоже не поняли алгоритма. Почитайте его внимательнее. 19.03.2020 в 08:32, jcxz сказал: А в 4 байтах (в конце сектора) храню маркер занятости сектора. Это для ускорения процедуры поиска стёртой дырки при старте системы хранения (чтобы уменьшать операции чтения). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
celsio 0 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба Так а зачем он 32 бита, а не 8? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 60 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 1 hour ago, celsio said: Так а вы для чего это написали про пару дней и лист A4? Похвастаться? Что бы донести мысль, что надо использовать свой мозг и не ждать разъяснений от форума. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
celsio 0 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба Just now, x893 said: Что бы донести мысль, что надо использовать свой мозг и не ждать разъяснений от форума. Ну так идите и используйте свой мозг в другом месте, не мешайте дискуссии. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 240 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 1 час назад, Arlleex сказал: Да нет уж, как раз от типа Flash оптимальная и надежная реализация кольцевых очередей очень даже зависит. Не особо. Тот мой алгоритм должен работать с любым типом. И даже не обязательно флешь - можно и вообще с другим типом памяти. Там в нём есть необязательные (опциональные) вещи, зависящие от типа флешь (посекторное стирание). В другом типе памяти, где нет посекторного стирания, их можно опустить. Даже если какой-то тип памяти не обеспечивает например побайтной дозаписи с произвольного байтового смещения (как флешь некоторых МК), чтобы дописывать новую запись вплотную к старой, это не беда - можно модифицировать его так, чтобы дырки между записями были размером не 1 байт, а больше. 8 минут назад, celsio сказал: Так а зачем он 32 бита, а не 8? Да можете сделать и 8 - без разницы, будет работать. Только чуть менее эффективно. По этому вашему вопосу видно, что Вы не поняли работы алгоритма. И зачем нужен этот маркер. Хотя я выше отдельно отквотил. Повторю ещё раз: 19.03.2020 в 08:32, jcxz сказал: А в 4 байтах (в конце сектора) храню маркер занятости сектора. Это для ускорения процедуры поиска стёртой дырки при старте системы хранения (чтобы уменьшать операции чтения). Алгоритму нужно найти голову кольца. Голова это: >=1 стёртый сектор. Стёрый сектор можно искать тупо - читая последовательно все байты каждого сектора. Но это будет очень долго (сектор у меня = 256КБ, а общий размер КОХ = неколько МБ (а может и десятков МБ)). Чтобы ускорить процесс поиска стёртого сектора и используется маркер. Там это всё описано. А значит вероятность того, что какие-то данные случайно окажутся равными маркеру - нужно минимизировать. Поэтому он и 32-битный. Сделаете его 8-битным - иногда будет ошибаться и делать лишние чтения всего сектора. Т.е. - старт системы хранения будет происходить медленнее. Только и всего. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
celsio 0 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 20 minutes ago, jcxz said: А значит вероятность того, что какие-то данные случайно окажутся равными маркеру - нужно минимизировать. Поэтому он и 32-битный. Сделаете его 8-битным - иногда будет ошибаться и делать лишние чтения всего сектора. Т.е. - старт системы хранения будет происходить медленнее. Только и всего. Ну вот, теперь понятно почему маркер 32 бита. А какие еще детали? Вы писали что "Это примерный алгоритм. Есть ещё детали." Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 240 25 мая, 2022 Опубликовано 25 мая, 2022 · Жалоба 12 минут назад, celsio сказал: Ну вот, теперь понятно почему маркер 32 бита. А какие еще детали? Вы писали что "Это примерный алгоритм. Есть ещё детали." Не понимаю - Вам зачем? Если Вы будете его реализовывать, сами их и придумаете. Если поняли как работает - что ещё нужно? PS: Если вы понимаете как ездит автомобиль, то какая разница какой у него тип кузова? А если не понимаете, то инфа о типе кузова будет бесполезна. Кузов - это такие же детали, несущественные для езды. Нужные только для конкретной области применения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
celsio 0 26 мая, 2022 Опубликовано 26 мая, 2022 · Жалоба 11 hours ago, jcxz said: Не понимаю - Вам зачем? Если Вы будете его реализовывать, сами их и придумаете. Если поняли как работает - что ещё нужно? PS: Если вы понимаете как ездит автомобиль, то какая разница какой у него тип кузова? А если не понимаете, то инфа о типе кузова будет бесполезна. Кузов - это такие же детали, несущественные для езды. Нужные только для конкретной области применения. Если на примере автопрома - то конструкторы специально разбирают авто других производителей, чтобы увидеть хорошие конструктивные решения и перенять лучшие наработки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 60 26 мая, 2022 Опубликовано 26 мая, 2022 · Жалоба 8 minutes ago, celsio said: Если на примере автопрома - то конструкторы специально разбирают авто других производителей, чтобы увидеть хорошие конструктивные решения и перенять лучшие наработки. А потом начинается визг с импортозамещением. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexRayne 7 26 мая, 2022 Опубликовано 26 мая, 2022 · Жалоба 2 jcxz: вы свою либу гдето шарили? или она проприетарь? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
x893 60 26 мая, 2022 Опубликовано 26 мая, 2022 · Жалоба https://github.com/cloudyourcar/ringfs https://habr.com/en/post/479044/ http://www.zilog.com/docs/appnotes/AN0360.pdf В детскую смесь разжёвано всё Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться