Командный процессор это кратко

Обновлено: 02.07.2024

Командный процессор выполняет командный файл AUTOEXEC. BAT, если этот файл имеется в корневом каталоге диска, с которого загружается операционная система. BAT указывают команды и программы, выполняемые при каждом запуске компьютера. [1]

Командный процессор ( КП) осуществляет взаимодействие пользователя с ПК. Он является файлом DOS и имеет имя Command. Взаимодействие организуется при помощи команд. Команды бывают двух типов: внутренние и внешние. [2]

Командный процессор - часть операционной системы, обрабатывающая команды, вводимые с терминала или из командного файла, и запускающая задачи для их выполнения. [3]

Командный процессор выполняет командный файл AUTOEXEC. BAT, если этот файл имеется в корневом каталоге диска, с которого загружается операционная система. BAT указывают команды и программы, выполняемые при каждом запуске компьютера. [4]

Командный процессор DOS обрабатывает команды, вводимые пользователем. [6]

Командный процессор MS DOS обрабатывает команды, вводимые пользователем. Командный процессор находится в дисковом файле COMMAND. COM на диске, с которого загружается операционная система. [7]

Командный процессор ОС осуществляет загрузку готовых программ из файлов ОЗУ и их запуск по командам пользователя, поддерживая взаимодействие ОС с пользователями. В типовых ОС он позволяет создавать удобную операционную среду для конкретных пользователей. [8]

Командный процессор DOS обрабатывает команды, вводимые пользователем. COM, обычно он находится в корневом каталоге диска, с которого загружается DOS. Некоторые команды пользователя, например Type, Dir или Сору, командный процессор выполняет сам. Такие команды называются внутренними. Для выполнения остальных ( внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем и если находит ее, то загружает в память и передает ей управление. [9]

Командный процессор DOS обрабатывает команды, вводимые пользователем. Стандартный командный процессор MS DOS имеет имя COMMAND. COM, обычно он находится в корневом каталоге диска, с которого загружается DOS. Некоторые команды пользователя, например Type, Dir или Сору, командный процессор выполняет сам. Такие команды называются внутренними. Для выполнения остальных ( внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем и если находит ее, то загружает в память и передает ей управление. [10]

Командный процессор DOS обрабатывает команды, вводимые пользователем. Командный процессор находится в дисковом файле COMMAND. COM на диске, с которого загружается операционная система. Некоторые команды пользователя, например Type, Dir или Сору, командный процессор выполняет сам. Такие команды называются внутренними. Для выполнения остальных ( внешних) команд пользователя командный процессор ищет на дисках программу с соответствующим именем, и, если находит ее, то загружает в память и передает ей управление. [11]

Управление командным процессором осуществляется с клавиатуры компьютера. [12]

В командном процессоре имеется встроенный текстовый редактор, позволяющий производить несложную правку текста. [13]

Подпрограмма инициализации командного процессора обеспечивает удобную автоматическую настройку ПЭВМ на конкретного пользователя или задачу. Эта подпрограмма ищет на системном диске специальный командный файл автозапуска, и после его обнаружения командный процессор приступает к его обработке, не принимая команды с терминала. Это позволяет с помощью задания режима работы сразу погрузить пользователя в соответствующую командную среду без предварительных действий. [14]

Файл с командным процессором может занимать на системном диске любое место и трактуется как обычная программа. При загрузке в ОЗУ командный процессор распадается на две части в зависимости от расположения - резидентную и нерезидентную, располагаемую в старших адресах ОЗУ. [15]

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

В UNIX эту работу выполняет программа , которая называется командным процессором ( shell ). Иногда командный процессор называют шеллом (это – просто калька с английского) или интерпретатором команд (а это – неточно, потому что круг задач командного процессора шире, чем интерпретация команд).

Существует несколько широко распространенных командных процессоров и еще несколько малораспространенных, специфичных для конкретных вариантов UNIX . В Solaris принято использовать ksh , csh или bash .

Первый в мире UNIX командный интерпретатор в 1976 году написал Стив Баурн (Steve Bourne), когда он работал в Bell Laboratories в AT&T. ( По другим данным, Стив написал его в 1974 году.) Через некоторое время в University of California Berkeley был написан C- shell ( csh , произносится " си шелл"), а потом число разных командных процессоров стало быстро расти. Самыми популярные из них сейчас – это Bourne again shell ( bash ), разработанный в рамках проекта GNU и Korn shell ( ksh ) Дэвида Корна (David Korn).

С- shell был разработан студентом Университета в Беркли (University of California Berkeley) Биллом Джоем ( Bill Joy), который по окончании Berkeley основал компанию Sun Microsystems . Еще Билл Джой написал самый известный в UNIX редактор vi и был одним из авторов первой версии BSD UNIX .

В конце 1970-х годов был написан tcsh, расширение csh , совместимое с ним по командам, макроопределениям и синтаксису языка скриптов . Кен Грир (Ken Greer) начал работу над tcsh в Университете Карнеги-Мелон (Carnegie-Mellon University), а продолжил ее Пол Плэйсвэй (Paul Placeway) в восьмидесятые годы в Университете Огайо (Ohio State ). Основные отличия tcsh от csh сводятся к усовершенствованию редактирования командной строки и ряду дополнений в помощь создателям скриптов (например, переменные среды окружения, создаваемые только для чтения). В последних версиях UNIX csh обычно является символической ссылкой на tcsh, а оригинальный csh в поставку не включается, чтобы не шокировать пользователей пещерным уровнем редактирования командной строки .

В Solaris по умолчанию устанавливаются несколько командных процессоров , в том числе sh, csh , tcsh, bash и другие; командным процессором по умолчанию является sh.

Командный процессор призван выполнять в системе нижеперечисленные задачи:

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

Некоторые командные процессоры поддерживают не все эти функции (см. таблицу 12.2).

Запуск командного процессора

Командный процессор запускается либо при входе пользователя в систему (и в дальнейшем пользователь отдает команды в его командной строке), либо из какой-либо программы ( по команде пользователя). Частным случаем является запуск командного процессора из другого командного процессора . Например, вы работаете в sh и желаете получить более удобные средства редактирования командной строки ; для этого вызывается bash . Тогда вы просто набираете команду

и оказываетесь в среде свежезапущенного командного процессора bash . При этом обычно меняется вид приглашения командной строки .

Каждый командный процессор при запуске пытается выполнить свои стартовые файлы, вначале системные (общие для всех пользователей), а затем пользовательские. Общие лежат в /etc , индивидуальные – в домашнем каталоге пользователя . Если командный процессор запускается при входе пользователя в систему (в таком случе он называется login shell , дословно – командный процессор , запущенный при входе в систему ), то после стартовых файлов он выполняет еще и login -файлы в том же порядке: сначала общий login - файл из /etc , затем – индивидуальный, из домашнего каталога. Login -файлы – это тоже стартовые файлы командного процессора ; все стартовые файлы фактически представляют собой скрипты на языке командного процессора и служат для инициализации среды окружения командного процессора для конкретного пользователя. Настройка командного процессора для пользователя позволяет творить чудеса: задать короткие псевдонимы для длинных часто используемых команд и т.п.

Некоторые командные процессоры при входе в систему выполняют сначала login -файлы, а затем – стартовые файлы; это зависит от того, как они были скомпилированы.

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

Командный процессор bash , в отличие от других, использует более сложный алгоритм выполнения стартовых и login -файлов. Если он запущен как login shell , то выполняет /etc/ profile , если такой файл есть. Затем делается попытка выполнить ~/.bash_profile . Если такого файла нет, bash пытается выполнить файл ~/.bash_login , а если нет и такого файла, то выполняется ~/. profile . Если bash запущен не как login shell , то при старте он выполняет только файл ~/.bashrc . Если же bash был запущен как sh (т.е. 9sh является символьной ссылкой на bash ), то при старте он ведет себя так же, как и sh .

История команд

Все командные процессоры запоминают введенные пользователем команды (их список называется историей команд ). Во время сеанса работы командный процессор хранит историю команд в памяти, а по окончании работы записывает их в файл на диск . Файл истории команд хранится в домашнем каталоге пользователя . В sh, csh , tcsh он называется ~/. history , в bash – ~/.bash_history , в ksh – ~/.shhistory , а в бесплатной версии Korn Shell ( public domain Korn shell – pdksh) его по умолчанию нет вообще.

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

Существование файла истории команд может привести к уязвимости вашей системы. Имейте в виду, что по умолчанию он может быть доступен для чтения не только тому, кто вводил команды, но и другим пользователям. В этом случае следует избегать ввода каких бы то ни было паролей в командной строке . Например, возможно вызвать веб-обозреватель lynx или программу доступа к серверу баз данных mysql , указывая пароль в командной строке :

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

Файл истории команд ограничен по размеру. По умолчанию, bash хранит 500 команд, tcsh – 1000, csh – 100, sh – в зависимости от версии. Часто sh не создает файл . history вовсе и дает доступ только к командам, которые были введены в течение текущего сеанса работы с ним. Можно изменить число хранимых команд, указав иное значение переменной , в которой оно хранится.

Наряду с файловой системой DOS обеспечивает операционную среду для прикладных программ. Первый компонент DOS с которым сталкивается пользователь, - это командный процессор. Эта часть DOS берет на себя обработку вводимых пользователем команд и запуск прикладных программ.

В первый момент после включения питания "интеллектуальность" IBM PC невысока: возможно и имеется большой потенциал, но способностей хоть как-то реализовать его немного. В постоянной памяти ЭВМ хранятся программы тестирования компонентов системы - POST (Power=On Self=Test - самопроверка при включении) и установки в начальное состояние устройств ввода-вывода. Остальная часть записанной в ПЗУ базовой системы ввода-вывода BIOS (Basic Input Output System) предоставляет программисту, работающему с языком ассемблера, набор средств, которые помогают ему обращаться к аппаратным средствам, не беспокоясь о том, как технически они реализованы. Но этого не достаточно, чтобы обеспечить среду для выполнения серьезных прикладных программ.

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

Этот запрос содержит двоякий смысл. Символ ">" означает готовность командного процессора к приему команды. Префикс "A" указывает на выбранный по умолчанию дисковод с гибким диском. Так как DOS может обрабатывать файлы, расположенные только на каком-то одном диске, то в случае одновременной работы с несколькими дисками или дискетами пользователь должен указать, к какому из дисководов следует обратиться системе. В персональной ЭВМ дисководы обозначаются буквами латинского алфавита. У вычислительной системы с двумя накопителями на гибких дисках имеется дисковод A: и дисковод B:. Жесткий диск обычно обозначается C: (После наименования дисковода следует двоеточие.) Обычно файлы, используемые системой DOS, считываются с дисковода, выбранного системой по умолчанию, если только оператор не изменит этот порядок. Для того чтобы считать файл с выбранного по умолчанию дисковода, системе требуется только имя этого файла. Для считывания файла с любого другого дисковода нужно кроме имени файла указать DOS наименование дисковода.

Только в ответ на команды, которые поступают от пользователя DOS выполняет какие-то действия. Все команды, относящиеся к DOS, вводятся в ответ на запрос с ее стороны, индицируемый символом ">". Пользователь вводит имя нужной ему команды, после чего поступившая заявка обрабатывается командным процессором. Как он обрабатывает эту заявку, зависит от команды, которую ввел пользователь. Имеются встроенные, или резидентные команды, которые всегда доступны. Либо команда может инициировать нерезидентное, или транзитное выполнение. Для выполнения таких команд должен существовать определенный файл на диске.

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

Примером резидентной команды может служить команда DIR, которая выводит на дисплей справочник дискеты. На рис.5.2 показаны выходные данные, полученные в результате выполнения команды чтения каталога. Обратите внимание, что в справочнике дискеты для каждого записанного на ней файла уазываются его имя и тип, а также длина в байтах, дата и время его создания. Так как для загрузки любой программы DOS необходимо выполнить команду чтения каталога, то эта команда являеися встроенной.

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

Рассмотрим теперь пример вызова программы. Хорошей иллюстрацией здесь может служить ассемблер. Чтобы вызвать ассемблер, нужно ввести команду

Каталог дискеты содержит файл с именем ASM.EXE. Это и есть ассемблер. После ввода команды ASM, он просматривает дискету в дисководе A: (выбранном по умолчанию). Найдя файл с именем ASM.EXE, командный процессор загружает и передает управление ассемблеру. Теперь вычислительная система находится под управлением ассемблера. При благополучном завершении трансляции ассемблер вернет управление командному процессору. Заметьте, что файл, содержащий ассемблер - это файл типа .EXE, поэтому он может быть загружен командным процессором. Если ассемблер находится на дискете, установленной в дисководе A:, то пользователь может обратиться к другому дисководу следующим образом:

Префикс B: указывает DOS, что файл находится на дискете в дисководе B:. Файл полностью определяется не только указанием его имени, но и дисковода, с которого он будет считан. Одного имени файла достаточно только при считывании файла с дисковода, выбранного по умолчанию. Для того чтобы оттранслировать файл, расположенный на носителе в дисководе B: с помощью ассемблера, который находится на дискете в дисководе A:, нужно ввести следующую команду:

В этой команде одновременно задаются программы ASM, считываемые с дисковода, который выбран по умолчанию, и исходный файл FILE.ASM, считываемый с дисковода B:.

Это можно сделать и другим способом: задать команду B:, которая предписывает DOS сделать дисководом, выбираемым по умолчанию, дисковод B:.

A>B:
B>A:ASM FILE.ASM

Заметьте, что после этого запрос со стороны системы меняется на B>. Приведенная в этом примере команда по своему действию полностью идентична команде из предыдущего примера.

Командный процессор – это программа, функции которой заключаются в следующем:

— прием и синтаксический разбор команд, полученных с клавиатуры или из командного файла;

— исполнение внутренних команд операционной системы;

Таким образом, внешние команды ОС – это программы, поставляемые вместе с операционной системой в виде отдельных файлов.

В функции командного процессора входит также исполнение командных файлов (это текстовые файлы с набором команд и расширением ВАТ). Когда в качестве команды задается имя такого файла, командный процессор начинает последовательно читать и интерпретировать содержащиеся в нем строки, каждая из которых может содержать одну команду, метку или комментарий. Если в

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

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

Программное обеспечение подразделяется на 2 больших подгруппы

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

2. Прикладное ПО

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

В общем случае, различают оболочки с двумя типами интерфейса для взаимодействия с пользователем: интерфейс командной строки (CLI) и графический пользовательский интерфейс (GUI).

Для обеспечения интерфейса командной строки в ОС часто используются командные интерпретаторы, которые могут представлять собой самостоятельные языки программирования, с собственным синтаксисом и отличительными функциональными возможностями.

Графи?ческий интерфе?йс по?льзователя (ГИП), графический пользовательский интерфейс — разновидность пользовательского интерфейса, в котором элементы интерфейса (меню, кнопки, значки, списки и т. п.), представленные пользователю на дисплее, исполнены в виде графических изображений.

В отличие от интерфейса командной строки, в ГПИ пользователь имеет произвольный доступ (с помощью устройств ввода — клавиатуры, мыши, джойстика и т. п.) ко всем видимым экранным объектам (элементам интерфейса) и осуществляет непосредственное манипулирование ими. Чаще всего элементы интерфейса в ГУИ реализованы на основе метафор и отображают их назначение и свойства, что облегчает понимание и освоение программ неподготовленными пользователями.

Читайте также: