Выпуск новостей ReactOS №58 | Participants
|
- Statistics
- Participants
- Translate into Russian
- Translation result
- Translation complete.
If you do not want to register an account, you can sign in with OpenID.
ReactOS Newsletter - Newsletter 58 (#58) | ||
UniATA | ||
The Universal ATA driver has often been pointed out as a way to solve some rather annoying issues in ReactOS, such as the lack of support for SATA and limiting the amount of space ROS sees to about 8GB. Since both issues border on the outright absurd in this day and age, fixing them was of very high priority. A few showstoppers stood in the way however of switching over permanently and Aleksey Bragin has managed to resolve some of them. The biggest issue involved UniATA not detecting CD-ROMs on real hardware, which Aleksey tracked down to be because of timing issues. The developer of UniATA had decided to lower the waiting time for several operations, which could result in controllers not having enough time to change their states. Aleksey changed the wait times to match that found in the old atapi driver and now drives are detected reliably on real hardware. | Драйвер Universal ATA часто упоминался как решение многих неприятных проблем в ReactOS, таких как отсутствие поддержки дисков SATA и ограничение видимой области дискового пространства в 8 Гб. Поскольку существование таких проблем в наше время абсурдно, их исправление было высокоприоритетно. Однако, существовало несколько препятствий для перехода к постоянному использованию UniATA, и Алексею Брагину удалось разрешить некоторые из них. Крупнейшей проблемой этого драйвера была неспособность определения приводов CD-ROM на физических устройствах. Алексей определил, что это было связано с размером временных задержек: создатель UniATA решил уменьшить время ожидания для некоторых операций, в результате чего контроллерам не хватало времени для изменения внутреннего состояния. Алексей установил временные задержки равными используемым в старом ATAPI-драйвере, и теперь дисководы стабильно обнаруживаются на реальных устройствах. | |
Another issue that has not been fixed yet is UniATA failing on VirtualBox. The cause is still unknown, but is next on Aleksey's list. | Другим вопросом, оставшимся неисправленным, является работа UniATA в VirtualBox. Причина неработоспособности пока неизвестна, но этот вопрос является следующим в списке Алексея. | Comment was deleted |
Pool | ||
As part of the effort to see where corruption is occuring, Aleksey has also been double checking usage of the memory pool. The pool is essentially a way for the kernel and drivers to allocate memory, and it can be both paged (written out to disk) and nonpaged (always in memory). Aleksey has been working on a new implementation and as part of that wrote what is essentially a pool debugger, able to check for overflows in either reading or writing to allocated pools. Running it, he only discovered one over-read in the PnP manager. The tool doesn't check for under reads or writes, so those could still be floating around. At least in the future, the team will have a tool to make sure no further such mistakes are made. All this is in preparation for a new pool implementation that Aleksey has been working but could not commit as something that ReactOS does causes crashes when the new code is used. Hopefully with the debugger Aleksey can track down what the cause is. | Как часть работ в направлении поиска повреждений памяти, Алексей также перепроверял использование пулов памяти. Пулы являются средством выделения памяти в ядре и драйверах, при этом они могут быть как выгружаемыми (записываемыми на диск), так и не выгружаемыми (всегда находящимися в памяти). Алексей работал над новой реализацией и одной из её частей является, по сути, отладчик пула, позволяющий обнаруживать выход за границы при чтении или записи в выделенных пулах. При помощи отладчика пула обнаружилось лишь одно чтение за границей выделенной памяти, в менеджере Plug&Play. Но этот инструмент не проверяет, что именно считывается или записывается, поэтому нельзя сказать, что обнаружены все возможные проблемы. По крайней мере, теперь группа разработчиков будет иметь инструмент, который поможет убедиться в том, что подобных ошибок не было сделано. Все это сделано в рамках подготовки к новой реализации пула, которая работает у Алексея, но не может быть внесёна в общий репозиторий, так как ReactOS даёт сбой при использовании нового кода. Надеемся, что с отладчиком Алексей сможет отследить, по какой причине это происходит. | Comment was deleted — Можно смело менять так как посчитаете правильным — seven_ro More 4 comments — http://en.wikipedia.org/wiki/Memory_pool пул = выделенная область памяти Как раз наоборот, заколовок нужно сделать во множественном числе — bz00mmer |

— "Алексей Брагин решил их, хотя некоторые были против." - неверно, здесь говорится уж точно не о людях, которые были против, в о технических проблемах. — aspotashev
Опять же, зачем заменять мой перевод на дословный? — aspotashev
More 6 comments
— Смысл в этом абзаце был далёк от английского. Второй абзац, наверно, можно было и не менять. — bz00mmer
Comment was deleted
Может, вообще абзац переводить смысла нет, можно просто написать: UniATA теперь работает с CD-ROM? Смысл был неверный в первых предложениях, дальше шли искажения на основании этого, поэтому всё и было поправлено. — bz00mmer
— Имхо, "физическое оборудование" - это скорее ускорители, сцинтилляторы и фотоумножители. Даже первые 5 ссылок гугла по запросу "физическое оборудование" не имеют ничего общего с "real hardware" — aspotashev
— "решение для многих проблем" режет ухо. может "решение многих проблем"? — sonny7889
— Только сейчас заметил несвязность первых двух предложений и оставшейся части абзаца! — bz00mmer
— "создатель UniATA" - неправильно, т.к. сам по себе UniATA - это не драйвер, а, скорее, интерфейс — aspotashev