Логотип
Юнионпедия
Связь
Доступно в Google Play
Новый! Скачать Юнионпедия на вашем Android™ устройстве!
Свободно
Более быстрый доступ, чем браузер!
 

Самомодифицирующийся код

Индекс Самомодифицирующийся код

Самомодифицирующийся код (СМК) — программный приём, при котором приложение создаёт или изменяет часть своего программного кода во время выполнения.

24 отношения: DTrace, IBM System z, IBM System/360, JavaScript, JIT-компиляция, Linux, Monkey patch, NOP, OpenBSD, Perl, Python, Solaris, SPARC, X86, Кэш процессора, Крис Касперски, Предотвращение выполнения данных, Полиморфизм компьютерных вирусов, Архитектура фон Неймана, Упаковка исполняемых файлов, Метапрограммирование, Гарвардская архитектура, Двоичная трансляция, Динамическая трансляция.

DTrace

DTrace — фреймворк динамической трассировки, созданный компанией Sun Microsystems, предназначенный для отладки ядра и приложений в реальном времени.

Новый!!: Самомодифицирующийся код и DTrace · Узнать больше »

IBM System z

IBM zSeries 800 IBM System z (более раннее название — IBM eServer zSeries) — бренд, созданный компанией IBM для обозначения линейки мейнфреймов.

Новый!!: Самомодифицирующийся код и IBM System z · Узнать больше »

IBM System/360

IBM System/360 IBM System/360 (S/360) — семейство компьютеров класса мейнфреймов, которое было анонсировано 7 апреля 1964 года.

Новый!!: Самомодифицирующийся код и IBM System/360 · Узнать больше »

JavaScript

JavaScript (аббр. JS) — мультипарадигменный язык программирования.

Новый!!: Самомодифицирующийся код и JavaScript · Узнать больше »

JIT-компиляция

JIT-компиляция (Just-in-time compilation, компиляция «на лету»), динамическая компиляция (dynamic translation) — технология увеличения производительности программных систем, использующих байт-код, путём компиляции байт-кода в машинный код или в другой формат непосредственно во время работы программы.

Новый!!: Самомодифицирующийся код и JIT-компиляция · Узнать больше »

Linux

Linux (или), Ли́нукс) — семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU, и, возможно, другие компоненты. Как и ядро Linux, системы на его основе как правило создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения. Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, — и имеющих свой набор системных и прикладных компонентов, как свободных, так возможно и собственнических. Появившись как решения вокруг созданного в начале 1990-х годов ядра, уже с начала 2000-х годов системы Linux являются основными для суперкомпьютеров и серверов, расширяется применение их для встраиваемых систем и мобильных устройств, некоторое распространение системы получили и для персональных компьютеров. За счёт использования свободного программного обеспечения и привлечения волонтёров каждая из систем Linux обладает значительными программными возможностями, трудно реализуемыми в прочих моделях разработки: например, в 2008 году расчёты показывали, что для того, чтобы «с нуля» разработать систему, аналогичную Fedora 9, потребовалось бы затратить $10,8 млрд, а совокупная себестоимость только ядра Linux оценивалась в сумму более $1,4 млрд, притом только за 2008 год она увеличилась на $315 млн, совокупный труд оценён в размере 73 тыс. человеко-лет. Традиционно системами Linux считаются только те, которые включают в качестве компонентов основные программы проекта GNU, такие как bash, gcc, glibc, coreutils, GNOME и ряд других, в связи с чем часто всё семейство иногда идентифицируется как GNU/Linux, притом существует спор об именовании GNU/Linux. Существует проект стандартизации внутренней структуры Linux-систем — Linux Standard Base, часть из документов которого зарегистрировано в качестве стандартов ISO; но далеко не все системы сертифицируются по нему, и в целом для Linux-систем не существует какой-либо общепризнанной стандартной комплектации или формальных условий включения в семейство. Однако есть ряд систем на базе ядра Linux, но не имеющих в основе зависимости от программ GNU, которые к Linux-семейству традиционно не относят, в частности таковы мобильные системы Android и FirefoxOS. Пингвин Tux Официальным логотипом и талисманом Linux является пингвин Tux, созданный в 1996 году Ларри Юингом. Торговая марка «Linux» принадлежит создателю и основному разработчику ядра Линусу Торвальдсу. При этом проект Linux в широком смысле не принадлежит какой-либо организации или частному лицу, вклад в его развитие и распространение осуществляют тысячи независимых разработчиков и компаний, одним из инструментов взаимодействия которых являются группы пользователей Linux. Существует ряд некоммерческих объединений, ставящих основной целью развитие и продвижение Linux, наиболее крупное и влиятельное из них — основанный в 2007 году The Linux Foundation. Существует значительный рынок коммерческой технической поддержки Linux-систем, на котором с долей свыше 70 % (2017) доминирует корпорация Red Hat. Линус Торвальдс — создатель и основной координатор проекта по разработке ядра Linux Ричард Столлман — основатель проекта GNU.

Новый!!: Самомодифицирующийся код и Linux · Узнать больше »

Monkey patch

Monkey patch (обезьяний патч) — в программировании возможность подмены методов и значений атрибутов классов программы во время её выполнения (runtime).

Новый!!: Самомодифицирующийся код и Monkey patch · Узнать больше »

NOP

В информатике NOP или NOOP (сокращение от английского: «No OPeration») инструкция процессора на языке ассемблера, или команда протокола, которая предписывает ничего не делать.

Новый!!: Самомодифицирующийся код и NOP · Узнать больше »

OpenBSD

OpenBSD — свободная многоплатформенная операционная система, основанная на 4.4BSD — BSD-реализации UNIX-системы.

Новый!!: Самомодифицирующийся код и OpenBSD · Узнать больше »

Perl

Perl — высокоуровневый интерпретируемый динамический язык программирования общего назначения, созданный Ларри Уоллом, лингвистом по образованию.

Новый!!: Самомодифицирующийся код и Perl · Узнать больше »

Python

Логотип Python (1990—2005) Python (МФА:; в русском языке распространено название пито́н) — высокоуровневый язык программирования общего назначения, ориентированный на повышение производительности разработчика и читаемости кода.

Новый!!: Самомодифицирующийся код и Python · Узнать больше »

Solaris

Solaris — операционная система, разработанная компанией Sun Microsystems для платформы SPARC, с 2010 года принадлежит вместе с активами Sun корпорации Oracle.

Новый!!: Самомодифицирующийся код и Solaris · Узнать больше »

SPARC

Микропроцессор UltraSPARC II компании Sun Microsystems SPARC (Scalable Processor ARChitecture — масштабируемая архитектура процессора) — архитектура RISC-микропроцессоров, первоначально разработанная в 1985 году компанией Sun Microsystems.

Новый!!: Самомодифицирующийся код и SPARC · Узнать больше »

X86

80486 DX2 x86 (Intel 80x86) — архитектура процессора c одноимённым набором команд, впервые реализованная в процессорах компании Intel.

Новый!!: Самомодифицирующийся код и X86 · Узнать больше »

Кэш процессора

Кэш микропроцессора — кэш (сверхоперативная память), используемый микропроцессором компьютера для уменьшения среднего времени доступа к компьютерной памяти.

Новый!!: Самомодифицирующийся код и Кэш процессора · Узнать больше »

Крис Касперски

Крис Касперски (настоящее имя Николай Владимирович Лихачёв в формате PDF; 2 ноября 1976, село Успенское, Краснодарский край — 18 февраля 2017, Рестон (Виргиния), США // Журнал «Хакер») — российский IT-журналист, программист, хакер.

Новый!!: Самомодифицирующийся код и Крис Касперски · Узнать больше »

Предотвращение выполнения данных

Предотвращение выполнения данных (Dáta Execútion Prevéntion, DEP) — функция безопасности, встроенная в Linux, Mac OS X, Android и ''Windows'', которая не позволяет приложению исполнять код из области памяти, помеченной как «только для данных».

Новый!!: Самомодифицирующийся код и Предотвращение выполнения данных · Узнать больше »

Полиморфизм компьютерных вирусов

Полиморфизм компьютерного вируса (πολυ- — много + μορφή — форма, внешний вид) — специальная техника, используемая авторами вредоносного программного обеспечения для снижения уровня обнаружения вредоносной программы классическими антивирусными продуктами.

Новый!!: Самомодифицирующийся код и Полиморфизм компьютерных вирусов · Узнать больше »

Архитектура фон Неймана

аккумулятор, ввод-вывод) Архитектура фон Неймана — широко известный принцип совместного хранения команд и данных в памяти компьютера.

Новый!!: Самомодифицирующийся код и Архитектура фон Неймана · Узнать больше »

Упаковка исполняемых файлов

Упако́вка исполняемых фа́йлов заключается в сжатии исполняемого файла и прикреплении к нему кода, необходимого для распаковки и выполнения содержимого файла.

Новый!!: Самомодифицирующийся код и Упаковка исполняемых файлов · Узнать больше »

Метапрограммирование

Метапрограммирование — вид программирования, связанный с созданием программ, которые порождают другие программы как результат своей работы (в частности, на стадии компиляции их исходного кода), либо программ, которые меняют себя во время выполнения (самомодифицирующийся код).

Новый!!: Самомодифицирующийся код и Метапрограммирование · Узнать больше »

Гарвардская архитектура

Гарвардская архитектура — архитектура ЭВМ, отличительными признаками которой являются.

Новый!!: Самомодифицирующийся код и Гарвардская архитектура · Узнать больше »

Двоичная трансляция

В компьютерной области под двоичной трансляцией (от binary translation) понимают эмуляцию одного набора инструкций на другом за счет трансляции машинного кода.

Новый!!: Самомодифицирующийся код и Двоичная трансляция · Узнать больше »

Динамическая трансляция

* JIT технология трансляции байт-кода в машинный код непосредственно во время работы программы для увеличения производительности.

Новый!!: Самомодифицирующийся код и Динамическая трансляция · Узнать больше »

ИсходящиеВходящий
Привет! Мы на Facebook сейчас! »