Pull to refresh
2
0
Send message
            chunk_count = size / KHEAP_CHUNK_SIZE;
            if KHEAP_CHUNK_SIZE * chunk_count != size {
                chunk_count += 1;
            }

Можно
chunk_count = (size + KHEAP_CHUNK_SIZE - 1) / KHEAP_CHUNK_SIZE;
Какое отношение это имеет к доказательству корректности какой-либо конкретной программы?
Так оно и будет для однопоточных, детерминированных, нераспределенных (т.е. тривиальных) программ.
> векторные часы обладают неприятными свойствами: они вводят условную зависимость между событиями там, где ее нет, и теряют ее там, где она на самом деле есть.

Если размер вектора равен числу процессов, то векторные часы точно отражают зависимости в системе.

> Несуществующие зависимости возникают потому, что логические часы вводят полный порядок на событиях

Показания векторных часов только частично упорядочены.
handle err {… } это возрожденный ON-unit из PL/I? Казалось бы отцы-основатели структурного программирования высмеяли такие штуки навсегда, но нет.
Статья (или перевод) вводит в заблуждение. Классический компьютер, т.е. (детерминированная) машина Тьюринга, может решить любую задачу решаемую квантовым компьютером. В cтатье (или опять же, в переводе) утеряна разница между «решаемо» и «эффективно решаемо», и между «computability» и «complexity».
> и хотя во время выполнения значение, хранящееся в переменной интерфейса, может изменять тип, это значение всегда будет удовлетворять интерфейсу. (Никаких undefined, NaN и прочих ломающих логику программы вещей.)

Во-первых, переводчик улучшил Пайка, добавив предложение в скобках. :-) Во-вторых, переменная интерфейсного типа может хранить nil — значение не удовлетворяющее интерфейсу и ломающее логику.
«Сильный» программист, наверное, заметит, что команды X(номер, цвет) для разных значений параметра «номер» коммутативны (могут выполняться в произвольном порядке), а для одинаковых — нет. Это наблюдение сразу дает все три варианта A, B и C. Ну и по завету Дейкстры («детерминизм — частный случай недетерминизма»), напишет параллельную программу, для которой ABC являются сериализациями.
А почему pivot выбирается именно как элемент массива с некоторым индексом? В случае quicksort это понятно, но для quickselect можно выбрать любое значение (не обязательно из массива). Например, брать среднее (O(n)), тогда массив будет гарантированно хорошо делиться.
Считывать с нескольких блинов одновременно невозможно. Дорожки не расположены точно друг над другом (невозможно при современных плотностях записи). После позиционирования на цилиндр, головка делает более точное позиционирование на дорожку на конкретном блине, при этом дорожки на остальных блинах недоступны.
Mutex.Lock() гарантировано содержит атомарную операцию, т.е. cache transfer там точно будет.
Вывод show_sizeof() не соответствует коду: нет x.__class__.
В Ситибанке несколько лет назад для защиты от keylogger-ов пароль вводился через «виртуальную клавиатуру» (т.е. на сайте надо было мышкой кликать в нарисованные буковки), и на этой клавиатуре не было смены регистра. Клавиатура давно пропала, на пароли, ясно дело, остались с тех пор case insensitive.
Так как поддерживается восстановление 2 блоков на страйп, то, наверное, каждый страйп должен содержать 2 Empty блока?
Такие технологии становятся по-настоящему полезными только когда данные разнесены не только по устройствам на одной машине, но и по многим машинам в сети. Сетевой RAID сложно сделать на аппаратном уровне (как говорит raidixteam слишком гибкие конфигурации).
X | A | B = (!A | A) | (B | !B) | !C = true | true | !C = true
«в примарном разложении» — должно быть «в разложении на простые множители». «Примарное разложение» это немного другое (см. теорему Ласкера).
Ха, точно. Мир тесен.
Первое, что я сделал для Люстры был OSX клиент, но он так и не был выпущен, потому что Apple поменял VFS интерфейс в следующей версии Дарвина. Потом было много чего: новый сервер мета-данных (http://wiki.lustre.org/images/b/b8/LUG08-head-mds-danilov.pdf), новый клиентский IO стек (http://wiki.lustre.org/images/6/66/CLIO-TOI.pdf) и пр. Про новую систему (Mero) есть обзор: http://www.pdsw.org/pdsw-discs16/wips/danilov-wip-pdsw-discs16.pdf.
1
23 ...

Information

Rating
Does not participate
Registered
Activity