MS-DOS i tryb MS-DOS

MS-DOS (ang. Microsoft Disk Operating System) to system operacyjny stworzony przez firmę Microsoft na podstawie nabytego przez nią kodu

źródłowego systemu QDOS (ang. Quick and Dirty Operating System - napisany szybko i na brudno system operacyjny) stworzonego przez

Seattle Computers. Jest to wersja systemu operacyjnego DOS przeznaczona dla komputerów IBM-PC.

Choć MS-DOS sam w sobie jest środowiskiem tekstowym, rolę graficznej nakładki działającej na nim spełniać miał DOS Shell oraz wczesne

wersje systemu Microsoft Windows. Od rozwiązań Microsoftu bardziej popularny okazał się jednak Norton Commander – napisany poza firmą

Microsoft dosowy menedżer plików, korzystający z tzw. semigrafiki środowiska tekstowego DOS. Istniały także inne programy, np. 1dir, XTree.

Późniejsze wersje Windows (od 3.0 wzwyż w linii systemów 9x, kończącej się systemem Millennium Edition) stawały się coraz bardziej

samodzielnymi systemami operacyjnymi, tworząc odrębną własną platformę programistyczną. Jednak wszystkie systemy tej linii startowały

z poziomu DOS i były z nim zgodne w dół.

Firma Microsoft oficjalnie zaprzestała rozwoju MS-DOS jako samodzielnego systemu. Ostatnia samodzielna wersja nosi numer 6.22.

MS-DOS (oznaczony jako 7, 7.1 i 8.0) jest bazą, na której zbudowane były systemy Windows 9x/Millenium, stanowiąc ich integralną

część i dlatego nie był sprzedawany jako oddzielny produkt.

W 1993 roku, wraz z wydaniem systemu Microsoft Windows NT, Microsoft zrezygnował z używania MS-DOS jako podstawy systemów

operacyjnych z linii NT. Usunięcie systemu MS-DOS z Microsoft Windows było trudnym krokiem (szczególnie w wersjach systemu przeznaczonych

dla użytkowników końcowych), gdyż wiele istniejących programów, wśród nich wiele gier, było zaprojektowanych wyłącznie dla systemu DOS.

Dlatego Microsoft utrzymywał dwie linie systemów: Windows 9x / Windows Millenium oraz linię Windows NT. W Windows Millenium system

MS-DOS został ukryty przed użytkownikiem – bez odpowiednich modyfikacji nie istniała możliwość uruchomienia samego środowiska

tekstowego przy starcie systemu. Od wersji Microsoft Windows XP nie są już wydawane systemy bazujące na MS-DOS. Mimo braku MS-DOS

w nowszych systemach, nadal można korzystać z niektórych jego poleceń po uruchomieniu interpretera poleceń instrukcją cmd).

 

IO.SYS – jeden z dwóch ukrytych plików systemowych na dysku startowym komputera w systemach operacyjnych bazujących na systemie MS-DOS.

W różnych wersjach MS-DOS plik ten zawiera część oprogramowania stanowiącego jądro systemu operacyjnego odpowiedzialną za

urządzenia peryferyjnesterowniki monitora, klawiatury, napędu dyskietek, napędu dysku twardego, portu szeregowego, zegara czasu rzeczywistego.

W systemie PC-DOS produkcji IBM odpowiedni plik nosi nazwę IBMBIO.COM, takiej nazwy używa też DR-DOS.

W systemie Windows 95 i nowszych z tej rodziny do pliku IO.SYS przeniesiono całe dosowe jądro, zaś drugi z plików (MSDOS.SYS) jest tekstowym plikiem konfiguracyjnym.

 

MSDOS.SYS - jeden z dwóch ukrytych plików systemowych na dysku startowym w systemach operacyjnych bazujących na systemie MS-DOS.

W różnych wersjach MS-DOS plik ten zawiera część oprogramowania stanowiącego jądro systemu operacyjnego.

W systemie PC-DOS produkcji IBM odpowiedni plik nosi nazwę IBMDOS.COM, takiej nazwy używa też DR-DOS.

W systemie Windows 95 i nowszych z tej rodziny całe dosowe jądro przeniesiono do pliku IO.SYS, zaś plik MSDOS.SYS jest tekstowym plikiem konfiguracyjnym.

 

COMMAND.COM – domyślna powłoka (inaczej interpreter komend) systemu MS-DOS i niektórych wersji systemu Windows. Tłumaczy polecenia wpisane

po znaku zachęty (ang. prompt; zwykle w postaci "C:\>" lub "C>") na komendy wykonywalne przez system DOS.

Po wpisaniu przez użytkownika dowolnego ciągu znaków i naciśnięciu przycisku enter uruchamiany jest command.com. Zaczyna on interpretować wpisany ciąg,

sprawdzając czy jest to komenda wewnętrzna (np. CLS, TYPE, ECHO, PROMPT, IF, FOR), czy polecenie uruchomienia programu zewnętrznego

(np. FORMAT.COM, EDIT.COM). Pliki polecenia programu zewnętrznego są wyszukiwane w folderach opisanych zmienną środowiskową PATH,

opisaną w pliku autoexec.bat. Domyślnie podstawową ścieżką PATH jest katalog systemowy DOS lub WINDOWS. Gdy polecenie nie zostanie rozpoznane poprawnie,

command.com wyświetli komunikat "Bad command or file name" lub także "Nazwa '<tu wpisana nazwa>' nie jest rozpoznawana jako polecenie wewnętrzne

lub zewnętrzne, program wykonywalny lub plik wsadowy.".

Command może pracować w dwóch trybach – aktywnym (interakcyjnym) lub wsadowym. Tryb wsadowy polega na zinterpretowaniu podanego pliku wsadowego

BAT, będącego spisem poleceń MS-DOS, skryptem. Plik autoexec.bat jest przykładem pliku wsadowego.

 

Polecenia MS-DOS

polecenie

opis

<litera>:

zmiana bieżącego dysku (np. a:)

dir

wyświetlenie zawartości bieżącego katalogu lub wyszukanie pliku o danym formacie albo nazwie np. dir *.txt

cd <folder>

zmiana bieżącego katalogu (np. cd windows)

copy <nazwa pliku> <miejsce docelowe>

kopiowanie plików (np. copy c:\command.com c:\windows\command.com)

del(lub erase) <nazwa pliku>

usuwanie pliku (np. del c:\config.sys); erase jest używane w usuwaniu wielu plików

ren(lub rename) <nazwa pliku> <nowa nazwa>

zmiana nazwy pliku (np. ren c:\config.sys c:\config1.sys)

move <nazwa> <miejsce docelowe>

przenoszenie pliku lub folderu (np. move c:\command.com c:\windows\command.com)

md(lub mkdir) <nazwa>

tworzenie nowego katalogu (np. md c:\super)

rd(lub rmdir) <nazwa>

usuwanie istniejącego katalogu (np. rd c:\super)

attrib <parametr> <nazwa pliku>

nadawanie atrybutów (np. attrib -A c:\config.sys)

fdisk

polecenie zewnętrzne uruchamiające program zarządzania partycjami

format <litera>: <parametr>

formatowanie partycji (np. format c: /q)

vol <litera>:

wyświetlanie informacji o dysku (np. vol c:)

help

wyświetlenie skróconych opisów podstawowych poleceń

help <komenda>

wyświetlenie pomocy dotyczącej danego polecenie

date <rr-mm-dd>

wyświetlanie i ustawianie bieżącej daty (np. date 2006-07-02)

time <gg:mm:ss>

wyświetlanie i ustawianie czasu (np. time 16:25:30)

start <program>

uruchamia dany program

ver

wyświetlenie wersji systemu

mem

wyświetlanie informacji o pamięci

edit

uruchamia edytor tekstu

edlin <nazwa pliku>

uruchamia edytor tekstu

exit

zamyka cmd

cls

czyści ekran konsoli

qbasic

uruchamia edytor QBasic służący do programowania w języku BASIC

 

Cała konfiguracja MS-DOS znajduje się w zasadzie w 2 lub 3 plikach: CONFIG.SYS, AUTOEXEC.BAT oraz w nowszych systemach MSDOS.SYS.

Plik CONFIG.SYS definiuje konfigurację systemu, natomiast plik AUTOEXEC.BAT pełnił funkcję ówczesnego Autostartu. Plik MSDOS.SYS był

w samodzielnych wersjach systemu (do 6.22) plikiem binarnym zawierającym kod wykonywalny a dopiero później - tekstowym plikiem konfiguracyjnym.

CONFIG.SYS to podstawowy plik konfiguracyjny systemów operacyjnych MS-DOS, OS/2 oraz systemów Windows z serii 9x

Składnia przypomina tą używaną w plikach .ini systemu Windows; w przypadku stosowania menu posiada sekcje. Standardowym zapisem są pary

postaci parametr=wartość, które wyglądają jak zmienne. W rzeczywistości służą one do definiowania parametrów zajętości pamięci albo

ładują programy rezydentne i sterowniki urządzeń (device=, devicehigh= i inne).

Kolejność zapisu w pliku nie zawsze jest zachowywana podczas jego przetwarzania - niektóre polecenia wykonywane są przed innymi. Dlatego dokonując zapisu

w tym pliku użytkownik może się skupić wyłącznie na kolejności ładowania sterowników nie martwiąc się o pozostałe parametry.

Plik CONFIG.SYS może posiadać sekcje podobnie jak pliki .ini. Istnieją przy tym sekcje o znaczeniu specjalnym:

[menu] - przy pomocy tej sekcji możliwe jest stworzenie menu wyboru, które będzie wyświetlane podczas startu systemu. Dzięki niemu możliwe jest

wskazanie konfiguracji, która ma zostać użyta podczas ładowania systemu. Wybór może mieć także wpływ na działanie pliku AUTOEXEC.BAT,

gdyż wybór przekazywany jest w postaci zmiennej systemowej %config%.

[common] - polecenia z tej sekcji wykonywane są zawsze niezależnie od wyboru wskazanym w menu. Warto nadmienić, że sekcji tych może istnieć więcej niż jedna.

Pozostałe sekcje odpowiadają nazwom wybranej pozycji w menu, o ile takie zostało utworzone.

 

Po odczytaniu pliku CONFIG.SYS MS-DOS przechodzi do ładowania COMMAND.COM, który następnie uruchamia program wsadowy AUTOEXEC.BAT.

Pliki CONFIG.SYS i AUTOEXEC.BAT można także znaleźć w późniejszych wersjach systemu Microsoft Windows.

Najczęściej są to puste pliki, bez jakichkolwiek wpisów. OS/2 nie korzysta z pliku AUTOEXEC.BAT.

Przykładowy plik CONFIG.SYS

device = c:\dos\himem.sys

device = c:\dos\emm386.exe umb

dos = high,umb

devicehigh = c:\windows\mouse.sys

devicehigh = c:\dos\setver.exe

devicehigh = c:\dos\smartdrv.exe

country = 044,437,c:\dos\country.sys

AUTOEXEC.BAT to nazwa specjalnego programu wsadowego m.in. systemu MS-DOS. Znajduje się on w katalogu głównym uruchamianego systemu plików/partycji.

Plik uruchamiany jest jednorazowo przy starcie systemu, po przetworzeniu pliku CONFIG.SYS (choć w niektórych systemach jest możliwe wyłączenie jego przetwarzania).

W systemach Windows dzieje się to przed załadowaniem interfejsu graficznego.

Program AUTOEXEC.BAT służy przede wszystkim do ustawiania zmiennych systemowych, ładowania sterowników i uruchamiania programów działających w tle,

ewentualnie do uruchamiania nakładki systemowej.

W systemie Windows NT i jego pochodnych Windows 2000 i Windows XP odpowiednikiem jest AUTOEXEC.NT umieszczony w folderze %SystemRoot%\system32.

Plik nie jest jednak uruchamiany przy starcie systemu, ale podczas ładowania emulowanego środowiska MS-DOS.

Przykłady pliku autoexec.bat położonego przy instalacji DOS-u przed instalacją Windows

@echo off
SET PATH=C:\DOS;C:\ 
SET SOUND=C:\CREATIVE\CTSND
SET BLASTER=A220 I5 D1 H5 P330 E620 T6 
LH C:\DOS\MSCDEX.EXE /D:123 
LH C:\MOUSE\MOUSE.EXE
PROMPT $p$g
CLS

Znaczenie;

@ECHO OFF - nie powtarzaj w linii prompt kolejnych otrzymanych komend, znak @ oznacza,
że to polecenie również nie ma być wyświetlone
SET PATH=C:\DOS;C:\ - ustaw zmienną środowiskową PATH na wartość C:\DOS;C:\.
Oznacza to szukanie nieznanych poleceń na ścieżkach; C:\DOS a następnie C:\
SET SOUND=C:\CREATIVE\CTSND - ustaw zmienną środowiskową SOUND na wartość
C:\CREATIVE\CTSND. Jest to zmienna wykorzystywana przez obsługę kart dźwiękowych Sound Blaster.
SET BLASTER=A220 I5 D1 H5 P330 E620 T6 - ustaw zmienną środowiskową BLASTER na
wartość A220 I5 D1 H5 P330 E620 T6. Jest to zmienna wykorzystywana przez obsługę kart dźwiękowych Sound Blaster.
LH C:\DOS\MSCDEX.EXE /D:123 - sterownik MSCDEX.EXE (obsługa CD-rom) ładuj do "pamięci górnej"
LH C:\MOUSE\MOUSE.EXE - sterownik "MOUSE.EXE" (obsługa myszy) ładuj do "pamięci górnej"
PROMPT $p$g - Wyświetlaj wiersz poleceń w postaci dysk:\folder\podfolder, nie dysk>
CLS - wyczyść ekran

Wykonanie autoexec-a kończy się wyświetleniem znaku zachęty prompt.

Znak zachęty (ang. command prompt) to wykorzystywany w wierszu poleceń znak lub sekwencja

znaków wskazująca gotowość komputera do przyjmowania poleceń.

Najczęściej znak zachęty zakończony jest przez $, #, : albo >. Zwykle zawiera także inne informacje jak:

W systemach Unix zwykle użytkownik jako znak zachęty ma $, a administrator (root) ma #.

Z reguły znak zachęty może być zmodyfikowany przez użytkownika w taki sposób by odpowiadał jego osobistym preferencjom.

Dla przykładu w systemach Unix, Linux i podobnych odbywa się to przez ustawienie zmiennej środowiskowej PS1,

a w systemach DOS oraz Windows przez zmienną PROMPT. Najczęściej znak zachęty poza klasycznymi znakami

może zawierać również sekwencje zmieniające kolor wyświetlanego tekstu.

W systemach Unix istnieją dwa poziomy znaku zachęty. Pierwszemu poziomowi odpowiada zmienna lokalna PS1 wyświetlana

po zalogowaniu, oznaczająca stan oczekiwania na wprowadzenie polecenia. Zmienna drugiego poziomu to PS2.

Wyświetlana jest gdy interpreter oczekuje dodatkowych danych. Domyślnie zmienna ta ma postać '>'.

 

TRYB MS-DOS

„Plik zawierający informacje dotyczące programu (PIF)”

Plik udostępniający systemowi Windows informacje dotyczące najlepszego sposobu uruchamiania programów opartych na systemie MS-DOS.

Podczas uruchamiania programu opartego na systemie MS-DOS system Windows poszukuje pliku PIF, który zostanie wykorzystany razem

z otwieranym programem. Pliki PIF zawierają takie elementy, jak nazwa pliku, katalog uruchomieniowy i opcje wielozadaniowości.

Program przeznaczony do uruchamiania w systemie MS-DOS, który może nie być w stanie korzystać ze wszystkich funkcji systemu Windows.

Okno wyświetlane na pulpicie i pełniące rolę interfejsu systemu operacyjnego MS-DOS. Polecenia systemu MS-DOS są wpisywane

w miejscu wskazywanym przez migający kursor.

 

Informacje wyświetlane na karcie Wydajność w oknie Właściwości systemu wskazują na to, że jeden lub więcej dysków twardych w komputerze

korzysta z trybu zgodności z systemem MS-DOS. Tryb zgodności z systemem MS-DOS może być używany na potrzeby systemu plików

lub pamięci wirtualnej. Może zostać wyświetlony następujący komunikat:

Stronicowanie w trybie zgodności obniża ogólną wydajność systemu!!!

Tryb zgodności z systemem MS-DOS może być używany z następujących powodów:

Sterownik trybu rzeczywistego jest „bezpieczny”, jeżeli zakres jego funkcji nie przekracza zakresu funkcji odpowiedniego sterownika w trybie chronionym systemu

Windows. Jeśli sterownik trybu rzeczywistego jest bezpieczny, sterownik w trybie chronionym może przejąć wszystkie operacje We/Wy dla odpowiedniego urządzenia.

W przeciwnym przypadku system Windows rozsyła wszystkie operacje We/Wy za pośrednictwem sterownika trybu rzeczywistego.

Przykładem niebezpiecznego sterownika jest sterownik IDE/ESDI trybu rzeczywistego korzystający z dynamicznego szyfrowania ze względów bezpieczeństwa.

System Windows nie zapewnia szyfrowania, dlatego nie zezwala na przejęcie operacji sterownika trybu rzeczywistego przez sterownik IDE/ESDI trybu chronionego.

Dowolny sterownik trybu rzeczywistego oferujący funkcje uwzględnione na następującej liście jest uważany za niebezpieczny:

Lista bezpiecznych sterowników (plik Ios.ini) jest prowadzona dla systemu Windows. Każdy wpis na tej liście identyfikuje sterownik lub program rezydentny (TSR),

który system Windows może przejąć przy użyciu odpowiedniego sterownika w trybie chronionym. Na liście bezpiecznych sterowników jest umieszczana nazwa

sterownika lub programu rezydentnego. Nazwa ta powinna być zgodna z odpowiednią nazwą w pliku Config.sys lub Autoexec.bat.

System Windows nie zapisuje numeru wersji sterownika lub programu rezydentnego na tej liście, dlatego dostawca jest zobowiązany do zmiany nazwy sterownika,

jeżeli jego nowa wersja zostanie ulepszona w sposób powodujący, że dany sterownik można uznać za niebezpieczny.

Domyślnie za bezpieczne są uznawane następujące sterowniki:

UWAGA: Jeśli używany sterownik trybu rzeczywistego zapewnia wyższą wydajność lub oferuje funkcje, które nie są dostępne w przypadku sterownika

w trybie chronionym systemu Windows, dostawca sterownika powinien go usunąć z listy bezpiecznych sterowników. System może korzystać z trybu rzeczywistego

podczas dostępu do dysku. Jeśli operacje wykonywane przez używany sterownik trybu rzeczywistego mogą być bezpiecznie przejęte przez sterowniki w trybie chronionym,

dostawca sterownika może dodać dany sterownik do listy bezpiecznych sterowników.

 

cmd.exeinterpreter poleceń stosowany w rodzinie systemów operacyjnych Microsoft Windows NT (włączając Windows 2000, XP, 2003 i Windows Vista), Windows CE oraz OS/2.

Jego położenie jest zapisane w zmiennej środowiskowej ComSpec. Przy standardowej instalacji Windows jest to katalog %SystemRoot%\system32, gdzie zmienna SystemRoot wskazuje

zwykle na katalog C:\Windows lub C:\WINNT w przypadku Windows 2000 i wcześniejszych.

Polecenie cmd otwiera tekstowe okno konsoli i dokonuje interpretacji wprowadzanych w wierszu poleceń konsoli znaków jako nazw poleceń, programów, plików czy parametrów.

Wykonanie polecenia cmd w już otwartym oknie konsoli powoduje uruchomienie w tym samym oknie wtórnego procesora poleceń, który może dziedziczyć środowisko po procesorze

pierwotnym. Każdy procesor poleceń można zamknąć wykonując polecenie exit.

Interpreter cmd.exe jest uruchamiany również do wykonania plików wsadowych z rozszerzeniem CMD, wynikiem czego może być otwarcie okna konsoli i jego automatyczne zamknięcie

po wykonaniu ostatniego polecenia.

Po uruchomieniu trybu awaryjnego z wierszem poleceń (a także w Windows 2008 CORE), interpreter cmd.exe jest uruchamiany jako powłoka systemowa zamiast Eksploratora Windows.