Что такое сборка в программировании
Перейти к содержимому

Что такое сборка в программировании

  • автор:

Сборки в .NET

Сборки представляют собой базовые элементы развертывания, управления версиями, повторного использования, назначения областей активации и прав доступа для приложений на основе платформы .NET. Сборка представляет собой коллекцию типов и ресурсов, собранных для совместной работы и образующих логическую функциональную единицу. Сборки создаются в виде исполняемого файла (EXE) или файла библиотеки динамической компоновки (DLL) и являются стандартными блоками приложений .NET. Они предоставляют сведения для среды CLR, которые нужны для распознавания реализаций типов.

В .NET и .NET Framework сборку можно создать из одного или нескольких файлов исходного кода. В .NET Framework сборки могут содержать один или несколько модулей. Благодаря этому в крупных проектах несколько разработчиков могут работать с отдельными файлами или модулями исходного кода, которые вместе образуют единую сборку. Дополнительные сведения см. в статье Практическое Создание многофайловой сборки.

Сборки имеют следующие свойства.

  • Сборки реализованы как файлы EXE или DLL.
  • Для библиотек, предназначенных для .NET Framework, сборки можно совместно использовать в нескольких приложениях, поместив их в глобальный кэш сборок (GAC). Прежде чем включить сборки в глобальный кэш сборок, нужно назначить им строгие имена. Подробнее см. в разделе Сборки со строгими именами.
  • Сборки загружаются в память только в том случае, если они реально используются. Если они не используются, то они не загружаются. Благодаря этому свойству сборки могут быть эффективным средством для управления ресурсами в крупных проектах.
  • Сведения о сборке можно получить программным путем с помощью отражения. Дополнительные сведения см. в статьях Отражение (C#) и Отражение (Visual Basic).
  • Сборку можно загрузить только для ее проверки, используя класс MetadataLoadContext в .NET и .NET Framework. MetadataLoadContext заменяет методы Assembly.ReflectionOnlyLoad.

Сборки в среде CLR

Сборки предоставляют сведения для среды CLR, которые нужны для распознавания реализаций типов. Для среды выполнения тип не существует вне контекста сборки.

Сборка определяет следующие сведения:

  • Код, выполняемый средой CLR. Имейте в виду, что каждая сборка может иметь только одну точку входа: DllMain , WinMain или Main .
  • Граница безопасности. Сборка представляет собой единицу, для которой запрашиваются и предоставляются разрешения. Дополнительные сведения о границах безопасности в сборках см. в разделе Вопросы безопасности сборок.
  • Граница типа. Каждое удостоверение типа включает имя сборки, в которой располагается данный тип. Тип с именем MyType , загруженный в области действия одной сборки, не совпадает с типом MyType , загруженным в области действия другой сборки.
  • Граница области действия ссылок. Манифест сборки содержит метаданные, используемые для разрешения типов и для выполнения связанных с ресурсами запросов. Манифест указывает типы и ресурсы, предоставляемые за пределами сборки, а также перечисляет другие сборки, от которых она зависит. При отсутствии связанного манифеста сборки код на промежуточном языке MSIL, находящийся в переносимом исполняемом (PE) файле, выполняться не будет.
  • Граница версий. Сборка является наименьшей единицей с поддержкой версий в среде CLR. Версия для всех типов и ресурсов в одной сборке назначается как единому целому. В манифесте сборки описываются зависимости определенных версий от других сборок. Дополнительные сведения об управлении версиями см. в разделе Управление версиями сборки.
  • Единица развертывания. При запуске приложения могут присутствовать лишь сборки, первоначально вызываемые приложением. Другие сборки, например, содержащие ресурсы локализации или вспомогательные классы, могут извлекаться по требованию. Это позволяет приложениям сохранять простую структуру и малый размер при первоначальном скачивании. Дополнительные сведения о развертывании сборок см. в разделе Развертывание приложений.
  • Единица параллельного выполнения. Дополнительные сведения о выполнении нескольких версий сборок см. в разделе Сборки и параллельное выполнение.

Создание сборки

Сборки могут быть статическими или динамическими. Статические сборки хранятся на диске в виде переносимых исполняемых (PE) файлов. Статические сборки могут включать интерфейсы, классы и ресурсы, такие как точечные рисунки, файлы JPEG и другие файлы ресурсов. Кроме того, можно создавать динамические сборки, которые запускаются непосредственно из памяти и не сохраняются на диск перед выполнением. Динамические сборки можно сохранить на диске после выполнения.

Существует несколько способов создания сборок. Можно использовать средства разработки, такие как Visual Studio, позволяющие создавать файлы DLL или EXE. Чтобы создать сборки с использованием модулей из других средств разработки, можно воспользоваться средствами из Windows SDK. Для создания динамических сборок также можно использовать интерфейсы CLR такие, как System.Reflection.Emit.

Скомпилируйте сборки, выполнив сборку в Visual Studio, с помощью средств интерфейса командной строки .NET Core или создав сборки .NET Framework с помощью компилятора командной строки. Подробнее компиляция сборок описана в статье общие сведения о .NET CLI.

Чтобы создать сборку в Visual Studio, выберите пункт Сборка в меню Сборка.

Манифест сборки

Каждая сборка имеет файл манифеста сборки. Манифест сборки выполняет роль оглавления и содержит следующее:

  • Идентификатор сборки (ее имя и версию).
  • Таблица с описанием всех файлов, входящих в сборку. Например, сюда относятся другие ваши сборки, от которых зависит файл EXE или DLL, а также растровые изображения или файлы сведений.
  • Список ссылок сборки, то есть список всех внешних зависимостей, таких как библиотеки DLL или другие файлы. Ссылки на сборки содержат ссылки на глобальные и частные объекты. Глобальные объекты доступны для всех других приложений. В .NET Core глобальные объекты связаны с определенной средой выполнения. В .NET Framework они расположены в глобальном кэше сборок (GAC). System.IO.dll служит примером сборки в глобальном кэше сборок. Закрытые объекты должны находиться в каталоге установки приложения или в одном из его подкаталогов.

Так как сборки содержат сведения о содержимом, версиях и зависимостях, работа связанных с ними приложений не зависит от внешних источников, таких как реестр в системах Windows. Сборки снижают риск конфликта библиотек DLL, а также повышают надежность и простоту развертывания приложений. Во многих случаях для установки приложения на базе .NET достаточно просто скопировать его файлы на целевой компьютер. Дополнительные сведения см. в разделе Манифест сборки.

Добавление ссылки на сборку

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

Ссылки на большинство сборок из библиотеки классов .NET создаются автоматически. Если системная сборка не упоминается в ссылке автоматически, добавьте ссылку одним из следующих способов:

  • Для .NET и .NET Core добавьте ссылку на пакет NuGet, содержащий эту сборку. Используйте NuGet диспетчер пакетов в Visual Studio или добавьте для сборки в проект CSPROJ или VBPROJ.
  • Для .NET Framework добавьте ссылку на сборку с помощью диалогового окна Добавить ссылку в Visual Studio или параметра командной строки -reference для компиляторов C# или Visual Basic.

На C# вы можете использовать две версии одной и той же сборки в одном приложении. Дополнительные сведения см. в разделе Псевдоним extern.

Связанная информация

Заголовок Описание
Содержимое сборок Элементы, составляющие сборку.
Манифест сборки Данные в манифесте сборки и способ их хранения в сборках.
Глобальный кэш сборок Способ сохранения и использования сборок в глобальном кэше сборок.
Сборки со строгими именами Характеристики сборок со строгими именами.
Вопросы безопасности сборок Обеспечение безопасности сборок.
Управление версиями сборок Общие сведения о политике управления версиями платформы .NET Framework.
Размещение сборок Вопросы размещения сборок.
Сборки и параллельное выполнение Использование нескольких версий среды выполнения или сборки.
Предоставление динамических методов и сборок Способы создания динамических сборок.
Обнаружение сборок в среде выполнения Способы разрешения платформой .NET Framework ссылок на сборки во время выполнения.

Справочник

См. также

  • Формат файла сборки .NET
  • Дружественные сборки
  • Ссылочные сборки
  • Практическое руководство. Загрузка и выгрузка сборок
  • Практическое руководство. Использование и отладка сборок с возможностью выгрузки в .NET Core
  • Практическое руководство. Определение того, является ли файл сборкой
  • Практическое руководство. Проверка содержимого сборки с помощью MetadataLoadContext

§ 8. Системы сборки кода

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

02 В новых языках программирования (Rust, Go) параллельная сборка и поиск зависимостей уже встроены, но для существующих языков (C, C++, Fortran) это невозможно сделать, поэтому для них используют отдельные системы сборки. Про них и пойдет речь в этой лекции.

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

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

04 Как правило, системы сборки поддерживают опции для включения или отключения различных компонент программы. Результатом работы системы сборки является директория, в которой находятся сгенерированные файлы, а также файл с дальнейшими командами для подчиненной (более низкоуровневой) системы сборки. К высокоуровневым системам относятся Autoconf, Cmake, Meson, к низкоуровневым — Make, Ninja. Мы будем изучать Make, Meson и Ninja, а также программу для работы с зависимостями Pkg-config.

Make

05 Классической, а также самой простой системой сборки является GNU Make. Правила сборки для этой системы описываются в файле Makefile , и состоят из списка файлов, которые генерирует (выходные файлы) команда, двоеточия, списка файлов, которые команда использует (входные файлы) для генерации и команд генерации. Если время последнего обновления хотя бы одного входного файла позже времени последнего обновления хотя бы одного выходного файла, то команда выполняется. В противом случае выходные файлы считаются актуальными. Все команды в файле начинаются с символа табуляции.

06 Часто в списке выходных файлов указывают несуществующий файл, тогда команда запускается каждый раз, когда вводится команда make имя-файла . По умолчанию команда make собирает первый файл.

all: echo Hello main.copy: main cp main main.copy

Пример Makefile .

make all # сборка файла all make # сборка файла all make main.copy # сборка файла main.copy 

Примеры сборки с помощью Make. Если у вас в директории одновременно находится файла main.cc и main.c , то make выберет только один из них для компиляции.

07 Поскольку Make был разработан для сборки программ, то в него встроены удобные правила для компиляторов, которые работают даже без наличия в директории Makefile . Например, команда make main.o запустит команду компиляции прогаммы $CXX $CXXFLAGS -c -o main.o main.cc . Здесь компилятор и флаги компиляции задаются переменными среды CXX и CXXFLAGS , а входной файл определяется автоматически по названию выходного. Если переменные не определены, то используется компилятор по умолчанию (GCC) и флаги по умолчанию (по умолчанию их нет). Команда make main запустит коману линковки программы $CC $LDFLAGS -o main main.o . Встроенного правила для сборки библиотек в Make нет, но его легко написать самостоятельно.

make main.o # компиляция main.o из main.cc env CXXFLAGS='-O3' make main.o # компиляция main.o из main.cc с максимальным уровнем оптимизации env CXX='clang++' make main.o # компиляция main.o из main.cc с помощью компилятора clang++ make main # линковка main из main.o env CC=g++ LDFLAGS='-flto' make main # линковка main из main.o с флагом оптимизации 

Примеры сборки кода с помощью Make.

08 Переменные среды, используемые Make для сборки программ, стали стандартом и для других систем сборки. Практически все системы сборки их поддерживают. Эти переменные чаще всего используются мейнтенерами пакетов для различных дистрибутивов Linux: в этих переменных указываются флаги, которые используются для сборки всех пакетов дистрибутива. Например, в некоторых системах используется флаг -fstack-protector-strong , который позволяет получить защиту от взлома программ даже при наличии в них ошибок работы с памятью.

Переменная Описание
CC компилятор языка C и линковщик для всех языков
CFLAGS флаги компилятора языка C
CXX компилятор языка C++
CXXFLAGS флаги компилятора языка C++
FC компилятор языка Fortran
FFLAGS флаги компилятора языка Fortran
LDFLAGS флаги линковщика

Список переменных среды, используемых в Make и других системах сборки.

09 Основным недостатком Make является чрезмерная простота команд: в правилах сборки не учитываются заголовочные файлы, которые включаются в основные файлы с помощью макросов. Это означает, что при изменении заголовочного файла пересборка основного не произойдет. Это послужило причиной создания более совершенных и высокоуровневых систем сборок. Тем не менее, Make до сих пор используется в небольших проектах, в том числе, в проектах, где нужно собирать не код, а что-то другое. Причина этому — простота использования и наличие Make во всех дистрибутивах Linux.

Meson и Ninja

Meson является современной альтернативой Autotools и CMake, основным недостатком которых является использование макросов, а не полноценного языка программирования для описания правил сборки.

10 Любой проект Meson начинается с дерева директорий, в каждой из которых находится файл для сборки. В meson это файл meson.build . В проектах на C++ с небольшими вариациями используется следующее дерево директорий.

doc # документация src ├── test # код модульных тестов │ ├── component1 # структура папок такая же, │ ├── component2 # как и в основном коде │ └── component3 └── myproject # основной код ├── component1 ├── component2 └── component3

Структура проекта.

11 Здесь myproject — название проекта, componentN — логическая единица проекта. Как правило, каждая компонента собирается в отдельную библиотеку (или исполняемый файл), которая затем присоединяется к основному исполняемому файлу. В больших проектах из одной компоненты могут получиться несколько библиотек или исполняемых файлов. При такой схеме название проекта и название компоненты являются частью пути до заголовочного файла, а имя файла совпадает с именем класса, который в нем объявлен. В больших проектах кроме класса в файле могут быть объявлены вспомогательные функции или классы. Чтобы использовать класс Ship из компоненты component1 в каком-либо файле проекта, его следует подключить, используя путь относительно директории src .

#include  

12 В небольших проектах структура упрощается путем исключения директорий компонент и хранении всех файлов с исходным кодом в директории myproject . Именно такую структуру я вам рекомендую использовать в заданиях.

13 Корневой файл meson.build для вышеописанной упрощенной структуры содержит параметры проекта: название, версию, язык, опции сборки по умолчанию. Команда project должна быть первой командой в корневом файле. Команда subdir исполняет команды из файла meson.build в указанной в качестве аргумента директории.

project( 'myproject', # название проекта 'cpp', # язык version: '0.1.0', # версия кода meson_version: '>=0.50', # минимально поддерживаемая версия Meson default_options: ['cpp_std=c++20'] # используемый стандарт C++ ) subdir('src')

Корневой файл meson.build .

# сохранение пути до текущей директории # для подключения заголовочных файлов # в виде src = include_directories('.') subdir('myproject')

Файл src/meson.build .

myproject_src = files([ 'main.cc' # список исходных файлов ]) executable( 'myproject', # название исполняемого файла include_directories: src, # где ищутся заголовочные файлы sources: myproject_src, # список исходный файлов dependencies: [], # зависимости проекта (если имеются) install: true # устанавливать ли файл )

Файл src/myproject/meson.build .

Для инициализации директории, в которой будет происходить сборка, нужно ввести следующие команды в корне проекта.

meson . build cd build ninja

После первичной инициализации после любого изменения кода достаточно набрать ninja для пересборки проекта. При этом пересоберется только измененная и зависимые от нее части кода.

Pkg-config

14 Для того чтобы подключить библиотеку к вашей программе, достаточно указать директорию с заголовочными файлами, директорию с библиотекой, а также название библиотеки с помощью опции -l . Если библиотека установлена в систему стандартным способом, то, как правило, достаточно только названия. Процесс подключения библиотек к проекту автоматизируется с помощью программы pkg-config , которая по названию пакета выдает флаги компилятора и флаги линковщика, которые необходимы для корректной сборки проекта с этой библиотекой.

Команда Описание
pkg-config —cflags OpenCL вывести флаги компилятора для подключения библиотеки OpenCL
pkg-config —libs OpenCL вывести флаги линковщика для подключения библиотеки OpenCL
pkg-config —cflags ‘OpenCL >= 1.2’ вывести флаги компилятора для подключения библиотеки OpenCL версии не ниже 1.2
pkg-config —list-all вывести список библиотек, установленных в системе и имеющих файл pkg-config

Список команд pkg-config для подключения библиотек.

15 Файл pkg-config для своего проекта обычно делают из шаблона, в котором прописываются директории, в которые устанавливается проект. В Meson это можно сделать автоматически с помощью модуля pkgconfig . Файл установится также автоматически при установке всего проекта.

Name: OpenCL Description: Open Computing Language Client Driver Loader Version: 2.2 Libs: -L/usr/lib64 -lOpenCL Cflags: -I/usr/include

Содержиое файла OpenCL.pc для библиотеки OpenCL.

pkgconfig = import('pkgconfig') pkgconfig.generate( unistdx_lib, version: meson.project_version(), name: 'unistdx', description: 'C++ wrappers for libc', )

Генерация файла unistdx.pc в Meson для проекта Unistdx.

16 Библиотеки также можно автоматически искать с помощью pkg-config . В Meson это команда dependency . В случае с Make команды поиска прописываются в CXXFLAGS и LDFLAGS .

env CXXFLAGS="$(pkg-config --cflags OpenCL)" LDFLAGS="$(pkg-config --libs OpenCL)" make

Подключение библиотеки в Make.

OpenCL = dependency('OpenCL') executable( . dependencies: [OpenCL], . )

Подключение библиотеки в Meson.

Задания

Make 1 балл

17 Напишите Makefile с правилами для сборки программы, состоящей из файлов main.cc и main.hh : первый файл включает второй с помощью #include . Программа должна пересобираться при изменении main.hh . Команды сборки писать не надо, просто укажите зависимости между файлами.

#include "main.hh" int main()  return 0; > 

Файл main.cc .

Make + pkg-config 1 балл

18 Соберите код из первого задания с библиотекой zlib. Библиотеку подключите с помощью pkg-config .

Meson 1 балл

19 Соберите код из первого задания с библиотекой zlib с помощью Meson.

Git + Meson 2 балла

20 Скачайте проект unistdx с помощью команды git . Соберите его с помощью Meson с флагами компилятора -march=native -O3 и флагом линковщика -flto .

Сборка (программирование)

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

.NET

В рамках технологии .NET сборка (англ. assembly ) — двоичный файл, содержащий управляемый код. Когда компилятор платформы .NET создает EXE или DLL модуль, содержимое этого модуля называется сборкой. Сборка содержит в себе: номер версии, метаданные и инструкции IL.

Номер версии сборки в .NET состоит из двух частей: информационной версии в виде строки и версии совместимости в виде идентификатора из четырёх целых чисел. Например, мы создали сборку с информационной версией TheNewAssembly. Предположим, что её версия совместимости выглядит так: 1.35.6.2 .

Первый идентификатор — основной номер версии.

Второй идентификатор — дополнительный номер версии.

Третий идентификатор — номер сборки.

Четвёртый идентификатор — номер редакции.

Информация должна быть проверяема, иначе она может быть поставлена под сомнение и удалена.
Вы можете отредактировать эту статью, добавив ссылки на авторитетные источники.
Эта отметка установлена 27 мая 2012.

.NET Framework
Архитектура Base Class Library • Common Language Infrastructure • .NET assembly • метаданные • COM Interop
Инфраструктура Common Language Runtime • Common Type System • Common Intermediate Language • Virtual Execution System • Dynamic Language Runtime
Языки Microsoft C# • Cω • Visual Basic .NET • C++/CLI (Managed) • Visual J# • JScript .NET • Windows PowerShell • IronPython • IronRuby • F# • Spec# • Sing#
Другие языки A# • Boo • IronLisp • L# • Nemerle • P# • PascalABC.NET • PHP • Scala • Cobra • Delphi Prism
Windows Foundations Presentation • Communication • Workflow
Компоненты ADO.NET (Entity Framework · Data Services) · ASP.NET (AJAX · MVC · Dynamic Data) · .NET Remoting · Language Integrated Query · Windows CardSpace · Windows Forms · XAML · ClickOnce · Dynamic Language Runtime · Parallel FX Library (PLINQ · TPL)
Реализации DotGNU • Mono • .NET Compact Framework (Xbox 360) • .NET Micro Framework • Portable.NET • XNA Framework • Silverlight • Shared Source Common Language Infrastructure
Сравнения C# и Java • C# и Visual Basic .NET
Будущие технологии Acropolis • Jasper
  • .NET Framework

Wikimedia Foundation . 2010 .

Полезное

Смотреть что такое «Сборка (программирование)» в других словарях:

  • Сборка — В Викисловаре есть статья «сборка» Сборка (действие): Сборка (техника) образование соединений составных частей изделия (по ЕСТД … Википедия
  • Сборка мусора — Для улучшения этой статьи желательно?: Найти и оформить в виде сносок ссылки на авторитетные источники, подтверждающие написанное. Викифицировать статью … Википедия
  • Мультипарадигмальное программирование — Мультипарадигмальное программирование это программирование с одновременным использованием множества парадигм программирования. Основные методы Можно выделить следующие основные подходы к организации мультипарадигмального программирования:… … Википедия
  • SSI (программирование) — У этого термина существуют и другие значения, см. SSI. SSI (Server Side Includes включения на стороне сервера) несложный язык для динамической «сборки» веб страниц на сервере из отдельных составных частей и выдачи клиенту полученного HTML… … Википедия
  • Мультипарадигменное программирование — Мультипарадигмальное программирование это программирование с одновременным использованием множества парадигм программирования. Основные методы Можно выделить следующие основные подходы к организации мультипарадигмального программирования:… … Википедия
  • Персональный компьютер — Запрос «PC» перенаправляется сюда; см. также другие значения. Иное название этого понятия «ПК»; см. также другие значения. Эта статья обо всех видах ПК. О самой распространённой платформе см. IBM PC совместимый… … Википедия
  • Настольный персональный компьютер — Запрос «PC» перенаправляется сюда. Cм. также другие значения. Эта статья о всех видах персональных компьютеров, о самой распространённой платформе см.: IBM PC совместимый компьютер. Основные составные части персонального компьютера Персональный… … Википедия
  • ПЭВМ — Запрос «PC» перенаправляется сюда. Cм. также другие значения. Эта статья о всех видах персональных компьютеров, о самой распространённой платформе см.: IBM PC совместимый компьютер. Основные составные части персонального компьютера Персональный… … Википедия
  • Персональные компьютеры — Запрос «PC» перенаправляется сюда. Cм. также другие значения. Эта статья о всех видах персональных компьютеров, о самой распространённой платформе см.: IBM PC совместимый компьютер. Основные составные части персонального компьютера Персональный… … Википедия
  • Персональных компьютеров — Запрос «PC» перенаправляется сюда. Cм. также другие значения. Эта статья о всех видах персональных компьютеров, о самой распространённой платформе см.: IBM PC совместимый компьютер. Основные составные части персонального компьютера Персональный… … Википедия
  • Обратная связь: Техподдержка, Реклама на сайте
  • �� Путешествия

Экспорт словарей на сайты, сделанные на PHP,
WordPress, MODx.

  • Пометить текст и поделитьсяИскать в этом же словареИскать синонимы
  • Искать во всех словарях
  • Искать в переводах
  • Искать в ИнтернетеИскать в этой же категории

Сборка (программирование)

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

Сбо́рка (англ. build) (глагол) — процесс получения информационного продукта из исходного кода. Чаще всего включает компиляцию и компоновку, выполняется инструментами автоматизации (см. автоматизация сборки).

Сборка в терминологии .NET (англ. assembly) — двоичный файл (exe или dll), содержащий номер версии информационного продукта (ИП), метаданные и инструкции для виртуальной машины .NET. Файл с исходным кодом, написанном на любом языке поддерживаемой .NET платформой (C#, VB.NET. ), с помощью соответствующего компилятора (C# компилятора, VB.NET компилятора. ) компилируется в сборку. Номер версии ИП состоит из произвольной строки (например, «TheNewAssembly») и четырёх целых чисел (например, «1.35.6.2»): основной и дополнительный номера версии, номер сборки и номер редакции.

Связанные понятия

Модуль ядра, загружаемый модуль ядра (англ. loadable kernel module, LKM) — объект, содержащий код, который расширяет функциональность запущенного или т. н. базового ядра ОС. Большинство текущих систем, основанных на Unix, поддерживают загружаемые модули ядра, хотя они могут называться по-разному (например, kernel loadable module в FreeBSD и kernel extension в Mac OS X).

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

Библиотека среды выполнения (также библиотека времени исполнения; англ. runtime library, RTL) — набор библиотек (модулей) той или иной системы программирования, поставляемых вместе с компилятором, операционной системой или средой разработки программ. Как следует из названия, RTL обеспечивает поддержку функций, предоставляемых системой программирования, во время выполнения программы от начала до её завершения.

Установка программного обеспечения, инсталляция — процесс установки программного обеспечения на компьютер конечного пользователя. Выполняется особой программой (пакетным менеджером), присутствующей в операционной системе (например, RPM, APT или dpkg в Linux, Установщик Windows в Microsoft Windows), или же входящим в состав самого программного обеспечения средством установки. В операционной системе GNU очень распространено использование системы GNU toolchain и её аналогов для компиляции программного.

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

Упоминания в литературе

• about: – выводит справку о версии, ядре и номере сборки браузера, а также информацию об авторских правах;

Составляющие компьютера, его сборка, установка и настройка операционной системы Microsoft Windows Vista, использование прикладных программ – обо всем этом подробно рассказывается в данной книге.

ATP (AppleTalk Transaction Protocol) – один из протоколов транспортного уровня, который отвечает за транзакции. Транзакция – это набор из запроса, ответа на этот запрос и идентификационного номера, который присваивается данному набору. Примером транзакции может быть сообщение о доставке данных от одного компьютера другому. Кроме того, АТР умеет делать разбивку больших пакетов на более мелкие с последующей их сборкой после подтверждения о приеме или доставке.

– Для профессиональных или специализированных целей (специализированный компьютер). В данном случае конфигурация зависит от профессиональных задач пользователя. Для монтажа и обработки видео потребуется большой и быстрый жесткий диск. Для дизайнера может быть необходим записывающий привод компакт-дисков, чтобы легко носить на работу или домой большие графические файлы или другие материалы. Профессионалу, который занимается на компьютере обработкой звука, не обойтись без хорошей звуковой системы. Специализированный компьютер, как правило, может использоваться как офисный, однако не всегда способен выполнять функции домашнего. Это связано с тем, что при его сборке внимание уделяется только тем компонентам, которые необходимы для выполнения специализированной работы. При этом другие компоненты, необходимые для домашнего компьютера, могут быть из низшей ценовой категории, и их возможностей будет недостаточно для традиционных домашних развлечений.

От модели чипсета зависят все основные характеристики платы: поддерживаемые типы процессоров и памяти, системной шины, портов для подключения внешних и внутренних устройств и различные дополнительные возможности (например, наличие интегрированного звука или графического ядра). Современные чипсеты включают в себя множество различных встроенных контроллеров (контроллер для подключения жесткого диска, контроллер шины USB и портов ввода и вывода и др.), что удешевляет компьютер и облегчает его сборку и использование. Иногда вообще можно обойтись без каких-либо плат расширения, так как все необходимое уже имеется в микросхемах системной логики.

Связанные понятия (продолжение)

Управля́емый код (англ. managed code) — термин, введённый фирмой Microsoft, для обозначения кода программы, исполняемой под «управлением» виртуальной машины .NET — Common Language Runtime или Mono. При этом машинный код называется неуправля́емым кодом (англ. unmanaged code).

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

Кросс-компиля́тор (англ. cross compiler) — компилятор, производящий исполняемый код для платформы, отличной от той, на которой исполняется сам кросс-компилятор. Такой инструмент бывает полезен, когда нужно получить код для платформы, экземпляров которой нет в наличии, или в случаях когда компиляция на целевой платформе невозможна или нецелесообразна (например, это касается мобильных систем или микроконтроллеров с минимальным объёмом памяти).

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

О типе данных в БД см. BLOB.Блоб (от англ. binary linked object — объект двоичной компоновки) — объектный файл без публично доступных исходных кодов, загружаемый в ядро операционной системы. Обычно этот термин применяется только по отношению к модулям, загружаемым в ядро свободной или открытой операционной системы; термин редко применяется по отношению к коду, выполняющемуся не в режиме ядра, например, код BIOS, микропрограммный код устройств, программы, выполняющиеся в пользовательском режиме.

О программном обеспечении рассказывает другая статья.Переносимое приложение (также портативное, автономное, и — неточно, в качестве кальки — портированное; англ. portable application, portable app) — программное обеспечение, которое для своего запуска не требует процедуры установки и может полностью храниться на съёмных носителях информации, что позволяет использовать данное ПО на многих компьютерах. Переносимое приложение может быть настроено так, чтобы считывать свои конфигурационные настройки.

Реда́ктор исхо́дного ко́да — текстовый редактор для создания и редактирования исходного кода программ. Он может быть отдельным приложением, или встроен в интегрированную среду разработки (IDE).

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

Аппле́т (англ. applet от application — приложение и -let — уменьшительный суффикс) — это несамостоятельный компонент программного обеспечения, работающий в контексте другого, полновесного приложения, предназначенный для одной узкой задачи и не имеющий ценности в отрыве от базового приложения.

Инструмента́льное програ́ммное обеспе́чение — программное обеспечение, предназначенное для использования в ходе проектирования, разработки и сопровождения программ, в отличие от прикладного и системного программного обеспечения.

Обёртка библиотеки (англ. wrapper) является промежуточным слоем между прикладной программой и другой библиотекой или интерфейсом программирования приложений (API).

В Unix-подобных операционных системах пользователи идентифицируются идентификаторами пользователя (англ. User identifier, UID).

Двои́чная совмести́мость, бина́рная совмести́мость (англ. binary compatibility) — вид программной совместимости, позволяющий программе работать в различных средах без изменения её исполняемых файлов.

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

Пакет обновления (англ. — service pack, сок. — SP) — набор обновлений, исправлений, улучшений компьютерной программы или ОС, поставляемый в виде единого установочного пакета. Многие компании, как например, Microsoft или Autodesk, обычно выпускают пакет обновлений тогда, когда число отдельных патчей для конкретной программы достигает некоторого предела. Установка пакета обновления проще и поэтому требует меньше обращений за технической поддержкой в компанию, чем установка по отдельности большого количества.

Конфигурация программного обеспечения — совокупность настроек программы, задаваемая пользователем, а также процесс изменения этих настроек в соответствии с нуждами пользователя.

Сетевая операционная система — термин, относящийся к двум различным концепциям.

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

Монтирование файловой системы — системный процесс, подготавливающий раздел диска к использованию операционной системой.

Пользовательское пространство — адресное пространство виртуальной памяти операционной системы, отводимое для пользовательских программ, в отличие от пространства ядра, которое резервируется для работы ядра операционной системы, его расширений и, возможно, некоторых драйверов устройств. В англоязычной компьютерной литературе термин «Userland» часто используется для обозначения совокупности приложений, которые выполняются в пространстве пользователя.

Hardware Abstraction Layer (HAL, Слой аппаратных абстракций) — слой абстрагирования, реализованный в программном обеспечении, находящийся между физическим уровнем аппаратного обеспечения и программным обеспечением, запускаемом на этом компьютере. HAL предназначен для скрытия различий в аппаратном обеспечении от основной части ядра операционной системы, таким образом, чтобы большая часть кода, работающая в режиме ядра, не нуждалась в изменении при её запуске на системах с различным аппаратным обеспечением.

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

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

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

Эмулятор терминала, приложение терминала, term или tty для краткости — это программа, которая эмулирует терминал компьютера внутри некоторой другой архитектуры вывода данных на экран.

Мидлет (англ. MIDlet, от англ. MID «Mobile Information Device» и англ. -let «нечто маленькое») — приложение для профиля MIDP платформы Java ME. Примером мидлетов являются игры для мобильных телефонов. Приложения MIDP названы «мидлетами» по аналогии с терминами «апплет» и «сервлет».

DLL (англ. Dynamic Link Library — «библиотека динамической компоновки», «динамически подключаемая библиотека») в операционных системах Microsoft Windows и IBM OS/2 — динамическая библиотека, позволяющая многократное использование различными программными приложениями. Эти библиотеки обычно имеют расширение DLL, OCX (для библиотек содержащих ActiveX), или DRV (для ряда системных драйверов). Формат файлов для DLL такой же, как для EXE-файлов Windows, т. е. Portable Executable (PE) для 32-битных и 64-битных.

Развёртывание программного обеспечения (Развёртывание ПО, англ. Software deployment) — это все действия, которые делают программную систему готовой к использованию. Данный процесс является частью жизненного цикла программного обеспечения.

Подсистема хранения (англ. database engine, storage engine) — компонент СУБД, управляющий механизмами хранения баз данных, или библиотека, подключаемая к программам и дающая им функции СУБД.

Механизм копирования при записи (англ. Copy-On-Write, COW) используется для оптимизации многих процессов, происходящих в операционной системе, таких как, например, работа с оперативной памятью или файлами на диске (пример — ext3cow).

Дамп памяти (англ. memory dump; в Unix — core dump) — содержимое рабочей памяти одного процесса, ядра или всей операционной системы. Также может включать дополнительную информацию о состоянии программы или системы, например значения регистров процессора и содержимое стека. Многие операционные системы позволяют сохранять дамп памяти для отладки программы. Как правило, дамп памяти процесса сохраняется автоматически, когда процесс завершается из-за критической ошибки (например, из-за ошибки сегментации.

Переменная среды́ (англ. environment variable) — текстовая переменная операционной системы, хранящая какую-либо информацию — например, данные о настройках системы.

Пакетный файл (англ. batch file) — текстовый файл в MS-DOS, OS/2 или Windows, содержащий последовательность команд, предназначенных для исполнения командным интерпретатором. После запуска пакетного файла программа-интерпретатор (как правило, COMMAND.COM или cmd.exe) читает его строка за строкой и последовательно исполняет команды. Пакетный файл — аналог скриптовых файлов командной строки (shell script) в Unix-подобных операционных системах.

Среда выполнения (англ. execution environment, иногда «ранта́йм» от англ. runtime — «время выполнения») в информатике — вычислительное окружение, необходимое для выполнения компьютерной программы и доступное во время выполнения компьютерной программы. В среде выполнения, как правило, невозможно изменение исходного текста программы, но может наличествовать доступ к переменным окружения операционной системы, таблицам объектов и модулей разделяемых библиотек.

Дизассе́мблер (от англ. disassembler ) — транслятор, преобразующий машинный код, объектный файл или библиотечные модули в текст программы на языке ассемблера.

Каркас веб-приложений (Web application framework, WAF) — это каркас, предназначенный для создания динамических веб-сайтов, сетевых приложений, сервисов или ресурсов. Он упрощает разработку и избавляет от необходимости написания рутинного кода. Многие каркасы упрощают доступ к базам данных, разработку интерфейса, и также уменьшают дублирование кода.

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

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

Региональный стандарт, региональные настройки (проф. жарг. лока́ль от англ. locale, /lɔ.kal/ или /ləuˈkɑ:l/) — набор параметров, определяющий региональные настройки пользовательского интерфейса, такие как язык, страна, часовой пояс, набор символов и т. п.

Снимок файловой системы, или снапшот, или снепшот (от англ. snapshot — мгновенный снимок), — моментальный снимок, копия файлов и каталогов файловой системы на определённый момент времени.

Блочное устройство (block device) — вид файла устройств в UNIX/Linux-системах, обеспечивающий интерфейс к устройству, реальному или виртуальному, в виде файла в файловой системе.

Основная область памяти (Основная память, англ. Conventional memory) занимает первые 640 Кбайт оперативной памяти в IBM PC-совместимых компьютерах. В эту область загружается таблица векторов прерываний (занимает 1 Кбайт), некоторые данные из BIOS (например, буфер клавиатуры), различные 16-битные программы DOS. Для них 640 Кбайт являются барьером.

Динамический сайт — сайт, состоящий из динамичных страниц — шаблонов, контента, скриптов и прочего, в большинстве случаев в виде отдельных файлов (в Lotus Notes/Domino данные и все элементы дизайна, включая пользовательские скрипты, хранятся в одном файле).

Точка монтирования (англ. mount point) — это каталог или файл, с помощью которого обеспечивается доступ к новой файловой системе, каталогу или файлу.

Расширение браузера — компьютерная программа, которая в некотором роде расширяет функциональные возможности браузера. В зависимости от браузера, термин может отличаться от условленных обозначений, к примеру, plug-in (плагин), add-on (дополнение) или extension (расширение). Mozilla Firefox был разработан с целью создания маленького и простого в использовании веб-браузера, который расширялся бы за счёт продвинутых функций расширений. Microsoft Internet Explorer начал поддерживать расширения начиная.

Упоминания в литературе (продолжение)

Еще одно отличие чипов CX2584x от семейства CX2388x – отсутствие интегрированного моста шины PCI, что, с одной стороны, расширяет сферу применения этих чипов, а с другой – усложняет сборку обычных PCI-ТВ-тюнеров. Как правило, эти чипы можно встретить в моделях с интерфейсом USB2.0 – тюнерах, где за передачу данных отвечает дополнительный контроллер.

• Инструменты Slice (Сегмент) и Slice Select (Выбор сегмента) применяются при работе с веб-графикой для разделения изображения на отдельные части с последующей «сборкой» прямо на веб-странице.

• Добавить в список «Проигрывается». Данную команду используют, если необходимо составить сборку из произведений, находящихся в различных списках. Для этого щелкните мышью на кнопке Библиотека, расположенной на Панели задач, и выберите необходимый список.

3. Выберите параметры отображения объектов в окнах проекции. Выберите в меню Views (Виды) команду Viewport Configuration (Конфигурация окон проекции). В появившемся диалоговом окне перейдите на вкладку Rendering Method (Метод визуализации). В области Rendering Options (Параметры визуализации) установите флажки Texture Correction (Коррекция текстуры) для включения режима коррекции изображения текстур в окнах проекции, Force 2-Sided (Показывать обе стороны) для демонстрации поверхности граней вне зависимости от направления нормалей, Default Lighting (Исходное освещение) для использования встроенных осветителей. Расположенный ниже переключатель установите в положение 2 Lights (2 источника) (рис. 2.29). По умолчанию в сцене без внешнего освещения используется один встроенный источник света, но с двумя сцена смотрится более яркой (см. главу 5 «Сборка интерьера и визуализация сцен»). Значения остальных параметров можно оставить без изменений. Щелкните на кнопке OK. Кроме того, в этом окне можно настроить вид, размер, прозрачность и отображение новых инструментов 3ds Max 2009 View Cube (Видовой куб) и Steering Wheels (Штурвал). Достаточно перейти на соответствующие вкаладки.

Обрыв печатных проводников – достаточно распространенная ситуация, особенно если сборкой или модернизацией компьютера занимается начинающий пользователь. В стремлении сделать все быстрее он забывает об элементарных правилах. Такое нетерпение можно понять, но не менее понятным является и результат этого нетерпения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *