Artisan

Artisan
Рейтинг
379
Регистрация
04.03.2005
Пишу программы для вычислительных машин, от драйверов устройств, до сложных систем для работы с большим количеством знаний. Умею бережно использовать железо, и другие ресурсы.
kostich:
поставьте нам последний оракел под фрю,
так что бы наман работало.

Я этого сам не делал, и делать не планирую потому что есть другие задачи, а установить согласно пособию Вы сами сможете не хуже меня, было бы полезно потом известить трудящихся об успехах, возможно для чистоты экперимента есть смысл все это делать на свежей системе с настройками по умолчанию, ...

amso:
того же и Вам желаю

Спасибо, ...

amso:
ушел перечитывать Таненбаума.

И это правильно, ...

amso:
А я напишу, что freebsd-шники свою систему
понимают по опыту работы с MS-DOS :))

И будете полностью правы потому что есть общие способы решения задач, а пингвины ничего чужого знать не хотят и свое тоже не знают, но самое печальное что пингвины совсем не хотят учиться, ...

kostich:
порекомендуйте мне того кто мне оракел
на фряшке будет готовить нормально.

Linux Compatibility и Oracle для пингвинов не пробовали?

Совместимость не совсем полная но возможно хватит, ...

FreeBSD Handbook / Installing Oracle®

This document describes the process of installing Oracle® 8.0.5 and Oracle 8.0.5.1 Enterprise Edition for Linux onto a FreeBSD machine. When you have followed the instructions, you should be able to run Oracle as if it was run on Linux itself.
amso:
Artisan:
Прочитайте еще раз выше про ext3 файловую
систему и контрольные суммы в журнале, ...

Только после того, как начнете "детально разбирать проблемы, отличать одно от второго и не делать вредные обобщения"

Что и требовалось доказать,

пингвины не знают свою систему,

и совсем не хотят учиться, ...

amso:
тем, хотя бы, что прерывания есть, приоритеты, ioctl рутина и т.п. Драйверы у нас чем занимаются? Да, такой возможности может не быть. Но ошибочно утверждать, что ее нет вообще.

И много пользы Вам принесут драйверы

если хитрое железо их обманывает?

amso:
Ваше "как обычно" я оценил в истории с reiserfs.

И что Вы оценили? Что ReiserFS это B+ дерево и если испортится корень то пропадет все полностью? Или то что ReiserFS не отдает тип файла при чтении каталога? А уточнить всегда полезно для освежения знаний и лучшего понимания мира.

amso:
Все что вы описали, можно рассматривать на
отдельных уровнях работы, а не в куче в одном абзаце.

Вот это и есть основная печаль у пингвинов, когда они как обычно за деревьями не замечают леса. Задачу всегда надо изучать полностью, в этом случае задача в том чтобы программа пользователя могла надежно без искажений записать данные на внешний носитель, а отдельные гениальные действия железа и операционной системы это детали, которые сами по себе не имеют смысла если не выполняется основная задача.

amso:
А для компенсации недостатков writeback cache еще пока никто не усложняет фс. Для этого делают battaried writeback cache.

Я уже описывал выше как на практике получается взаимодействие с хостингом. Вы можете быть полностью уверены в том что батарейка всегда будет подключена и свежая?

amso:
И не надо путать writeback cache в диске и в контроллере.

Что пнем об сову, что совой об пень,

все равно сове будет больно, ...

amso:
А фс усложняют для других случаев
и еще раз - не надо все валить в кучу.

Прочитайте еще раз выше про ext3 файловую

систему и контрольные суммы в журнале, ...

kostich:
лан... valgrind спасет мир!
ps. но когда его в нормально виде под фряху допортируют?
или я давно его не ставил?

Не всегда есть время ждать спасателя, ...

amso:
а для чего вообще операционная система?

Повторю другими словами с пояснением, какое

отношение имеет операционная система к порядку

действий железа на который она не может влиять?

http://sr5tech.com/write_back_cache_experiments.htm
With write back caching turned on by default, an ATA drive can signal the completion of writes more quickly than if it had to wait until the data was completely transferred to the disk media. However, in the even of a failure (such as power failure, hardware failure, etc.), data corruption may happen if the data on the disk cache has not been flushed out to the disk media. Another problem with ATA write back cache is that data may be flushed out to disks out-of-order, i.e., if block A arrives to cache before block B, block B may be flushed out to disk before block A. While turning the write back cache off for ATA disks will avoid data corruption problem, performance will degrade. In addition, the drives will be used in a less reliable mode, since ATA vendors do not certify the recovery of drives that deactivate write-back caching.

А усложнять файловую систему для того

чтобы избежать повреждения от хитростей

железа это отдельная печальная тема, ...

amso:
Свалили в одну кучу все - работу в юзерспейсе, sync и fsync, работу fs, которых много и все работают по-разному, а некоторые еще и внутри себя позволяют разные принципы работы с журналами, довалили i/o планировщики, которых тоже несколько и с разными политиками, и еще да, давайте довалим туда работу firmware контроллера, если он у нас есть.

По делу есть что написать? Или пингвины

как обычно не замечают леса за деревьями?

amso:
Если бы мы спорили о ЯП, мне бы пришлось выслушивать аргументы о том, что php/perl/python/прочие языки с динамическим выделением памяти лучше си, там меньше шансов наступить на мину/острелить себе ногу.

C тоже не идеал, декларации типа EQUIVALENCE в FORTRAN отсутствуют, родные non-preemptive со-программы типа как в MODULA-2 отсутствуют, поэтому приходится дорабатывать напильником, ...

amso:
Это просто анекдот

Вот такие они, дикие пингвины на воле, ...

amso:
Вы это тоже из практики работы с MS-DOS'ом взяли?
В юниксах этот момент куда сложнее.

А какое отношение имеет операционная

система к порядку действий железа?

amso:
Резюмируем попроще - я считаю, что достаточно просто sync'ить данные, когда есть в этом необходимость, сохраняя производительность. Вы, как я понял, хотите неотложенную запись в любом случае, то есть перенесли проблему из юзерспейса в кернелспейс.

Я хочу чтобы операционная система и железо писали на носитель в том порядке в котором я запрашиваю запись, этого вполне достаточно для целостности данных, по умолчанию у FreeBSD такое пожелание выполняется для метаданных, а запись в обычные файлы выполняется асинхронно для ускорения. А если делать sync но железо будет менять порядок записи на носитель, то целостность данных в общем случае может нарушиться например при внезапной остановке железа. Кстати если sync блокирует задачу до своего полного выполнения, то такие действия не годятся для изделий которые должны быстро отвечать на запросы, а если sync не блокирует задачу до своего полного выполнения, то задача не может быть уверена что целостность данных обеспечена.

amso:
Это и называется - отстрелить себе ногу.

Это называется футбол на минном поле, ...

amso:
А код открыт, куда уж больше документации.

Не всегда есть время играть в сапера, ...

amso:
SLES это коробка, а не "ядро у пингвинов".

Объясняю что значит на практике в ядре по умолчанию. Не всегда получается выбрать желаемое, а часто трудящиеся не знают что выбрать. Заказал я однажды VPS сервер, выбрал Slackware пингвина и ext3 файловую систему, а хостер поставил Ubuntu пингвина и ReiserFS файловую систему, потому что такое сочетание выбирает большинство их пользователей.

amso:
кернел 2.4.15, в котором появился ext3.

У ext3 файловой системы тоже не все идеально,

хотя она журнальная и считается надежной.

http://en.wikipedia.org/wiki/Ext3

Only metadata is journaled; file contents are not, but it's guaranteed that file contents are written to disk before associated metadata is marked as committed in the journal. This is the default on many Linux distributions. If there is a power outage or kernel panic while a file is being written or appended to, the journal will indicate the new file or appended data has not been "committed", so it will be purged by the cleanup process. (This appends and new files have the same level of integrity protection as the "journaled" level.) However, files being overwritten can be corrupted because the original version of the file is not stored. Thus it's possible to end up with a file in an intermediate state between new and old, without enough information to restore either one or the other (the new data never made it to disk completely, and the old data is not stored anywhere). Even worse, the intermediate state might intersperse old and new data, because the order of the write is left up to the disk's hardware.

Ext3 does not do checksumming when writing to the journal. If barrier=1 is not enabled as a mount option (in /etc/fstab), and if the hardware is doing out-of-order write caching, one runs the risk of severe filesystem corruption during a crash.[13][14] (This option is not enabled by default on almost all popular Linux distributions, and thus most distributions are at risk.)
amso:
Вы еще начните для комплекта утверждать, что контроллеры без write back cache лучше, потому что без него меньше шансов потерять данные.

В правильном железе порядок записи на носитель сохраняет порядок запросов на запись, то есть кэширование записи на носитель не влияет на целостность данных. Ошибки возникают только когда сам порядок запросов на запись позволяет нарушить целостность данных, что получается при асинхронном режиме согласно определению. А про неправильное железо и ext3 файловую систему уже написано выше, выгоды от хитростей в железе исчезают потому что приходится усложнять файловую систему.

amso:
Вопрос о пионерии остается в силе. Теперь уже в контексте - линукс хуже, потому что там больше шансов отстрелить себе ногу.

Там больше шансов наступить на скрытые грабли,

потому что пингвины хуже документированы, ...

Всего: 5985