Связанные понятия
Отла́дка — этап разработки компьютерной программы, на котором обнаруживают, локализуют и устраняют ошибки. Чтобы понять, где возникла ошибка, приходится...
Кэш или кеш (англ. cache, от фр. cacher — «прятать»; произносится — «кэш») — промежуточный буфер с быстрым доступом к нему, содержащий информацию, которая может быть запрошена с наибольшей вероятностью. Доступ к данным в кэше осуществляется быстрее, чем выборка исходных данных из более медленной памяти или удаленного источника, однако её объём существенно ограничен по сравнению с хранилищем исходных данных.
Исполняемый файл (англ. executable file, также выполняемый, реже исполнимый, выполнимый) — файл, содержащий программу в виде, в котором она может быть исполнена компьютером. Перед исполнением программа загружается в память, и выполняются некоторые подготовительные операции (настройка окружения, загрузка библиотек).
Сценарный язык (язык сценариев, жарг. скриптовый язык; англ. scripting language) — высокоуровневый язык сценариев (англ. script) — кратких описаний действий, выполняемых системой. Разница между программами и сценариями довольно размыта. Сценарий — это программа, имеющая дело с готовыми программными компонентами.
Дизассе́мблер (от англ. disassembler ) — транслятор, преобразующий машинный код, объектный файл или библиотечные модули в текст программы на языке ассемблера.
Упоминания в литературе
Показатели качества должны постоянно проверяться. Для оптимизации этого процесса необходимо взять показатели и, по возможности, стремитьcя к поддержанию их
значений в заданных пределах. Для радиотехнических систем основные показатели качества – помехоустойчивость, конфиденциальность, электромагнитная совместимость, энергопотребление, надежность, масса, объем, стоимость. 8. Сочетание принципов композиции, декомпозиции и иерархичности. Современные РЭС могут содержать сотни, тысячи и миллионы элементов. Оптимизировать все элементы даже с помощью ПЭВМ невозможно. Поэтому их объединяют в сборочные единицы: ячейки, блоки, стойки (шкафы). Далее каждая сборочная единица рассматривается как единое целое, в котором производится композиция элементов. Сложную РЭС разбивают на отдельные ячейки, т. е. проводят декомпозицию.
Практически каждое правило, сформулированное на научной основе, может быть формализовано с
использованием разного количества параметров. Алгоритмы расчета параметров могут быть самыми разными. И, наконец, порядок выбора числовых значений параметров означает выбор определенной схемы оптимизации.
Заметим, что язык оптимизации (т. е. отыскания экстремальных значений некоторых функционалов или функций), с помощью которого мы описали алгоритмы развития на нижних уровнях организации материи, сохраняет свое значение и для социальной реальности. Однако
интеллект производит фильтрацию возможных решений, возможных типов компромиссов неизмеримо эффективнее и быстрее, нежели это делает механизм естественного отбора. Активное участие интеллекта в процессах развития позволяет расширить область поиска оптимума. Системы перестают быть рефлексными, т. е. такими, в которых локальный минимум разыскивается по четко регламентированным правилам. Поэтому для описания новых алгоритмов развития, возникших в социальных системах, простого языка оптимизации становится уже недостаточно. Мы вынуждены широко использовать и другие способы описания, принятые в теории исследования операций и системном анализе. В частности, это язык и методы анализа конфликтных ситуаций и многокритериальной оптимизации.
Применение экономико-математических методов к решению управленческих проблем позволяет использовать в качестве критерия выбора целевую функцию, которую обычно надо максимизировать или минимизировать; поэтому такой выбор называется оптимизационным. Примерами оптимизационных критериев могут служить: максимизация прибыли, доходов, производительности, эффективности; минимизация—затрат, потерь от брака или простоев и т. д. Оптимальное решение выбирается на основании сравнения количественного значения целевой
функции по всем возможным вариантам; самым лучшим решением считается то, которое обеспечивает наиболее желательное значение целевого критерия. Примером таких решений являются оптимизация загрузки оборудования, складских запасов, раскроя материалов и т. д.
После установки программы запускается мастер оптимизации интернет-соединения, при работе с которым необходимо указать
нужные параметры, например тип соединения (модемное, DSL, выделенная линия). Программа автоматически изменит все необходимые значения.
Связанные понятия (продолжение)
Многопото́чность — свойство платформы (например, операционной системы, виртуальной машины и т. д.) или приложения, состоящее в том, что процесс, порождённый в операционной системе, может состоять из нескольких потоков, выполняющихся «параллельно», то есть без предписанного порядка во времени. При выполнении некоторых задач такое разделение может достичь более эффективного использования ресурсов вычислительной машины.
Отла́дчик (деба́ггер, англ. debugger от bug) — компьютерная программа, предназначенная для поиска ошибок в других программах, ядрах операционных систем, SQL-запросах и других видах кода. Отладчик позволяет выполнять трассировку, отслеживать, устанавливать или изменять значения переменных в процессе выполнения кода, устанавливать и удалять контрольные точки или условия остановки и т.д.
Профилирование — сбор характеристик работы программы, таких как время выполнения отдельных фрагментов (обычно подпрограмм), число верно предсказанных условных переходов, число кэш-промахов и т. д. Инструмент, используемый для анализа работы, называют профилировщиком или профайлером (англ. profiler). Обычно выполняется совместно с оптимизацией программы.
Стек (англ. stack — стопка; читается стэк) — абстрактный тип данных, представляющий собой список элементов, организованных по принципу LIFO (англ. last in — first out, «последним пришёл — первым вышел»).
Ввод-вывод (от англ. input/output, I/O) в информатике — взаимодействие между обработчиком информации (например, компьютер) и внешним миром, который может представлять как человек, так и любая другая система обработки информации. Ввод — сигнал или данные, полученные системой, а вывод — сигнал или данные, посланные ею (или из неё). Термин также может использоваться как обозначение (или дополнение к обозначению) определенного действия: «выполнять ввод-вывод» означает выполнение операций ввода или вывода...
Маши́нный код (платфо́рменно-ориенти́рованный код), маши́нный язы́к — система команд (набор кодов операций) конкретной вычислительной машины, которая интерпретируется непосредственно процессором или микропрограммами этой вычислительной машины.Компьютерная программа, записанная на машинном языке, состоит из машинных инструкций, каждая из которых представлена в машинном коде в виде т. н. опкода — двоичного кода отдельной операции из системы команд машины. Для удобства программирования вместо числовых...
Событи́йно-ориенти́рованное программи́рование (англ. event-driven programming; в дальнейшем СОП) — парадигма программирования, в которой выполнение программы определяется событиями — действиями пользователя (клавиатура, мышь), сообщениями других программ и потоков, событиями операционной системы (например, поступлением сетевого пакета).
Компью́терная програ́мма — 1) комбинация компьютерных инструкций и данных, позволяющая аппаратному обеспечению вычислительной системы выполнять вычисления или функции управления (стандарт ISO/IEC/IEEE 24765:2010); 2) синтаксическая единица, которая соответствует правилам определённого языка программирования, состоящая из определений и операторов или инструкций, необходимых для определённой функции, задачи или решения проблемы (стандарт ISO/IEC 2382-1:1993).
Стек вызовов (от англ. call stack; применительно к процессорам — просто «стек») — в теории вычислительных систем, LIFO-стек, хранящий информацию для возврата управления из подпрограмм (процедур, функций) в программу (или подпрограмму, при вложенных или рекурсивных вызовах) и/или для возврата в программу из обработчика прерывания (в том числе при переключении задач в многозадачной среде).
Компоновщик (также редактор связей, от англ. link editor, linker) — инструментальная программа, которая производит компоновку («линковку»): принимает на вход один или несколько объектных модулей и собирает по ним исполнимый модуль.
Неблокирующая синхронизация — подход в параллельном программировании на симметрично-многопроцессорных системах, в котором принят отказ от традиционных примитивов блокировки, таких, как семафоры, мьютексы и события. Разделение доступа между потоками идёт за счёт атомарных операций и специальных, разработанных под конкретную задачу, механизмов блокировки.
Масштаби́руемость (англ. scalability) — в электронике и информатике означает способность системы, сети или процесса справляться с увеличением рабочей нагрузки (увеличивать свою производительность) при добавлении ресурсов (обычно аппаратных).
Систе́мный вы́зов (англ. system call) в программировании и вычислительной технике — обращение прикладной программы к ядру операционной системы для выполнения какой-либо операции.
Переключение контекста (англ. context switch) — в многозадачных ОС и средах - процесс прекращения выполнения процессором одной задачи (процесса, потока, нити) с сохранением всей необходимой информации и состояния, необходимых для последующего продолжения с прерванного места, и восстановления и загрузки состояния задачи, к выполнению которой переходит процессор.
Виртуа́льная па́мять (англ. virtual memory) — метод управления памятью компьютера, позволяющий выполнять программы, требующие больше оперативной памяти, чем имеется в компьютере, путём автоматического перемещения частей программы между основной памятью и вторичным хранилищем (например, жёстким диском). Для выполняющейся программы данный метод полностью прозрачен и не требует дополнительных усилий со стороны программиста, однако реализация этого метода требует как аппаратной поддержки, так и поддержки...
Переполнение буфера (англ. Buffer Overflow) — явление, возникающее, когда компьютерная программа записывает данные за пределами выделенного в памяти буфера.
Дамп памяти (англ. memory dump; в Unix — core dump) — содержимое рабочей памяти одного процесса, ядра или всей операционной системы. Также может включать дополнительную информацию о состоянии программы или системы, например значения регистров процессора и содержимое стека. Многие операционные системы позволяют сохранять дамп памяти для отладки программы. Как правило, дамп памяти процесса сохраняется автоматически, когда процесс завершается из-за критической ошибки (например, из-за ошибки сегментации...
Дефрагмента́ция — процесс перераспределения фрагментов файлов и логических структур файловых систем на дисках для обеспечения непрерывной последовательности кластеров.
Стати́ческий ана́лиз ко́да (англ. static code analysis) — анализ программного обеспечения, производимый (в отличие от динамического анализа) без реального выполнения исследуемых программ. В большинстве случаев анализ производится над какой-либо версией исходного кода, хотя иногда анализу подвергается какой-нибудь вид объектного кода, например P-код или код на MSIL. Термин обычно применяют к анализу, производимому специальным программным обеспечением (ПО), тогда как ручной анализ называют «program...
Макрокоманда , макроопределение или мáкрос — программный алгоритм действий, записанный пользователем. Часто макросы применяют для выполнения рутинных действий. А также макрос — это символьное имя в шаблонах, заменяемое при обработке препроцессором на последовательность символов, например: фрагмент html-страницы в веб-шаблонах, или одно слово из словаря синонимов в синонимизаторах.
Установка программного обеспечения , инсталляция — процесс установки программного обеспечения на компьютер конечного пользователя. Выполняется особой программой (пакетным менеджером), присутствующей в операционной системе (например, RPM, APT или dpkg в Linux, Установщик Windows в Microsoft Windows), или же входящим в состав самого программного обеспечения средством установки. В операционной системе GNU очень распространено использование системы GNU toolchain и её аналогов для компиляции программного...
Планирование выполнения задач — одна из ключевых концепций в многозадачности и многопроцессорности как в операционных системах общего назначения, так и в операционных системах реального времени. Планирование заключается в назначении приоритетов процессам в очереди с приоритетами. Программный код, выполняющий эту задачу, называется планировщиком (англ. task switcher, scheduler).
Подробнее: Диспетчер операционной системы
Уте́чка па́мяти (англ. memory leak) — процесс неконтролируемого уменьшения объёма свободной оперативной или виртуальной памяти компьютера, связанный с ошибками в работающих программах, вовремя не освобождающих ненужные участки памяти, или с ошибками системных служб контроля памяти.
Процессорное время (англ. process time или CPU time) — время, затраченное процессором компьютера на обработку задачи (программы). Распределяется между процессами в соответствии с используемым режимом операционной системы.
Среда выполнения (англ. execution environment, иногда «ранта́йм» от англ. runtime — «время выполнения») в информатике — вычислительное окружение, необходимое для выполнения компьютерной программы и доступное во время выполнения компьютерной программы. В среде выполнения, как правило, невозможно изменение исходного текста программы, но может наличествовать доступ к переменным окружения операционной системы, таблицам объектов и модулей разделяемых библиотек.
Декомпиля́тор — это программа, транслирующая исполняемый модуль (полученный на выходе компилятора) в эквивалентный исходный код на языке программирования высокого уровня.
Кодогенерация — часть процесса компиляции, когда специальная часть компилятора, кодогенератор, конвертирует синтаксически корректную программу в последовательность инструкций, которые могут выполняться на машине. При этом могут применяться различные, в первую очередь машинно-зависимые оптимизации. Часто кодогенератор является общей частью для множества компиляторов. Каждый из них генерирует промежуточный код, который подаётся на вход кодогенератору.
DLL (англ. Dynamic Link Library — «
библиотека динамической компоновки», «динамически подключаемая библиотека») в операционных системах Microsoft Windows и IBM OS/2 — динамическая библиотека, позволяющая многократное использование различными программными приложениями. Эти библиотеки обычно имеют расширение DLL, OCX (для библиотек содержащих ActiveX), или DRV (для ряда системных драйверов). Формат файлов для DLL такой же, как для EXE-файлов Windows, т. е. Portable Executable (PE) для 32-битных и 64-битных...
Аварийный отказ (также катастрофический отказ, авария, фатальный сбой, разг. крах, падение, краш англ. crash) — это аварийное завершение программы или операционной системы, когда они перестают нормально функционировать.
Пото́к выполне́ния (тред; от англ. thread — нить) — наименьшая единица обработки, исполнение которой может быть назначено ядром операционной системы. Реализация потоков выполнения и процессов в разных операционных системах отличается друг от друга, но в большинстве случаев поток выполнения находится внутри процесса. Несколько потоков выполнения могут существовать в рамках одного и того же процесса и совместно использовать ресурсы, такие как память, тогда как процессы не разделяют этих ресурсов. В...
Атомарная (атом от греч. atomos — неделимое) операция — операция, которая либо выполняется целиком, либо не выполняется вовсе; операция, которая не может быть частично выполнена и частично не выполнена.
А́дресное пространство (англ. address space) — совокупность всех допустимых адресов каких-либо объектов вычислительной системы — ячеек памяти, секторов диска, узлов сети и т. п., которые могут быть использованы для доступа к этим объектам при определенном режиме работы (состоянии системы).
Виртуальная машина (VM, от англ. virtual machine) — программная и/или аппаратная система, эмулирующая аппаратное обеспечение некоторой платформы (target — целевая, или гостевая платформа) и исполняющая программы для target-платформы на host-платформе (host — хост-платформа, платформа-хозяин) или виртуализирующая некоторую платформу и создающая на ней среды, изолирующие друг от друга программы и даже операционные системы (см.: песочница); также спецификация некоторой вычислительной среды (например...
Начальная загрузка — сложный и многошаговый процесс запуска компьютера. Загрузочная последовательность — это последовательность действий, которые должен выполнить компьютер для запуска операционной системы (точнее, загрузчика), независимо от типа установленной ОС.
Динамическое распределение памяти — способ выделения оперативной памяти компьютера для объектов в программе, при котором выделение памяти под объект осуществляется во время выполнения программы.
Многозада́чность (англ. multitasking) — свойство операционной системы или среды выполнения обеспечивать возможность параллельной (или псевдопараллельной) обработки нескольких задач. Истинная многозадачность операционной системы возможна только в распределённых вычислительных системах.
Код операции , операционный код, опкод — часть машинного языка, называемая инструкцией и определяющая операцию, которая должна быть выполнена.
Счётчик кома́нд (также PC = program counter, IP = instruction pointer, IAR = instruction address register, СЧАК = счётчик адресуемых команд) — регистр процессора, который указывает, какую команду нужно выполнять следующей.
Объе́ктный мо́дуль (также — объектный файл, англ. object file) — файл с промежуточным представлением отдельного модуля программы, полученный в результате обработки исходного кода компилятором. Объектный файл содержит в себе особым образом подготовленный код (часто называемый двоичным или бинарным), который может быть объединён с другими объектными файлами при помощи редактора связей (компоновщика) для получения готового исполнимого модуля либо библиотеки.
Автоматизация сборки — этап процесса разработки программного обеспечения, заключающийся в автоматизации широкого спектра задач, решаемых программистами в их повседневной деятельности.
Подпрограмма (англ. subroutine) — поименованная или иным образом идентифицированная часть компьютерной программы, содержащая описание определённого набора действий. Подпрограмма может быть многократно вызвана из разных частей программы. В языках программирования для оформления и использования подпрограмм существуют специальные синтаксические средства.
В области компьютеризации под аппаратным ускорением понимают применение аппаратного обеспечения для выполнения некоторых функций быстрее по сравнению с выполнением программ процессором общего назначения. Примерами аппаратного ускорения может служить блоковое ускорение выполнения в графическом процессоре и инструкции комплексных операций в микропроцессоре.
Подробнее: Аппаратное ускорение
Тести́рование програ́ммного обеспе́че́ния — процесс исследования, испытания программного продукта, имеющий своей целью проверку соответствия между реальным поведением программы и её ожидаемым поведением на конечном наборе тестов, выбранных определенным образом (ISO/IEC TR 19759:2005).
Упоминания в литературе (продолжение)
Трудно со стопроцентной уверенностью сказать, какой архиватор позволяет получить максимальную степень сжатия. Наиболее вероятно, что из WinAce,WinRAR и 7-Zip лучше справится WinRAR. Однако даже при сжатии файлов одного и того же типа (например, графического формата BMP) часто невозможно заранее определить, какой из архиваторов сожмет файл лучше. Наиболее высокая степень сжатия может быть у любого из перечисленных архиваторов. В
большинстве случаев определить оптимальный формат сжатия можно только эмпирическим путем, используя функции оптимизации для конкретного типа и размера сжимаемой информации. Поэтому, если размер сжатого файла действительно имеет значение, перед отсылкой файла по почте, размещением на FTP-сервере или записью его на лазерный диск запакуйте данные сразу тремя архиваторами и посмотрите, какой из них справился с заданием лучше других.
Наряду со стоимостными оценками для интегрального количественного выражения социально-экономического эффекта предлагаются различного рода искусственные приёмы, предполагающие применение условных единиц измерения. Это направление более радикальное и смелое, чем первое, ведёт, на наш взгляд, к отрыву процесса определения эффекта от реальных социально-экономических процессов. Мы имеем в виду в первую очередь и по преимуществу
метод суммирования различных составляющих общего социально-экономического эффекта, взвешенных по весам или баллам, отражающим якобы различную общественную важность тех или иных социально-экономических целей. Мы показали, что качественные принципы ранжирования целей есть, а для задания социально-экономического эффекта веса целей не нужны. Акт присвоения весов (баллов) упрощает проблему ран-жирования, помогает исследователю уйти в сторону от сложности реальной действительности. Присвоение количественных весов – приём, без которого не может обойтись векторная оптимизация, С точки зрения математики такое абстрактное конструирование единого интегрального критерия вполне правомерно[49]. С точки же зрения политической экономии не ясно, по какому критерию пред-почесть одни социально-экономические цели другим и как выбрать конкретные веса, то есть не ясны пути реализации абстрактных моделей.
При моделировании процессов «как есть» и «как должно быть» анализу подвергаются топология и ошибки процесса, а также «операционное окружение» процесса. То есть рассматриваются модели в состоянии «как есть», выявляются
возможные варианты их оптимизации, их изменения и построения нового варианта операционного окружения соответствующей логики (организации) процесса.
Данное окно содержит три вкладки: Общие, Дополнительно и Эвристический анализатор. На первой параметры размещены в трех областях (Типы файлов, Оптимизация и Составные файлы), на второй – в двух (Запуск задачи от имени и Дополнительные параметры). На вкладке Эвристический анализатор установкой соответствующих флажков активизируется
обычный и расширенный режим проверки руткитов и включается эвристический анализатор. Ползунок Уровень проверки позволяет задать или изменить режим работы эвристического анализатора – от поверхностного до детального. В зависимости от рода работы и получаемых предупреждений следует подобрать оптимальный с точки зрения безопасности и удобства режим.
Главным достоинством GIF является то, что при сохранении можно выбирать количество цветов. Например, для изображений на рис. 4.4 достаточно двух-четырех цветов, что значительно уменьшает размер файла без малейшей
потери качества. Подробно оптимизация GIF описана ниже.
Еще одно немаловажное нововведение – механизм оптимизации использования каналов, по которым передаются сообщения. Эти каналы не всегда быстрые и незагруженные,
поэтому наличие такой функции существенно облегчает жизнь пользователя. Также имеется возможность передачи сообщений по частям, что очень полезно, когда размер письма большой, например 5-10 Мбайт.
Начиная работать с SEO, специалисты рекомендуют сосредоточить свое внимание на оптимизации своего сайта, ставя целью улучшить скорость его работы. Данный фактор является фактором ранжирования в Google. Многие вебмастера, проводя тесты своих сайтов на скорость, обнаруживают, что увеличение скорости работы сайта позволяет его страницам несколько быстрее загружаться, а это оказывает положительное влияние на такие моменты, как увеличение числа заказов, просмотров страниц и времени, проводимом пользователем на сайте. Благодаря этому
можно значительно увеличить ваш ROI (термин, обозначающий окупаемость вложенных инвестиций). А достигнуть этого можно только в случае улучшения скорости загрузки вашего сайта. Получается, что при увеличении скорости загрузки сайта появляется ряд преимуществ в отношении сайтов конкурентов. Специалисты рекомендуют уменьшить размер кода JavaScript или CSS, провести тщательный анализ своего сайта на ошибки в HTML-коде.
Однако в ряде случаев разработка и принятие оптимального решения даже в условиях определенности могут быть сопряжены с техническими (ресурсными) проблемами, например, отсутствием или недоступностью (в частности дороговизной) необходимых информационно-аналитических средств или же временными ограничениями. В таких ситуациях более приемлемым является своевременное принятие некоторого допустимого варианта решения, чем неоправданный, прежде всего хронологически, поиск оптимального. То есть, по
сути, здесь оптимизация осуществляется уже по другим критериям, зачастую неформализованным.
На рынке представлено два программных продукта, Autodesk 3ds Max, лидирующего программного обеспечения в области трехмерной графики и анимации. Autodesk 3ds Max 2009 для художников индустрии развлечений и Autodesk 3ds Max Design 2009 для архитекторов, проектировщиков и
специалистов по визуализации. Обе версии пакета предлагают новые возможности рендеринга, улучшенную совместимость со стандартными продуктами, Autodesk, а также средства оптимизации рабочего процесса при создании анимации и текстурирования. Кроме того, с помощью 3ds Max Design 2009 можно точно моделировать и анализировать освещенность объектов.
Для целей оптимизации издержек в бизнес-процессах их
модели следует сопровождать дополнительными характеристиками процедур, такими как:
При дискоординациях сенсорных и моторных компонентов ГДС запускается адаптивный процесс, направленный на воссоздание согласованности компонентов и оптимальность выполнения перцептивных актов. Окуломоторная адаптация протекает в двух формах: оперативной и консервативной. Оперативное перепрограммирование ГДС выражается в быстрой
(практически мгновенной) корректировке параметров цели и критериев оценки результатов движений глаз. Консервативная форма адаптации, предполагает длительную (от нескольких дней) перестройку всей системы обеспечения окуломоторного акта, включая его нормы и эталоны. Условием адаптации ГДС является активное включение субъекта в решение зрительных и двигательных задач. Психологически и целенаправленный поворот глаз и устойчивая фиксация строятся как волевое действие, достигающее заданного результата путем преодоления внешне навязанных движений. Этот процесс принимает вид приспособления субъекта к необычным условиям восприятия, зависит от величины рассогласования зрительного и эгоцентрического направлений объекта восприятия и включает этапы: 1) компенсации рассогласования; 2) оптимизации двигательного состава фиксационного поворота глаз и 3) закрепления и стабилизации окуломоторного навыка. В результате адаптации складывается новый «функциональный орган», способный обеспечить оптимальное взаимодействие субъекта восприятия с окружающим миром. В ходе адаптации ГДС выступает в трех ипостасях, как а) поисковая, б) обучающаяся и в) следящая.
Организации уровня 4 вышли за пределы простого определения процессов. В них менеджеры проводят мониторинг и анализируют процессы
с использованием системы показателей, принимают решения по оптимизации процессов.
Иными словами, Голдратт говорит о том,
что оптимизация составляющих частей системы по отдельности в конечном счете приведет к потерям в системе в целом.
1 – блок исходных данных; 2 – блок имитации технологических операций от скашивания трав до закладки корма на хранение; 3 – блок формирования и учёта влияния метеоусловий; 4 – блок учёта динамики провяливания скошенных трав и сопряжения подсистем; 5 – блок расчета
выходных характеристик системы; 6 – блок оптимизации и принятия решений