|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
24.03.2016, 09:57 | #1 |
Участник клуба
Регистрация: 30.07.2008
Сообщений: 1,601
|
Полиморфные операционные системы
24.03.2016 В отладчике Softice можно писать операционную систему в процессе исполнения. В машинных кодах, разумеется. Операционная система может изменять сама себя в процессе исполнения, то есть код операционной системы может быть полиморфным. В ассемблере 1990х годов поддерживался полиморфизм. Полиморфизм использовался вирусами для защиты от антивирусов. Полиморфный вирус изменяется свой код в зависимости от ситуации. Программное обеспечение может менять свой код в процессе исполнения. На данный момент прошивка кода кажется жесткая, и от идеи полиморфизма ушли. В 1990х ассемблерный код был полиморфным. Полиморфный код изменяет сам себя в процессе исполнения в зависимости от ситуации. Полиморфизм это свойство бактерий и вирусов, так как бактерии и вирусы изменяют свой генотип в процессе эволюции, то есть вирус меняет штамм. И компьютерный код тоже может быть полиморфным. В языке программирования C++ полиморфизма нет, так как код компилируется и создается образ программы, загружаемый в оперативную память, то есть в С++ псевдо-полиморфизм. А в ассемблере был настоящий полиморфизм в 1990х годах...
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
|
24.03.2016, 10:20 | #2 | |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Цитата:
Не существует ассемблера 1990х годов. Полиморфизм был, есть и будет. Просто он никому не нужен |
|
24.03.2016, 12:44 | #3 |
Участник клуба
Регистрация: 04.04.2010
Сообщений: 1,554
|
Да он и сейчас есть. Пишу я програмку на C#. На 32битном компе у меня 32битный ассемблерный код, а на 64битном 64битный.
Можно и прямо во время исполнения чего-нибудь нагенерить без проблем. Но это пипец как редко нужно. Мне в голову разве что приходит какая-нибудь сравнивалка для объектов с неизвестными заранее классами. Что-бы не через медленную рефлексию это делать. Ещё можно скрипты в исполняемый код преобразовывать. |
24.03.2016, 13:21 | #4 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Не корректное сравнение
|
24.03.2016, 13:31 | #5 |
Участник клуба
Регистрация: 04.04.2010
Сообщений: 1,554
|
rpy3uH Почему не корректно? Исполняется же машинный код.
Его даже можно посмотреть. |
24.03.2016, 14:49 | #6 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
.NET код исполняется на виртуальной машине, ты на картинках видишь код который виртуальная машина сгенерировала из промежуточного кода.
Короче, это совсем другая опера |
24.03.2016, 15:47 | #7 |
Участник клуба
Регистрация: 04.04.2010
Сообщений: 1,554
|
rpy3uH С точки зрения процессора вроде нет разницы, откуда ему бинарник пришёл. Сгенерировался только что, или был предварительно собран компилятором.
|
24.03.2016, 15:58 | #8 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
И какое отношение это имеет к полиморфности?
|
24.03.2016, 16:18 | #9 |
Участник клуба
Регистрация: 04.04.2010
Сообщений: 1,554
|
|
24.03.2016, 16:26 | #10 |
добрый няша
Старожил
Регистрация: 29.10.2006
Сообщений: 4,804
|
Полиморфность - это прога меняет сама себя
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Операционные системы. | Dmitry_Web | Обсуждение статей | 1 | 09.10.2012 20:19 |
Операционные системы | Bustle | Свободное общение | 32 | 24.12.2010 16:39 |
Операционные системы!!!!!!!! | lera93 | Помощь студентам | 12 | 20.12.2010 11:41 |
Операционные Системы | Bauer | Помощь студентам | 3 | 31.05.2010 05:19 |
Операционные системы | slipokorn | Помощь студентам | 0 | 26.05.2010 05:05 |