Re[24]: А если бы все с начала ?
От: Sharov Россия  
Дата: 17.01.18 13:55
Оценка:
Здравствуйте, AlexRK, Вы писали:


ARK>Или вы считаете, что такой дыры в процессоре быть не может в принципе?

ARK>Если такой дыры в процессоре даже теоретически быть не может, то почему тогда вы считаете, что такая дыра может быть в верификаторе?

Верфицировать железо, кмк, гораздо проще чем софт.
Кодом людям нужно помогать!
Re[2]: А если бы все с начала ?
От: Pavel Dvorkin Россия  
Дата: 17.01.18 13:56
Оценка:
Здравствуйте, scf, Вы писали:


scf>- Другие сетевые протоколы в сети Internet. Помимо личного адреса каждой кофеварке, должны обеспечивать идентификацию, аутентификацию и шифрование для каждого каждого узла в сети. сетевой адрес должен быть прибит гвоздями к конкретной железке и провайдеру


Хм. Вообще-то он есть — MAC-адрес. Почти прибит. Но за пределы локалки не передается. Нужно ? Зачем ?

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

scf>- Стандартный байткод. Все языки высокого уровня, как со сборкой мусора, так и без неё, компилируются только в него. Компиляторы в нативный код стоят на машинах конечных пользователей и понимают только стандартный байткод. У стандартного байткода есть "безопасное" подмножество, программы на котором можно использовать в песочницах типа браузера.


Хм. Я хочу выжать из процессора максимум того, что он может дать. Байткод все же медленее. Запрет натива ?

scf>- Полная aппаратная и программная поддержка изоляции процессов в ОС.


А разве ее нет ?

scf>- Единый стандарт взаимодействия программ с ОС. POSIX был хорош, но недостаточен.


Имеется в виду, чтобы не было зоопарка в виде WinAPI/OLE/RPC и т.д. ? Тогда согласен


scf>- Единый стандарт платформ для дистрибьюции софта, включая платный софт. Включая платные библиотеки, входящие в платный софт


+1

scf>- Компании, которые специализируются на разработке платных библиотек и рантаймов с монетизацией "0.1% с каждой проданной программы, которая использует нашу либу"


Ну это уже не к программистам.
With best regards
Pavel Dvorkin
Re[25]: А если бы все с начала ?
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 17.01.18 14:01
Оценка:
Здравствуйте, Sharov, Вы писали:

ARK>>Или вы считаете, что такой дыры в процессоре быть не может в принципе?

ARK>>Если такой дыры в процессоре даже теоретически быть не может, то почему тогда вы считаете, что такая дыра может быть в верификаторе?

S>Верфицировать железо, кмк, гораздо проще чем софт.


Резко сложнее.
Гонки, иголки, наводки, неустойчивые состояния...
The God is real, unless declared integer.
Re[24]: Оффтоп.
От: Pavel Dvorkin Россия  
Дата: 17.01.18 14:03
Оценка:
Здравствуйте, Sharov, Вы писали:


S>(небольшая придирка) Фирмы, работающие в таких объемами так быстро не исчезают. Как минимум сотрудники на тех поддержку и саппорт отстаться должны.


Я вроде ни о каких объемах ничего не говорил.

Ну а что касается исчезновения — да даже и исчезновение иногда не требуется. Просто прекращена поддержка.
Вот есть такая фирма — Microsoft. И была такая ОС — Windows 2000. И нет ее поддержки.
А между тем еще 5 лет назад (не знаю, как сейчас) именно на этой ОС работали табло для показа отправления в аэропорту Домодедово. Мне об этом одно табло само сказало, потому что на нем был какой-то экран с MessageBox (программа упала) и на нем было черным по белому — Windows 2000.
With best regards
Pavel Dvorkin
Re[5]: А если бы все с начала ?
От: MTD https://github.com/mtrempoltsev
Дата: 17.01.18 14:07
Оценка:
Здравствуйте, alex_public, Вы писали:

_>В миллиметрах — это тоже не верно, потому что для человеческого взгляда важен угловой размер, а не линейный. Т.е. 7мм на смартфоне и на телевизоре — это очень разные вещи, из-за того, что их рассматривают с разного расстояния.


Ты прав.
Re[3]: А если бы все с начала ?
От: scf  
Дата: 17.01.18 14:08
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Хм. Вообще-то он есть — MAC-адрес. Почти прибит. Но за пределы локалки не передается. Нужно ? Зачем ?

Чтобы после переезда в другую страну включаешь кофеварку, она лезет на сервер. И сервер знает, что а) это та же кофеварка б) она теперь в другой стране. Решает проблему аутентификации и локализации.

scf>>- Стандартный байткод. Все языки высокого уровня, как со сборкой мусора, так и без неё, компилируются только в него. Компиляторы в нативный код стоят на машинах конечных пользователей и понимают только стандартный байткод. У стандартного байткода есть "безопасное" подмножество, программы на котором можно использовать в песочницах типа браузера.


PD>Хм. Я хочу выжать из процессора максимум того, что он может дать. Байткод все же медленее. Запрет натива ?

Я же написал, что на конечной машине он компилируется . Да, запрет натива. Производители процессоров выпускают новую модель вместе с компилятором под нее.

scf>>- Полная aппаратная и программная поддержка изоляции процессов в ОС.

PD>А разве ее нет ?
Нет. На телефонах что-то похожее, но можно и нужно лучше. Чтобы каждая программа была готова работать, когда ей отрубят сеть, воткнут лимиты на место на диске и ограничат цпу, память и пропускную способность диска.
Re[25]: А если бы все с начала ?
От: AlexRK  
Дата: 17.01.18 14:09
Оценка:
Здравствуйте, Sharov, Вы писали:

ARK>>Или вы считаете, что такой дыры в процессоре быть не может в принципе?

ARK>>Если такой дыры в процессоре даже теоретически быть не может, то почему тогда вы считаете, что такая дыра может быть в верификаторе?

S>Верфицировать железо, кмк, гораздо проще чем софт.


Не уверен. Просто существующие языки плохо подходят для верификации.
Re[25]: Оффтоп.
От: Sharov Россия  
Дата: 17.01.18 14:10
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:


PD>Я вроде ни о каких объемах ничего не говорил.


Я же выделил:

PD>А вот что будут делать, если в алгоритме статической верификации обнаружилась ошибка, а программы уже прошли этап этой верификации, разошлись в миллионах копий и теперь рушат ОС или получают доступ к чужой памяти — объясни. Срочно патчить все выпущенные программы ? Как ? Фирма, выпустившая эту программу, давно закрылась, авторы разбрелись кто куда.


PD>Ну а что касается исчезновения — да даже и исчезновение иногда не требуется. Просто прекращена поддержка.

PD>Вот есть такая фирма — Microsoft. И была такая ОС — Windows 2000. И нет ее поддержки.

ms методично и спокойно переводила людей на более новые ОС. Т.е. это не так "хоп и исчезла". К тому же, если таже 2000 так критична, то наверняка можно договориться о доработке за деньги.
Кодом людям нужно помогать!
Re[3]: А если бы все с начала ?
От: MTD https://github.com/mtrempoltsev
Дата: 17.01.18 14:11
Оценка: +1 -1
Здравствуйте, AleksandrN, Вы писали:

MTD>>1. Никаких кодировок кроме utf-8


AN>Почему не UTF-16 или UTF-32?


Потому что у них нет никаких достоинств перед utf-8, а недостатки есть, например:

1. Больше размер для большинства языков
2. Буквы английского алфавита не помещаются в первый байт, в отличии от utf-8
Re[25]: А если бы все с начала ?
От: WolfHound  
Дата: 17.01.18 14:11
Оценка: +1
Здравствуйте, Pavel Dvorkin, Вы писали:

WH>>ОС находит те места, которые не может верифицировать и добавляет туда проверку.

PD>М-да... В общем, без проверок в рантайме ничего не выходит ни у тебя, ни у AlexRK.
Демагогию не разводи.
Мы говорим про крайне гипотетический случай, когда нашли ошибку в верификаторе.

PD>Компиляция прошла давно, на машине пользователя бинарник. Машинные коды верифицировать будем ?

Верифицировать нужно всегда и только на машине пользователя.
Иначе что помешает хакеру заслать зловредный бинарник?
Не очень ясно о чём вы AlexRK говорите. Но я говорю про верификацию промежуточного кода. И компиляцию на этапе установки.

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

WH>>Либо в клиническом случае пользователи качают патч на эту программу и всё.

PD>Фирма, выпустившая программу, давно не существует, программисты разбрелись. Ты в курсе, что программы иногда живут очень долго ?
Я в курсе. Но если программа так нужна, то для неё сделают неофициальный патч.
Например, Vampire: The Masquerade — Bloodlines до рабочего состояния довели энтузиасты.
И это нужно только если:
1)Нашли ошибку в верификаторе. Я в это не верю, но допустим.
2)Программа не прошла новую верификацию.
3)Автоматическое исправление не дало удовлетворительный результат.
Вероятность каждого из этих событий ничтожна.

WH>>Ибо верификатор на несколько порядков проще чем процессор.

PD>Вот только бы знать, насколько менее надежен.
На 100% надёжен. Ибо математически доказан. В отличии от процессора.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[26]: А если бы все с начала ?
От: Sharov Россия  
Дата: 17.01.18 14:16
Оценка:
Здравствуйте, netch80, Вы писали:

N>Резко сложнее.

N>Гонки, иголки, наводки, неустойчивые состояния...

А еще транзисторы могут отказывать -- температура, космос и т.д. Все это не касается логики работы процессора, которая вполне себе верифицируема.
Я не утверждаю, что это легко. Но это гораздо(!) проще верификации софта.
Кодом людям нужно помогать!
Re[25]: А если бы все с начала ?
От: AlexRK  
Дата: 17.01.18 14:16
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Компиляция прошла давно, на машине пользователя бинарник. Машинные коды верифицировать будем ?


Не, на машине пользователя некое промежуточное представление (высокоуровневый бинарник). Это промежуточное представление тоже верифицируется (при установке программы), но более упрощенным алгоритмом.
Re[21]: А если бы все с начала ?
От: samius Япония http://sams-tricks.blogspot.com
Дата: 17.01.18 14:16
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Здравствуйте, samius, Вы писали:


S>>Гибрид необязателен. Берем C++ и верификатор. Я не призываю его брать после пропажи всего софта, я просто показываю что выбор не ограничен двумя пунктами.


PD>Я же не против верификатора, но речь-то идет об ОС, где нужна 100% надежность, хотя бы в принципе. Одна дыра — и мало не покажется, не заштопаешь. Программы уже на компьютере пользователя, этап статической верификации позади, иной защиты нет, не поправишь, как Meltdown.


Очевидно что дыра может быть в чем угодно, хоть в верификаторе, хоть в железе. Очевидно, что при наличии дыры никакой 100% надежности быть не может вне зависимости от выбранного подхода. О чем мы вообще рассуждаем? Если закладываем вероятность дыры, то будет и вероятность ненадежности.

PD>Вот тут не понял. Писать с нуля, конечно, придется. Но в итоге хочу я одновременно иметь 2 работающих приложения. И вариант, что мы с одного на другое переключаемся так, что когда одно работает, другое работать не имеет права, не принимается — это уже не многопрограммный режим, а бог знает что. Одно приложение с недоказанной корректностью обращений к памяти (какой-то фоновый процесс, которому часами работать надо), другое — нужна гарантия недоступности их памяти. И что делать ?

а) соглашаться на бог знает что.
б) высаживать приложение с недоказанной корректностью на другую машину.
в) переходить на многопроцессорные машины и гонять программы с разным клеймом на физически разных процессорах.
Re[4]: А если бы все с начала ?
От: Pavel Dvorkin Россия  
Дата: 17.01.18 14:17
Оценка:
Здравствуйте, scf, Вы писали:

scf>Чтобы после переезда в другую страну включаешь кофеварку, она лезет на сервер. И сервер знает, что а) это та же кофеварка б) она теперь в другой стране. Решает проблему аутентификации и локализации.


Чудно, а ее теперь как из внешнего мира искать ?

PD>>Хм. Я хочу выжать из процессора максимум того, что он может дать. Байткод все же медленее. Запрет натива ?

scf>Я же написал, что на конечной машине он компилируется . Да, запрет натива. Производители процессоров выпускают новую модель вместе с компилятором под нее.

Хм. Я все же хочу пооптимизировать сам на уровне ассемблера. Запретишь ?

scf>>>- Полная aппаратная и программная поддержка изоляции процессов в ОС.

PD>>А разве ее нет ?
scf>Нет. На телефонах что-то похожее, но можно и нужно лучше. Чтобы каждая программа была готова работать, когда ей отрубят сеть, воткнут лимиты на место на диске и ограничат цпу, память и пропускную способность диска.

Связи между вырубанием сети, лимитами а диске и ограничением цпу (что имеется в виду, кстати?) и изоляцией процессов не вижу.
With best regards
Pavel Dvorkin
Re[26]: А если бы все с начала ?
От: AlexRK  
Дата: 17.01.18 14:20
Оценка:
Здравствуйте, WolfHound, Вы писали:

PD>>М-да... В общем, без проверок в рантайме ничего не выходит ни у тебя, ни у AlexRK.

WH>Демагогию не разводи.
WH>Мы говорим про крайне гипотетический случай, когда нашли ошибку в верификаторе.

Произошло некоторое смешение терминов. Наверное, действительно лучше говорить о "верификации" на конечной машине.

Выше в обсуждении под термином "верификация" понималось "доказательство корректности программы в соответствии со спецификацией".
Re[9]: А если бы все с начала ?
От: WolfHound  
Дата: 17.01.18 14:20
Оценка:
Здравствуйте, Sharov, Вы писали:

WH>>Если бы код был под ВМ, то никакого переписывания было бы не нужно.

WH>>Всё просто бы заработало.
S>А драйвера и их производительность? А real-time, как он без натива?
Замечательно.
Я надеюсь ты в курсе что при компиляции код проходит через машинно-независимое промежуточное представление.
Я просто предлагаю на этом этапе компиляцию остановить и сохранить результат.
После чего на машине пользователя после верификации продолжить.
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[26]: Оффтоп.
От: Pavel Dvorkin Россия  
Дата: 17.01.18 14:20
Оценка:
Здравствуйте, Sharov, Вы писали:

S>Я же выделил:

S>

PD>>А вот что будут делать, если в алгоритме статической верификации обнаружилась ошибка, а программы уже прошли этап этой верификации, разошлись в миллионах копий и теперь рушат ОС или получают доступ к чужой памяти — объясни. Срочно патчить все выпущенные программы ? Как ? Фирма, выпустившая эту программу, давно закрылась, авторы разбрелись кто куда.


А, вот что. Сорри. Забыл.


PD>>Ну а что касается исчезновения — да даже и исчезновение иногда не требуется. Просто прекращена поддержка.

PD>>Вот есть такая фирма — Microsoft. И была такая ОС — Windows 2000. И нет ее поддержки.

S>ms методично и спокойно переводила людей на более новые ОС. Т.е. это не так "хоп и исчезла".


MS-то переводила, а вот другая фирма могла просто забить на свой продукт.

>К тому же, если таже 2000 так критична, то наверняка можно договориться о доработке за деньги.


Я не знаю, насколько она там критична (вряд ли), но сомневаюсь, что MS согласится за любые деньги ее дорабатывать.
With best regards
Pavel Dvorkin
Re[26]: А если бы все с начала ?
От: Pavel Dvorkin Россия  
Дата: 17.01.18 14:30
Оценка:
Здравствуйте, WolfHound, Вы писали:

WH>Демагогию не разводи.


Да какая там демагогия! Просто рассмотрение одного из вариантов.

WH>Мы говорим про крайне гипотетический случай, когда нашли ошибку в верификаторе.


Что-то мне говорит, что ошибка в программе (даже если она и верификатор) — случай совсем не крайне гипотетичный

WH>Не очень ясно о чём вы AlexRK говорите. Но я говорю про верификацию промежуточного кода. И компиляцию на этапе установки.


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

WH>Я в курсе. Но если программа так нужна, то для неё сделают неофициальный патч.


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

WH>На 100% надёжен. Ибо математически доказан. В отличии от процессора.


Эхе-хе... Алгоритмы и методы компиляции тоже вроде как доказаны, а компиляторы порой падают.
With best regards
Pavel Dvorkin
Re[27]: Оффтоп.
От: Sharov Россия  
Дата: 17.01.18 14:40
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>MS-то переводила, а вот другая фирма могла просто забить на свой продукт.


А у другой таких масштабов не будет. Тут обе стороны понимают, что нужны некие гарантии.

PD>Я не знаю, насколько она там критична (вряд ли), но сомневаюсь, что MS согласится за любые деньги ее дорабатывать.


Куда денутся.
Кодом людям нужно помогать!
Re[10]: А если бы все с начала ?
От: Sharov Россия  
Дата: 17.01.18 14:45
Оценка:
Здравствуйте, WolfHound, Вы писали:

S>>А драйвера и их производительность? А real-time, как он без натива?

WH>Замечательно.
WH>Я надеюсь ты в курсе что при компиляции код проходит через машинно-независимое промежуточное представление.
WH>Я просто предлагаю на этом этапе компиляцию остановить и сохранить результат.
WH>После чего на машине пользователя после верификации продолжить.

Не уверен, что замечательно. Если для драйверов я еще могу представить промежуточное исполнение и всяческие jit-оптимизации. То для real-time уже не очень -- там надо сразу, быстро и гарантированно без задержек.
Кодом людям нужно помогать!
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.