Назначение буквы диска - Drive letter assignment

MS-DOS командная строка с буквой диска C в рамках текущего рабочий каталог.
Файловый менеджер отображение содержимого диска C.

В компьютерное хранилище данных, присвоение буквы диска это процесс присвоения алфавитных идентификаторов тома. В отличие от концепции Точки монтирования UNIX, где тома названы и расположены произвольно в едином иерархическом пространстве имен, присвоение букв дисков позволяет использовать несколько пространств имен самого высокого уровня. Таким образом, присвоение букв дискам - это процесс использования букв для именования корней «леса», представляющего файловую систему; каждый том содержит независимое «дерево» (или, для неиерархических файловых систем, независимый список файлов).

Источник

Концепция букв дисков, используемая сегодня, предположительно[нужна цитата ] обязан своим происхождением IBM с ВМ семейство операционных систем, восходящих к CP / CMS в 1967 г. (и его исследовательский предшественник CP-40 ), посредством Цифровые исследования (DRI) CP / M. Концепция развивалась в несколько этапов:

  • CP / CMS использует буквы дисков для идентификации минидиски прикреплен к сеансу пользователя.[1] Полная ссылка на файл (путь на современном языке) состоит из имя файла, а тип файла, а буква диска называется файловый режим (например. А или же B). Минидиски могут соответствовать физическим дискам, но чаще относятся к логическим дискам, которые автоматически сопоставляются с общими устройствами операционной системой как наборы виртуальные цилиндры.
  • CP / CMS вдохновил множество других операционных систем, включая операционную систему микрокомпьютера CP / M, которая использует букву диска для указания физического устройства хранения. Ранние версии CP / M (и других операционных систем микрокомпьютера) реализовали плоская файловая система на каждом диске, где полная ссылка на файл состоит из буква диска, двоеточие, имя файла (вплоть до восемь персонажей ) и тип файла (три символа); например A: README.TXT. (Это была эпоха 8-дюймовые дискеты, где такие небольшие пространства имен не налагают практических ограничений.) На это использование повлияли префиксы устройств, используемые в Корпорация цифрового оборудования (DEC) ТОП-10 Операционная система.[2]
  • Синтаксис буквы диска, выбранный для CP / M, унаследован Microsoft для своей операционной системы MS-DOS посредством Сиэтл Компьютерные продукты '(SCP) 86-ДОС, а значит, и OEM-версия IBM ПК DOS. Первоначально буквы дисков всегда представляли физические тома, но поддержка логические тома в итоге появился.
  • Благодаря своей позиции преемника DOS, концепция букв дисков была унаследована OS / 2 и Майкрософт Виндоус семья.

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

Операционные системы, использующие присвоение букв дисков

Буквы дисков на Nokia Серии 40

Порядок присвоения

MS-DOS / PC DOS, начиная с версии 5.0 и более поздних операционных систем, назначает буквы дисков в соответствии со следующим алгоритмом:

  1. Назначьте букву диска А: к первому дисковод для гибких дисков (диск 0) и B: ко второму дисководу гибких дисков (дисковод 1). Если имеется только одна физическая дискета, B: будет назначен фантомному дисководу гибких дисков, сопоставленному с тем же физическим дисководом и динамически назначенному либо A:, либо B: для упрощения операций с файлами гибких дисков. Если физического дисковода гибких дисков нет, DOS 4.0 назначит оба А: и B: на несуществующий диск, тогда как DOS 5.0 и выше аннулирует эти буквы дисков. Если присутствует более двух физических дисководов гибких дисков, версии DOS до 5.0 будут назначать последующие буквы дисков, тогда как DOS 5.0 и выше переназначит эти диски на более высокие буквы дисков на более позднем этапе; Смотри ниже.
  2. Назначьте букву диска первому активному основному устройству раздел признан после первого физического жесткий диск. DOS 5.0 и выше гарантирует, что он станет приводом C:, так что на загрузочном диске будет либо диск А: или же C:.
  3. Назначьте последующие буквы дисков первому первичному разделу на каждом последующем физическом жестком диске (версии DOS до 5.0 будут проверять только два физических жестких диска, тогда как DOS 5.0 и выше поддерживает восемь физических жестких дисков).
  4. Назначьте последующие буквы дисков каждому распознанному логическому разделу, присутствующему в первом расширенном разделе, начиная с первого жесткого диска и продолжая через последовательные физические жесткие диски.
  5. DOS 5.0 и выше: присвойте буквы дисков всем оставшимся основным разделам, начиная с первого жесткого диска и заканчивая последовательными физическими жесткими дисками.
  6. DOS 5.0 и выше: назначайте буквы дисков всем физическим дисководам, кроме второго физического дисковода.
  7. Назначьте последующие буквы дисков любым драйверам блочных устройств, загруженным в CONFIG.SYS через Заявления DEVICE, например RAM-диски.
  8. Назначьте последующие буквы дисков любым динамически загружаемым дискам через CONFIG.SYS УСТАНОВИТЬ заявления, в AUTOEXEC.BAT или позже, т.е. дополнительные приводы оптических дисков (MSCDEX так далее.), PCMCIA / Карта ПК накопители, накопители USB или Firewire, или сетевые диски.
  • Только разделы признанных типы разделов присваиваются буквы. В частности, «скрытые разделы» (те, у которых идентификатор типа изменен на нераспознанное значение, обычно путем добавления 10ч) не.

MS-DOS / PC DOS версии 4.0 и более ранние присваивают буквы всем дисководам гибких дисков, прежде чем рассматривать жесткие диски, поэтому система с четырьмя дисководами гибких дисков будет вызывать первый жесткий диск. E:. Начиная с DOS 5.0, система гарантирует, что диск C: всегда является жестким диском, даже если в системе более двух физических дисководов для гибких дисков.

Хотя без намеренного переназначения, буквы дисков обычно фиксируются до следующей перезагрузки, однако, Зенит MS-DOS 3.21 обновит присвоенные ему буквы при перезагрузке диска. Это может привести к изменению букв дисков без перезагрузки, если разделение жесткого диска было изменено.

MS-DOS на Абрикосовый ПК присваивает жестким дискам буквы, начиная с А:, прежде чем рассматривать флоппи-дисководы. Система с двумя дисками каждого типа будет называть жесткие диски А: и B:, и дискеты C: и D:.

В некоторых версиях DOS буква диска не назначается, начиная с C:, в первый активный первичный раздел, распознанный на первом физическом жестком диске, но в первый первичный раздел, распознанный на первом жестком диске, даже если он не установлен активным.

Если в таблице разделов более одного расширенного раздела, обрабатываются только логические диски в первом распознанном типе расширенного раздела.

Некоторые поздние версии DR-DOS IBMBIO.COM предоставляют структуру конфигурации предварительной загрузки, содержащую битовые флаги для выбора (помимо других) между различными стратегиями назначения букв дисков. Эти стратегии могут быть предварительно выбраны пользователем или изготовителем оборудования или изменены загрузчиком на лету при запуске DR-DOS. В этих условиях загрузочный диск может отличаться от А: или же C: также.

Порядок букв дисков может зависеть от того, управляется ли данный диск драйвером времени загрузки или динамически загружаемым драйвером. Например, если второй или третий жесткий диск относится к типу SCSI и в DOS требуются драйверы, загружаемые через CONFIG.SYS (например, карта контроллера не имеет встроенного BIOS или использование этого BIOS нецелесообразно), то первый первичный раздел SCSI появится после всех разделов IDE в DOS. Следовательно, DOS и, например, OS / 2 могут иметь разные буквы дисков, поскольку OS / 2 загружает драйвер SCSI раньше. Решением было не использовать на таких жестких дисках первичные разделы.

В Windows NT и OS / 2, операционная система использует вышеупомянутый алгоритм для автоматического присвоения букв дисководы для гибких дисков, приводы оптических дисков, то Загрузочный диск, и другие признанные тома, которые не созданы иным образом администратор в операционной системе. Тома, которые создаются в операционной системе, указываются вручную, и некоторые из автоматических букв дисков могут быть изменены. Неопознанным томам не присваиваются буквы, и операционная система обычно их не затрагивает.

Распространенная проблема, которая возникает при назначении буквы диска, заключается в том, что буква, назначенная сетевому диску, может мешать букве диска местный объем (например, недавно установленный привод CD / DVD или USB-накопитель). Например, если последний локальный диск - это диск D: и сетевой диск был бы назначен как E:, то новому подключенному запоминающему устройству USB также будет назначен диск E: что приводит к потере связи с общим сетевым ресурсом или USB-устройством. Пользователи с административными привилегиями могут назначать буквы дисков вручную, чтобы решить эту проблему.[5]Другое состояние, которое может вызвать проблемы Windows XP это когда сетевые диски определены, но находятся в состоянии ошибки (как если бы они были на портативном компьютере, работающем вне сети). Даже если неподключенный сетевой диск не является следующей доступной буквой диска, Windows XP может быть не в состоянии подключить диск, и эта ошибка также может помешать подключению USB-устройства.[нужна цитата ]

Общие задания

Применение схемы, описанной выше, в довольно современной системе на базе Windows обычно приводит к присвоению следующих букв дискам:

  • А:Дисководы гибких дисков, ​3 12″ Или5 14″ И, возможно, дисководы других типов, если они есть.
  • B: - Зарезервировано для второго дисковода гибких дисков (который был на многих ПК).
  • C: - Первый жесткий диск раздел.
  • D: к Z: - Здесь помечаются другие разделы диска. Windows присваивает следующую свободную букву диска следующему обнаруженному диску при перечислении дисков в системе. Диски можно разбивать на разделы, тем самым создавая больше букв дисков. Это относится к MS-DOS, а также ко всем операционным системам Windows. Windows предлагает другие способы изменения букв дисков: через оснастку «Управление дисками» или diskpart. MS-DOS обычно использует параметры в строке драйверов устройств загрузки внутри CONFIG.SYS файл.

Буквы дисков в зависимости от регистра:

  • F: - Первый сетевой диск при использовании Novell NetWare.
  • ГРАММ: - "Google Drive File Stream" при использовании Гугл Диск.
  • ЧАС: - «Домашний» каталог на сетевом сервере.
  • L: - Динамически назначается загрузочный привод под Concurrent DOS, Multiuser DOS, System Manager и REAL / 32.[6][7]
  • М: - Буква диска для опционально накопитель памяти MDISK под Concurrent DOS.[6]
  • N:, О:, П: - Назначаемый плавающие приводы под CP / M-86 4.x, Personal CP / M-86 2.x, DOS Plus 1.1–2.1 (через вызов BDOS 0Fh), концепция позже была расширена для любых неиспользуемых букв дисков в Concurrent DOS, Multiuser DOS, System Manager, REAL / 32 и DR DOS до 6.0.[6][7]
  • Вопрос: - Виртуализация Microsoft Office "нажми и работай".
  • U: - Unix-подобный единая файловая система с виртуальным каталогом DEV за файлы устройства под МИНТ, MagiC, и MultiTOS.[8][9]
  • Z: - Первый сетевой диск при использовании Баньян Вайнс, и начальная буква диска для сети виртуальных дисков в DOSBox x86 эмулятор. Это также первая буква, выбранная Windows для сетевых ресурсов, поскольку она автоматически выбирается из Z: вниз. По умолчанию, Вино карты Z: в корень дерева каталогов UNIX.[10]

Когда нет второго физического дисковода гибких дисков, B: может использоваться как «виртуальный» дисковод гибких дисков, подключенный к физическому дисководу А:, при этом пользователю будет предлагаться переключать дискеты каждый раз, когда требовалось чтение или запись, в зависимости от того, какая из них использовалась наименее недавно. А: или же B:. Это обеспечивает большую часть функций двух дисководов гибких дисков на компьютере, у которого есть только один. Эта концепция нескольких букв дисков, совместно использующих одно физическое устройство (необязательно с разными «представлениями» о нем), не ограничивается первым дисководом гибких дисков, но может быть использована и для других дисков, установив для них дополнительные блочные устройства с помощью стандартного ДОС DRIVER.SYS в CONFIG.SYS.

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

В большинстве систем DOS невозможно установить более 26 дисков. Atari GEMDOS поддерживает 16 букв дисков А: к П: Только. Стек драйверов PalmDOS PCMCIA поддерживает буквы дисков. 0:, 1:, 2:, ... для адресации слотов дисков PCMCIA.

Некоторые сетевые драйверы Novell для DOS поддерживают до 32 букв дисков в совместимых версиях DOS. Кроме того, Novell DOS 7, OpenDOS 7.01 и DR-DOS 7.02 действительно поддерживают файл CONFIG.SYS. LASTDRIVE =32 директива для выделения до 32 букв дисков с именем А: к Z:, [:, \:, ]:, ^:, _: и `:. (DR-DOS 7.02-7.07 также поддерживает HILASTDRIVE и LASTDRIVEHIGH директивы для перемещения структур дисков в верхнюю память.) Некоторые прикладные программы DOS не ожидают букв дисков за пределами Z: и работать с ними не будет, поэтому рекомендуется использовать их для специальных целей или для поисковых дисков.

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

В Windows 9x (MS-DOS 7.0 / MS-DOS 7.1) добавлена ​​поддержка LASTDRIVE = 32 и LASTDRIVEHIGH = 32 также.

Если доступ к большему количеству файловых систем, чем Z: требуется под Windows NT, Точки монтирования тома должны быть использованы.[11] Однако можно монтировать небуквенные диски, например 1:, 2:, или же !: используя командную строку SUBST утилита в Windows XP или более поздней версии (т.е. ПОДСТАВКА 1: C: TEMP), но официально не поддерживается и может нарушить работу программ, которые предполагают, что все диски буквенные. А: к Z:.

ASSIGN, JOIN и SUBST в DOS и Windows

Буквы дисков - не единственный способ доступа к разным томам. ДОС предлагает ПРИСОЕДИНИТЬСЯ команда, которая позволяет получить доступ к назначенному тому через произвольный каталог, аналогично Unix устанавливать команда. Он также предлагает SUBST команда, которая позволяет назначить букву диска каталогу. Одна или обе эти команды были удалены в более поздних системах, например OS / 2 или же Windows NT, но начиная с Windows 2000, обе снова поддерживаются: команда SUBST существует по-прежнему, а функции JOIN включены в LINKD (часть Windows Набор ресурсов ). В Виндоус виста, новая команда MKLINK можно использовать для этой цели. Кроме того, Windows 2000 и более поздние версии поддерживают точки монтирования, доступные из Панель управления.

Многие операционные системы, разработанные Digital Research, предоставляют средства для неявного назначения заменяющих дисков, называемых плавающие приводы в терминологии DRI, используя команду CD / CHDIR в следующем синтаксисе:

CD N: = C:  SUBDIR

DOS Plus поддерживает это для букв дисков N:, О:, и П:. Эта функция также присутствует в Параллельная DOS, Многопользовательская DOS, System Manager 7 и РЕАЛЬНЫЙ / 32 Однако в этих системах концепция распространяется на все неиспользуемые буквы дисков от A: до Z:, за исключением зарезервированной буквы L :.[7] DR DOS 3.31–6.0 (до обновлений 1992-11 годов только с BDOS 6.7) также поддерживает это, включая букву диска L :. Эта функция недоступна в DR DOS 6.0 (обновление 1992 г.), PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, DR-DOS 7.02 и выше. Плавающие диски реализованы в ядре BDOS, а не в оболочке командной строки, поэтому их можно использовать и назначать также из приложений, когда они используют системный вызов «изменить каталог». Однако большинство приложений DOS не знают об этом расширении и, следовательно, отбрасывают такие пути к каталогам как недопустимые. Интерпретатор командной строки 4DOS от JP Software поддерживает плавающие диски в операционных системах, также поддерживающих его.

В аналогичной функции Concurrent DOS, Multiuser DOS, System Manager и REAL / 32 динамически назначают букву диска. L: в путь загрузки загруженного приложения, что позволяет приложениям обращаться к файлам, находящимся в их каталоге загрузки, под стандартной буквой диска, а не с абсолютным путем.[7] Этот загрузочный привод Эта функция упрощает перенос установок программного обеспечения на диски и между ними без необходимости адаптировать пути к наложениям, файлам конфигурации или пользовательским данным, хранящимся в каталоге загрузки или последующих каталогах (по аналогичным причинам добавление к блоку среды, связанное с загруженными приложениями в DOS 3.0 (и выше) также содержит ссылку на путь загрузки исполняемого файла, однако это потребляет больше резидентной памяти, и чтобы воспользоваться этим, поддержка для нее должна быть закодирована в исполняемый файл, тогда как решение DRI работает с любыми типа приложений и также полностью прозрачен для пользователей.) В некоторых версиях DR-DOS путь загрузки, содержащийся в дополнении к среде, передаваемой драйверам, может быть сокращен до временного замещающего диска (например, ПОДСТАВКА B: C: DIR) сквозь УСТАНОВИТЬ [ВЫСОКИЙ]/НАГРУЗКА ВЫСОКАЯ вариант / D [: loaddrive] (за B: TSR.COM вместо, скажем, C: DIR TSR.COM). Это можно использовать для минимизации эффективного использования памяти драйвером, если исполняемый файл находится в глубоком подкаталоге и резидентному драйверу больше не нужен путь загрузки после установки.[12][13][14][15]

Смотрите также

Рекомендации

  1. ^ Дюшарм, Боб (2001). «ВМ / CMS» (PDF). Справочник по операционной системе, или «Подделайте свой путь через мини- и мэйнфреймы».
  2. ^ Джонсон, Герберт Р. (2009-01-04). «История CP / M и Digital Research Inc. (DRI)». www.retrotechnology.com. Получено 2009-01-28.
  3. ^ «ГЕОС».
  4. ^ «DexOS». Архивировано из оригинал на 2016-03-03. Получено 2012-02-24.
  5. ^ "Изменить букву диска". Microsoft. Получено 2019-03-04.
  6. ^ а б c Concurrent DOS 386 - Многопользовательская / многозадачная операционная система - Руководство пользователя (PDF). Цифровые исследования.
  7. ^ а б c d Concurrent DOS 386 - Многопользовательская / многозадачная операционная система - Справочное руководство (PDF). Цифровые исследования. 1987.
  8. ^ «Диск U: в MagiC». 2016-03-28. В архиве из оригинала на 2017-01-15. Получено 2017-01-09.
  9. ^ «FreeMiNT-Portal - mint.doc». 2000-04-27. В архиве из оригинала на 2017-01-15. Получено 2017-01-09.
  10. ^ "Винный FAQ".
  11. ^ "(неизвестный)". Microsoft TechNet. Архивировано из оригинал на 2007-03-26. Получено 2006-12-01. Cite использует общий заголовок (помощь)
  12. ^ Пол, Маттиас Р. (1997-10-02). "Caldera OpenDOS 7.01 / 7.02 Обновление Alpha 3 IBMBIO.COM README.TXT". Архивировано из оригинал на 2003-10-04. Получено 2009-03-29. [1]
  13. ^ Пол, Матиас Р. (1997-07-30). «II.11.iii. Внутренние команды и параметры COMMAND.COM - Hinweise zu internen Kommandos». NWDOS-TIPs - Советы и приемы для Novell DOS 7, с подробностями, исправлениями и обходными путями Blick auf undokumentierte. MPDOSTIP. Выпуск 157 (на немецком языке) (3-е изд.). В архиве из оригинала от 04.11.2016. Получено 2014-08-06. (NB. NWDOSTIP.TXT - это комплексная работа над Novell DOS 7 и OpenDOS 7.01, включая описание многих недокументированных функций и внутренних компонентов. Это часть еще большего авторского MPDOSTIP.ZIP Коллекция сохранялась до 2001 г. и распространялась на многих сайтах того времени. Приведенная ссылка указывает на старую версию HTML-конвертированного NWDOSTIP.TXT файл.)
  14. ^ Пол, Маттиас Р. (1997-05-27) [1996]. «SETENV v1.11». Архивировано из оригинал на 2009-02-15. Получено 2019-07-29.
  15. ^ Пол, Маттиас Р. (2002-10-07). "Re: запустить COM-файл". alt.msdos.programmer. В архиве из оригинала от 03.09.2017. Получено 2017-09-03. [2]

внешняя ссылка