Введение
В последнее время наблюдается большой приток пользователей Linux. Как правило это люди уже имеющие вполне приличный опыт в общении с компьютером, но этот опыт в большинстве случаев ограничен одной системой. Естественно, что этой системой является самая распространенная на сегодня на дескотопах операционная система компании Microsoft MS Windows. Большое число пользователей Windows также ставят Linux, или запускают его с «Live CD» «на посмотреть».
И тут возникает сразу несколько проблем, связанных с тем, что новые пользователи Linux ожидают увидеть перед собой «еще один Windows». А Linux — это совсем не клон Windows, это совсем другая система, с другой основой, другими традициями, другими возможностями и другими требованиями к пользователю.
По моему убеждению именно это непонимание и является одним из источником такого количества так называемых «священных войн». Возможно данная статья позволит если не уменьшить количество таких войн, то хотя бы даст большее понимание позиций противников и снизит накал в войнах.
Очень глубоко лезть в устройство этих двух операционных систем нам, я думаю, ни к чему, будем рассматривать их в основном с точки зрения пользователя.
Экскурс в историю (очень краткий)
Для сравнения, думаю невредно освежить в памяти краткую историю сравниваемых операционных систем.
История Unix
Операционная система UNIX была создана еще до эры коммерческого софта. Она писалась инженерами, как система «для себя». Поэтому в нее были заложены передовые на то время концепции. В дальнейшем своем развитии при добавлении новых черт, обычно считалось, что делать нужно «правильно». Т.е. например если нужно было выбирать из двух решений, одно из которых было с инженерной точки зрения «неправильным», например повышало производительность сегодня, но могло принести затруднения в дальнейшем, как правило, такое решение отвергалось и выбиралось «правильное» решение, пусть и с определенной потерей производительности.
Первые версии UNIX были написаны на Ассеблере, затем система была переписана на СИ. Это дало системе уникальную переносимость. На PC UNIX был портирован, а точнее заново написан (Linux) сразу, как только развитие PC, а точнее выпуск PC на процессоре i386, позволило это сделать.
В 1985 году стартовал проект POSIX. Это стандарт на интерфейсы UNIX-подобных ОС. Во многом благодаря наличию такого стандарта, так быстро смог появится на свет и достигнуть зрелости Linux — свободная воплощение UNIX.
Развитие интернета с самого начала и до нашего времени неразрывно связано с серверами под управлением ОС UNIX. Сначала с коммерческими, а теперь все больше и больше со свободными.
С точки зрения коммерциализации развитие UNIX можно разделить на три этапа.
- Некоммерческое распространение в университетах.
- Распространение коммерческих UNIX систем.
- Появление свободных реализаций (Linux, FreeBSD) и вытеснение коммерческих систем (настоящий момент).
До появления системы X Window System UNIX была системой с текстовым интерфейсом, затем добавился графический, но традиционно текстовый интерфейс сохраняет важное значение.
Очень важно то, что UNIX с самого начала был многозадачной и многопользовательской системой. Т.е. на одной машине могут работать сразу несколько пользователей, и выполняться несколько программ одновременно.
Фирменной чертой всех UNIX-подобных ОС была и остается надежность.
Табличка:
Год | Событие | Комментарий | Разр | Многопольз. | Многозадачн. |
1971 | Первая версия UNIX | На ассемблере | 32 | Есть | Есть |
1973 | Третья версия UNIX | На Си | 32 | Есть | Есть |
1983 | TCP/IP | — | 32 | Есть | Есть |
1983 | Проект GNU стартовал | Подготовил свободную обвязку для UNIX- подобных ОС | 32 | Есть | Есть |
1984 | X Window System | Оконная система | 32 | Есть | Есть |
1985 | Стартовал проект POSIX | Стандарты интерфейсов UNIX-подобных систем | 32 | Есть | Есть |
1991 | Появление Linux | Первая свободная реализация ядра UNIX для PC, 32 разрядная, сеть | 32 | Есть | Есть |
1993 | Появление FreeBSD | Еще одна свободная реализация ядра UNIX для PC, 32 разрядная, сеть | 32 | Есть | Есть |
История Windows
Истоки зарождения операционной системы Windows следует искать в предшествующей ей операционной системе той же самой фирмы — DOS. Все операционные системы компании Microsoft, это прежде всего коммерческие проекты. Об этом нужно помнить всегда, особенно, когда стараешься понять истоки тех или других решений, как коммерческого плана, так и технического.
Первой ОС из этого семейства была DOS. Может показаться, что DOS собственно имеет косвенное отношение к обсуждаемому предмету. Но, многие традиции, база пользователей и разработчиков, их привычки, идут именно оттуда.
DOS была однозадачной однопользовательской операционной системой с текстовым интерфейсом. Первая версия Windows представляла собой нечто, негодное для работы и распространения не получила. Работать стало в Windows стало возможно, начиная с версии 3. В версии Windows For Workgroups 3.1 появилась возможность работы с сетью. Winodws серии 3 представляли собой запускаемую поверх DOS систему. Отличались невысокой надежностью.
В 1995 годы вышла новая версия — Windows 95. Код частично был 32 разрядным, частично 16 разрядным, встроенная сеть. По сравнению с Windows серии 3 это был серьезный шаг вперед. Повысилась надежность, но до надежности UNIX-подобных ОС было еще далеко. В качестве рабочей станции с натяжкой конечно, надежности хватало, в качестве сервера, нет. Позже были выпущены еще две ОС этой линии, Windows 98 и Windows Me. После этого линия была закрыта.
В 1993 году вышла новая версия — Windows NT 3.1. Это уже была полностью 32 разрядная система. Разработана она была с нуля, для ее разработки были наняты известные специалисты. Были внедрены новые концепции. Это подняло надежность почти до уровня надежности UNIX-подобных систем. Эта ОС уже могла работать в качестве сервера. Продолжение этой линии, операционные системы Windows 2000, Windows XP и Windows Vista.
ОС линии NT были многозадачными, начиная с Windows XP появилась и возможность работать нескольким пользователям, хотя и более ограниченная и гораздо менее удобная, чем у UNIX-подобных ОС.
Табличка:
Год | Событие | Комментарий | Разр | Многопольз. | Многозадачн. |
1981 | DOS | — | 16 | Нет | Нет |
1985 | Windows 1.0 | Надстройка над DOS | 16 | Нет | Нет |
1990 | Windows 3.0 | Надстройка над DOS | 16 | Нет | Есть |
1992 | Windows For Workgroups 3.1 | Надстройка над DOS, сеть | 16 | Нет | Есть |
1995 | Windows 95 | сеть | 16/32 | Нет | Есть |
1993 | Windows NT | сеть | 32 | с 1998 | Есть |
2000 | Windows 2000 | сеть | 32 | Есть | Есть |
2005 | Windows XP | сеть | 32 | Есть | Есть |
2007 | Windows Vista | сеть | 32 | Есть | Есть |
Техническое устройство с точки зрения пользователя
UNIX
С точки зрения пользователя UNIX устроен примерно так:
- Ядро. Работает с устройствами, управляет памятью и процессами.
- Текстовая подсистема, работа с системой через терминал. Причем для управления всеми возможностями ОС достаточно только текстовой подсистемы. Возможно вход через эту подсистему многих пользователей. Богатый набор как встроенных утилит, так и приложений, работающих в текстовом режиме.
- Графическая подсистема Xwindow. Запускается как процесс в системе.
- Система удаленного доступа в текстовом режиме. Позволяет полноценную работу с ОС в текстовом режиме. Потребляет мало ресурсов. Позволяет работать на сравнительно слабых компьютерах одновременно десяткам и сотням пользователей. Количество сессий ограничено ресурсами компьютеров.
- Система удаленного доступа в графическом режиме. Позволяет одновременно работать нескольким пользователям в графическом режиме. Количество сессий ограничено ресурсами компьютеров.
- Система передачи графического окна приложения на другой компьютер. Позволяет запустив приложение на одном компьютере, управлять им с другого компьютера, через окно приложения, передаваемое на этот другой компьютер. Количество сессий ограничено ресурсами компьютеров.
Windows
- Ядро. Работает с устройствами, управляет памятью и процессами, управляет графической подсистемой.
- Графическая подсистема. Обеспечивает интерфейс с пользователем. Приоритетная система для пользовательского интерфейса.
- Текстовая подсистема. Обеспечивает текстовый интерфейс с пользователем. Текстовый интерфейс весьма урезанный. Набор утилит текстового режима как встроенных, так и других производителей весьма куцый. Синтаксис и состав команд текстового режима меняется от версии к версии. Запускается только поверх графического режима.
- Система удаленного доступа. Появилась впервые, как встроенная в систему, в Windows NT Server 4.0. До этого были только продукты других фирм. В связи с тем, что запускается полноценная графическая сессия, кушает очень много ресурсов. Наличие системы удаленного доступа и количество одновременных сессий может вообще отсутствовать или быть ограничено в разных версиях из коммерческих соображений.
Сравнение концепций
Давайте теперь рассмотрим, чем отличается подход к работе в этих двух системах.
UNIX: Концепция «Toolbox»
Поскольку UNIX разрабатывалась инженерами и для инженеров, в ее основу была положена концепция toolbox (ящик с инструментами). Что это значит? Это значит, что при создании софта и встроенных утилит для UNIX не делали универсальные программы, каждая из которых выполняла бы внутри себя все, необходимые пользователю действия, а для каждой небольшой задачи создавалась своя утилита, которая выполняла свою задачу, только одну, но делала это хорошо. Дело пользователя было при помощи набора этих утилит выполнить операции, которые ему нужно сделать.
При этом из этого набора утилит можно составлять цепочки и последовательности действий, что позволяет легко автоматизировать рутинные, часто повторяющиеся операции.
Для того, чтобы утилиты могли обмениваться между собой результатами своей работы, в качестве носителя информации был выбран текстовый файл. Для обмена информацией между утилитами были изобретены «pipes» (трубы). При помощи «труб» информация с выхода одной команды может быть передана на вход второй, та ее обрабатывает, выдает свою информацию на выход, которая может быть передана на вход третьей и так далее.
В общем, в результате UNIX позволяет пользователю легко создавать простые программные комплексы, выполняющие повторяющиеся действия как по команде пользователя, так и в автономном режиме.
Такой подход имеет как плюсы, так и недостатки. С одной стороны он дает больший контроль над системой, гибкость в настройке, но при этом повышается порог вхождения в систему, или говоря простыми словами, прежде, чем что нибудь сделать, как правило, нужно изучить основы.
Windows: Концепция «Тостер»
В Windows доминирует другая концепция. Эта концепция — максимально облегчить вхождение пользователя в задачу. Программы в Windows как правило большие, на каждое действие есть пункт в меню или иконка. В системы программы связываются как правило с большим трудом.
Ухудшает ситуацию о построением комплексов на базе Windows то, что большинство программ — коммерческие и используют свои, бинарные и как правило закрытые форматы данных и файлов. Такой подход превращает компьютер в устройство, которое может выполнять ограниченный изготовителем ПО набор функций, в пределе в этакий своеобразный «тостер», который выполняет только то, что задумал его изготовитель.
Плюс такого подхода — легкость вхождения неподготовленного пользователя. Минус — то, что обманутый кажущейся легкостью пользователь вообще не хочет ничему учиться и не выполнять необходимых действий. На поводу идут и производители софта. Это одна из причин такого обилия документов отформатированных пробелами, пренебрежения безопасностью и как следствие вирусных эпидемий.
Заключение
Конечно, в обоих системах не доминирует свой подход на 100 процентов. Как в Windows есть возможность пользоваться текстовой консолью и создавать .bat файлы, так и в UNIX есть большой набор программ, со свойствами присущими скорее «тостерному» подходу. И все таки описанная разница в подходах есть и она достаточно ярко выражена.
Литература
1. http://ru.wikipedia.org/wiki/UNIX
2. http://ru.wikipedia.org/wiki/Windows
3. http://ru.wikipedia.org/wiki/ДОС
4. http://posix.ru/
5. http://ru.wikipedia.org/wiki/POSIX
In this article, we will be looking into the major difference between UNIX and Windows Operating System.
UNIX :
UNIX is a powerful, multi-user, and multitasking operating system originally developed at AT & T Bell Laboratories. This operating system is very popular among the scientific, engineering, and academic due to its most appreciated features like flexibility, portability, network capabilities, etc.
Windows :
Microsoft window is a Graphical User Interface (GUI) based operating system that provides graphical user-friendly alternatives for most of the command-line based functions. Microsoft introduced a series of versions with the latest functions.
Difference between UNIX and Windows Operating System :
Here we will discuss the various differences between UNIX and Windows operating systems, based on various parameters.
1. Licensing:
UNIX was developed as an open-source OS using C and Assembly languages. Since being open source UNIX, and its various Linux distributions account for the most used OS in the world. Unix and all its Linux distributions are available under the General Public License.
Windows Operating System is proprietary software owned by Microsoft, meaning its source code is not available to the public.
2. User Interface:
Unix operating systems are relatively harder to grasp and produce significant barriers for newcomers. However, some Linux distributions like Ubuntu are changing such perceptions by bringing in more GUI-based applications.
Windows Operating System on the other hand is designed with the outset of keeping the UI as simple and user-friendly as possible, so that non-IT people can easily use computers for their work.
3. Processing:
UNIX operating system supports Multiprocessing, meaning many processes are executed simultaneously. In Multiprocessing, every process has a separate address space and CPUs can be added for increasing computing power.
Windows Support Multithreading, meaning many threads are created from a single process for increasing computing power. In multithreading, many threads of a process are executed simultaneously where common address space is shared by all the threads.
4. File System:
UNIX operating system uses STD.ERR and STD.IO file systems or the UFS (Unix File System) and treats all physical drives as one logical drive. It has a robust and efficient file system. File system is represented as a hierarchical tree under the same root.
Windows on the other hand, uses File Allocation Table (FAT32) and New Technology File System(NTFS) systems for managing files and requires the owner of the executables before executing, files store in folders on different data drive like, C,D,E.
5. Users Accounts:
In the Linux system, there are three types of user accounts:
- Regular: These accounts have the moderate privilege to intended for routine works, it can perform only the task for access only those files and services for which it is authorized.
- Root: This account is the main user account of a Linux system, it has the highest privilege to work administrative level work to manage all the services. This is also known as superusers.
- Service: This account is generally used by services to run the process.
In Windows, there are three types of user accounts:
- Administrator: This account controls all the services and allows user to make changes and check the activities of other users
- Child: This account comes with Family Safety settings which is assigned by the admin.
- Guest: This account has no standard accounts with no privacy, it allows to other people use your computer without being able to change PC settings and install applications.
6. File Name Convention:
In Linux, we can save two files with the same name.
But in windows, we can not save with the same name. It generates errors:
7. Security:
UNIX is more secure by design. The primary protection on a Unix system is that executing a “.exe” file is much more difficult. Here executables cannot be processed without explicit permission as all processes in Unix are treated equally. But these are slowly changing as Unix distributions are moving more towards GUI and now relying on the application security itself.
Another advantage of Unix systems is that getting rid of viruses is easier, as viruses can only infect user accounts and the root remains intact and pure.
Windows is less secure in the sense that it is simple to execute files with minimal permission. These can further lead to the installation of Malwares unknowingly on the system.
8. Data Backup & Recovery:
In the earlier version of UNIX, salvaging data from a system when the device housing the said data is inaccessible, was not possible. But in some distributions of Linux like Ubuntu, a new feature is introduced called Live distribution can be used to recover data from an inaccessible device.
Recovery and Backup of data in the Windows system are much simpler and can be done using its inbuilt GUI for the same. It has an integration with OneDrive for data backup and recovery too.
9. Case Sensitivity:
Unix is completely case-sensitive, meaning the files with names “GFG.txt” and “gfg.txt” can be considered two different files. Windows, on the other hand, have optional case sensitivity.
10. Hardware:
Hardware support is limited in UNIX systems. Some hardware might not have drivers built for them. Windows has almost all the drivers for all the available hardware.
11. Reliability:
Unix is known for being very stable to run. Although the stability of Windows has significantly improved in recent years, most Unix systems are still far superior in this respect.
S. No. | Parameters | UNIX | Windows |
---|---|---|---|
1. | Basic | It is a command-based operating system. | It is a menu based operating system. |
2. | Licensing | It is an open-source system which can be used to under General Public License. | It is a proprietary software owned by Microsoft. |
3. | User Interface | It has a text base interface, making it harder to grasp for newcomers. | It has a Graphical User Interface, making it simpler to use. |
4. | Processing | It supports Multiprocessing. | It supports Multithreading. |
5. | File System | It uses Unix File System(UFS) that comprises STD.ERR and STD.IO file systems. | It uses File Allocation System (FAT32) and New technology file system(NTFS). |
6. | Security | It is more secure as all changes to the system require explicit user permission. | It is less secure compared to UNIX. |
7. | Data Backup & Recovery | It is tedious to create a backup and recovery system in UNIX, but it is improving with the introduction of new distributions of Unix. | It has an integrated backup and recovery system that make it simpler to use. |
8. | Hardware | Hardware support is limited in UNIX system. Some hardware might not have drivers built for them. | Drivers are available for almost all the hardware. |
9. | Reliability | Unix and its distributions are well known for being very stable to run. | Although Windows has been stable in recent years, it is still to match the stability provided by Unix systems. |
10. | Case Sensitive | It is fully case-sensitive, and files can be considered separate files. | It has case sensitivity as an option. |
In this article, we will be looking into the major difference between UNIX and Windows Operating System.
UNIX :
UNIX is a powerful, multi-user, and multitasking operating system originally developed at AT & T Bell Laboratories. This operating system is very popular among the scientific, engineering, and academic due to its most appreciated features like flexibility, portability, network capabilities, etc.
Windows :
Microsoft window is a Graphical User Interface (GUI) based operating system that provides graphical user-friendly alternatives for most of the command-line based functions. Microsoft introduced a series of versions with the latest functions.
Difference between UNIX and Windows Operating System :
Here we will discuss the various differences between UNIX and Windows operating systems, based on various parameters.
1. Licensing:
UNIX was developed as an open-source OS using C and Assembly languages. Since being open source UNIX, and its various Linux distributions account for the most used OS in the world. Unix and all its Linux distributions are available under the General Public License.
Windows Operating System is proprietary software owned by Microsoft, meaning its source code is not available to the public.
2. User Interface:
Unix operating systems are relatively harder to grasp and produce significant barriers for newcomers. However, some Linux distributions like Ubuntu are changing such perceptions by bringing in more GUI-based applications.
Windows Operating System on the other hand is designed with the outset of keeping the UI as simple and user-friendly as possible, so that non-IT people can easily use computers for their work.
3. Processing:
UNIX operating system supports Multiprocessing, meaning many processes are executed simultaneously. In Multiprocessing, every process has a separate address space and CPUs can be added for increasing computing power.
Windows Support Multithreading, meaning many threads are created from a single process for increasing computing power. In multithreading, many threads of a process are executed simultaneously where common address space is shared by all the threads.
4. File System:
UNIX operating system uses STD.ERR and STD.IO file systems or the UFS (Unix File System) and treats all physical drives as one logical drive. It has a robust and efficient file system. File system is represented as a hierarchical tree under the same root.
Windows on the other hand, uses File Allocation Table (FAT32) and New Technology File System(NTFS) systems for managing files and requires the owner of the executables before executing, files store in folders on different data drive like, C,D,E.
5. Users Accounts:
In the Linux system, there are three types of user accounts:
- Regular: These accounts have the moderate privilege to intended for routine works, it can perform only the task for access only those files and services for which it is authorized.
- Root: This account is the main user account of a Linux system, it has the highest privilege to work administrative level work to manage all the services. This is also known as superusers.
- Service: This account is generally used by services to run the process.
In Windows, there are three types of user accounts:
- Administrator: This account controls all the services and allows user to make changes and check the activities of other users
- Child: This account comes with Family Safety settings which is assigned by the admin.
- Guest: This account has no standard accounts with no privacy, it allows to other people use your computer without being able to change PC settings and install applications.
6. File Name Convention:
In Linux, we can save two files with the same name.
But in windows, we can not save with the same name. It generates errors:
7. Security:
UNIX is more secure by design. The primary protection on a Unix system is that executing a “.exe” file is much more difficult. Here executables cannot be processed without explicit permission as all processes in Unix are treated equally. But these are slowly changing as Unix distributions are moving more towards GUI and now relying on the application security itself.
Another advantage of Unix systems is that getting rid of viruses is easier, as viruses can only infect user accounts and the root remains intact and pure.
Windows is less secure in the sense that it is simple to execute files with minimal permission. These can further lead to the installation of Malwares unknowingly on the system.
8. Data Backup & Recovery:
In the earlier version of UNIX, salvaging data from a system when the device housing the said data is inaccessible, was not possible. But in some distributions of Linux like Ubuntu, a new feature is introduced called Live distribution can be used to recover data from an inaccessible device.
Recovery and Backup of data in the Windows system are much simpler and can be done using its inbuilt GUI for the same. It has an integration with OneDrive for data backup and recovery too.
9. Case Sensitivity:
Unix is completely case-sensitive, meaning the files with names “GFG.txt” and “gfg.txt” can be considered two different files. Windows, on the other hand, have optional case sensitivity.
10. Hardware:
Hardware support is limited in UNIX systems. Some hardware might not have drivers built for them. Windows has almost all the drivers for all the available hardware.
11. Reliability:
Unix is known for being very stable to run. Although the stability of Windows has significantly improved in recent years, most Unix systems are still far superior in this respect.
S. No. | Parameters | UNIX | Windows |
---|---|---|---|
1. | Basic | It is a command-based operating system. | It is a menu based operating system. |
2. | Licensing | It is an open-source system which can be used to under General Public License. | It is a proprietary software owned by Microsoft. |
3. | User Interface | It has a text base interface, making it harder to grasp for newcomers. | It has a Graphical User Interface, making it simpler to use. |
4. | Processing | It supports Multiprocessing. | It supports Multithreading. |
5. | File System | It uses Unix File System(UFS) that comprises STD.ERR and STD.IO file systems. | It uses File Allocation System (FAT32) and New technology file system(NTFS). |
6. | Security | It is more secure as all changes to the system require explicit user permission. | It is less secure compared to UNIX. |
7. | Data Backup & Recovery | It is tedious to create a backup and recovery system in UNIX, but it is improving with the introduction of new distributions of Unix. | It has an integrated backup and recovery system that make it simpler to use. |
8. | Hardware | Hardware support is limited in UNIX system. Some hardware might not have drivers built for them. | Drivers are available for almost all the hardware. |
9. | Reliability | Unix and its distributions are well known for being very stable to run. | Although Windows has been stable in recent years, it is still to match the stability provided by Unix systems. |
10. | Case Sensitive | It is fully case-sensitive, and files can be considered separate files. | It has case sensitivity as an option. |
Содержание
- Сравнение операционных систем семейства Linux/UNIX и Windows
- Архитектура UNIX и Windows
- Архитектура UNIX
- Архитектура Windows
- Основные семейства операционных систем
- 2.3. Операционные системы фирмы Microsoft
- 2.4. Отличия семейства UNIX/Linux от операционных систем Windows и MS DOS
- Семейства операционных систем: DOS, OS/2, UNIX, WINDOWS.
- ОС семейства DOS.
- Пример
- ОС семейства OS/2
- Пример
- ОС семейства UNIX
- ОС семейства WINDOWS
- Представители семейства Windows:
- Операционные системы типа UNIX, Windows. Операционная система Windows 2000/2003: основные свойства Windows, файловые системы Window. Операционные системы Linux, Unix
Сравнение операционных систем семейства Linux/UNIX и Windows
Введение
В последнее время наблюдается большой приток пользователей Linux. Как правило это люди уже имеющие вполне приличный опыт в общении с компьютером, но этот опыт в большинстве случаев ограничен одной системой. Естественно, что этой системой является самая распространенная на сегодня на дескотопах операционная система компании Microsoft MS Windows. Большое число пользователей Windows также ставят Linux, или запускают его с «Live CD» «на посмотреть».
И тут возникает сразу несколько проблем, связанных с тем, что новые пользователи Linux ожидают увидеть перед собой «еще один Windows». А Linux — это совсем не клон Windows, это совсем другая система, с другой основой, другими традициями, другими возможностями и другими требованиями к пользователю.
По моему убеждению именно это непонимание и является одним из источником такого количества так называемых «священных войн». Возможно данная статья позволит если не уменьшить количество таких войн, то хотя бы даст большее понимание позиций противников и снизит накал в войнах.
Очень глубоко лезть в устройство этих двух операционных систем нам, я думаю, ни к чему, будем рассматривать их в основном с точки зрения пользователя.
Экскурс в историю (очень краткий)
Для сравнения, думаю невредно освежить в памяти краткую историю сравниваемых операционных систем.
История Unix
Операционная система UNIX была создана еще до эры коммерческого софта. Она писалась инженерами, как система «для себя». Поэтому в нее были заложены передовые на то время концепции. В дальнейшем своем развитии при добавлении новых черт, обычно считалось, что делать нужно «правильно». Т.е. например если нужно было выбирать из двух решений, одно из которых было с инженерной точки зрения «неправильным», например повышало производительность сегодня, но могло принести затруднения в дальнейшем, как правило, такое решение отвергалось и выбиралось «правильное» решение, пусть и с определенной потерей производительности.
Первые версии UNIX были написаны на Ассеблере, затем система была переписана на СИ. Это дало системе уникальную переносимость. На PC UNIX был портирован, а точнее заново написан (Linux) сразу, как только развитие PC, а точнее выпуск PC на процессоре i386, позволило это сделать.
В 1985 году стартовал проект POSIX. Это стандарт на интерфейсы UNIX-подобных ОС. Во многом благодаря наличию такого стандарта, так быстро смог появится на свет и достигнуть зрелости Linux — свободная воплощение UNIX.
Развитие интернета с самого начала и до нашего времени неразрывно связано с серверами под управлением ОС UNIX. Сначала с коммерческими, а теперь все больше и больше со свободными.
С точки зрения коммерциализации развитие UNIX можно разделить на три этапа.
До появления системы X Window System UNIX была системой с текстовым интерфейсом, затем добавился графический, но традиционно текстовый интерфейс сохраняет важное значение.
Очень важно то, что UNIX с самого начала был многозадачной и многопользовательской системой. Т.е. на одной машине могут работать сразу несколько пользователей, и выполняться несколько программ одновременно.
Фирменной чертой всех UNIX-подобных ОС была и остается надежность.
Год | Событие | Комментарий | Разр | Многопольз. | Многозадачн. |
1971 | Первая версия UNIX | На ассемблере | 32 | Есть | Есть |
1973 | Третья версия UNIX | На Си | 32 | Есть | Есть |
1983 | TCP/IP | — | 32 | Есть | Есть |
1983 | Проект GNU стартовал | Подготовил свободную обвязку для UNIX- подобных ОС | 32 | Есть | Есть |
1984 | X Window System | Оконная система | 32 | Есть | Есть |
1985 | Стартовал проект POSIX | Стандарты интерфейсов UNIX-подобных систем | 32 | Есть | Есть |
1991 | Появление Linux | Первая свободная реализация ядра UNIX для PC, 32 разрядная, сеть | 32 | Есть | Есть |
1993 | Появление FreeBSD | Еще одна свободная реализация ядра UNIX для PC, 32 разрядная, сеть | 32 | Есть | Есть |
История Windows
Истоки зарождения операционной системы Windows следует искать в предшествующей ей операционной системе той же самой фирмы — DOS. Все операционные системы компании Microsoft, это прежде всего коммерческие проекты. Об этом нужно помнить всегда, особенно, когда стараешься понять истоки тех или других решений, как коммерческого плана, так и технического.
Первой ОС из этого семейства была DOS. Может показаться, что DOS собственно имеет косвенное отношение к обсуждаемому предмету. Но, многие традиции, база пользователей и разработчиков, их привычки, идут именно оттуда.
DOS была однозадачной однопользовательской операционной системой с текстовым интерфейсом. Первая версия Windows представляла собой нечто, негодное для работы и распространения не получила. Работать стало в Windows стало возможно, начиная с версии 3. В версии Windows For Workgroups 3.1 появилась возможность работы с сетью. Winodws серии 3 представляли собой запускаемую поверх DOS систему. Отличались невысокой надежностью.
В 1995 годы вышла новая версия — Windows 95. Код частично был 32 разрядным, частично 16 разрядным, встроенная сеть. По сравнению с Windows серии 3 это был серьезный шаг вперед. Повысилась надежность, но до надежности UNIX-подобных ОС было еще далеко. В качестве рабочей станции с натяжкой конечно, надежности хватало, в качестве сервера, нет. Позже были выпущены еще две ОС этой линии, Windows 98 и Windows Me. После этого линия была закрыта.
В 1993 году вышла новая версия — Windows NT 3.1. Это уже была полностью 32 разрядная система. Разработана она была с нуля, для ее разработки были наняты известные специалисты. Были внедрены новые концепции. Это подняло надежность почти до уровня надежности UNIX-подобных систем. Эта ОС уже могла работать в качестве сервера. Продолжение этой линии, операционные системы Windows 2000, Windows XP и Windows Vista.
ОС линии NT были многозадачными, начиная с Windows XP появилась и возможность работать нескольким пользователям, хотя и более ограниченная и гораздо менее удобная, чем у UNIX-подобных ОС.
Год | Событие | Комментарий | Разр | Многопольз. | Многозадачн. |
1981 | DOS | — | 16 | Нет | Нет |
1985 | Windows 1.0 | Надстройка над DOS | 16 | Нет | Нет |
1990 | Windows 3.0 | Надстройка над DOS | 16 | Нет | Есть |
1992 | Windows For Workgroups 3.1 | Надстройка над DOS, сеть | 16 | Нет | Есть |
1995 | Windows 95 | сеть | 16/32 | Нет | Есть |
1993 | Windows NT | сеть | 32 | с 1998 | Есть |
2000 | Windows 2000 | сеть | 32 | Есть | Есть |
2005 | Windows XP | сеть | 32 | Есть | Есть |
2007 | Windows Vista | сеть | 32 | Есть | Есть |
Техническое устройство с точки зрения пользователя
С точки зрения пользователя UNIX устроен примерно так:
Windows
Сравнение концепций
Давайте теперь рассмотрим, чем отличается подход к работе в этих двух системах.
UNIX: Концепция «Toolbox»
Поскольку UNIX разрабатывалась инженерами и для инженеров, в ее основу была положена концепция toolbox (ящик с инструментами). Что это значит? Это значит, что при создании софта и встроенных утилит для UNIX не делали универсальные программы, каждая из которых выполняла бы внутри себя все, необходимые пользователю действия, а для каждой небольшой задачи создавалась своя утилита, которая выполняла свою задачу, только одну, но делала это хорошо. Дело пользователя было при помощи набора этих утилит выполнить операции, которые ему нужно сделать.
При этом из этого набора утилит можно составлять цепочки и последовательности действий, что позволяет легко автоматизировать рутинные, часто повторяющиеся операции.
Для того, чтобы утилиты могли обмениваться между собой результатами своей работы, в качестве носителя информации был выбран текстовый файл. Для обмена информацией между утилитами были изобретены «pipes» (трубы). При помощи «труб» информация с выхода одной команды может быть передана на вход второй, та ее обрабатывает, выдает свою информацию на выход, которая может быть передана на вход третьей и так далее.
В общем, в результате UNIX позволяет пользователю легко создавать простые программные комплексы, выполняющие повторяющиеся действия как по команде пользователя, так и в автономном режиме.
Такой подход имеет как плюсы, так и недостатки. С одной стороны он дает больший контроль над системой, гибкость в настройке, но при этом повышается порог вхождения в систему, или говоря простыми словами, прежде, чем что нибудь сделать, как правило, нужно изучить основы.
Windows: Концепция «Тостер»
В Windows доминирует другая концепция. Эта концепция — максимально облегчить вхождение пользователя в задачу. Программы в Windows как правило большие, на каждое действие есть пункт в меню или иконка. В системы программы связываются как правило с большим трудом.
Ухудшает ситуацию о построением комплексов на базе Windows то, что большинство программ — коммерческие и используют свои, бинарные и как правило закрытые форматы данных и файлов. Такой подход превращает компьютер в устройство, которое может выполнять ограниченный изготовителем ПО набор функций, в пределе в этакий своеобразный «тостер», который выполняет только то, что задумал его изготовитель.
Плюс такого подхода — легкость вхождения неподготовленного пользователя. Минус — то, что обманутый кажущейся легкостью пользователь вообще не хочет ничему учиться и не выполнять необходимых действий. На поводу идут и производители софта. Это одна из причин такого обилия документов отформатированных пробелами, пренебрежения безопасностью и как следствие вирусных эпидемий.
Заключение
Источник
Архитектура UNIX и Windows
Архитектура UNIX
Виртуальная память была изобретена в 1962 году, в Англии при создании суперкомпьютера Atlas. В большинстве современных компьютеров оперативная память не так велика, как используемое процессором адресное пространство. Размер ОЗУ типичного персонального компьютера варьируется от десятков до сотен мегабайт. При запуске программа загружается с какого-либо накопителя в оперативную память. Если же программа не помещается в ОЗУ, то те её части, которые в данный момент не выполняются, хранятся во вторичном запоминающем устройстве, чаще всего винчестере, и такая память называется виртуальной. Безусловно, перед выполнением необходимая часть программы должна быть перемещена в оперативную память. Данные функции выполняет ядро операционной системы (диспетчер виртуальной памяти, находящийся в микроядре). И для программы и для пользователя эти действия прозрачны. Естественно, на запросы к виртуальной памяти уходит гораздо большее время, нежели к ОЗУ.
Windows 2000/XP построены на архитектуре микроядра (microkernel architecture). ОС Windows 95/98 используют монолитное (monolithic) ядро. Микроядра являются сравнительно небольшими и модульными. Благодаря последнему новые устройства зачастую добавляются как модули, которые можно загружать/выгружать на этапе исполнения без перекомпиляции ядра. На архитектуре микроядра построены также FreeBSD и Mac OS X. Монолитные же ядра используются еще и в Linux. Они оптимизированы для более высокой производительности с минимальными контекстными переключениями. Такая архитектура упрощает поддержку кода ядра для разработчиков, но требует перекомпиляции ядра при добавлении новых устройств. Следует отметить, что описанные здесь различия являются «классическими», на практике монолитные ядра могут поддерживать модульность (что зачастую и происходит), а микроядра могут требовать перекомпиляции.
Архитектура Windows
Ядро UNIX/Linux имеет два вида исключений, которые обычно называют «oops» и «panic». Почти в каждой операционной системе паника происходит в тех случаях, когда ядро обнаруживает серьезную неисправность. Если система каким-либо образом повредила сама себя, ей требуется остановиться немедленно, пока она не произведет необратимых критических изменений (типа уничтожения файловой системы). Везде, где только возможно, UNIX/Linux пытается детектировать проблему и справиться с ней без остановки всей системы. Например, многие ситуации типа «oops» приводят к завершению процесса, который нормально запустился, но потом зациклил систему. Бывают, однако, ситуации, когда все настолько плохо, что полная паника является наилучшим выходом. Считается, что пользователи стабильных версий ядра не должны встречать ни «паник», ни «oops». Но в реальном мире они иногда происходят.
Недавно найденный «TF-баг» (смотрите здесь ) является хорошим примером паники. Процессор пытается передать управление процессу, которого не существует. Это приводит к краху всей системы. В данном случае, у системы нет другой альтернативы, чем запаниковать.
Ядро, поставляемое с Red Hat Linux 7.3 (и некоторыми другими дистрибутивами), содержит баг в файловой системе ext3. Эта ошибка приводит к «oops», завершая время от времени некоторые процессы (также этот баг приводит к замедлению всей системы). Хотя данная ошибка уже исправлена (патч есть и в обновлении от Red Hat), этот случай познакомил многих пользователей с ошибками типа «oops».
Источник
Основные семейства операционных систем
2.3. Операционные системы фирмы Microsoft
Вначале дадим характеристику Microsoft, содержащуюся на странице Википедии об этой фирме.
История операционных систем для персональных компьютеров IBM PC начинается в 1981 году, когда на этом оборудовании была установлена MS DOS 1.0. Правда, эта операционная система не вполне может считаться разработанной в Microsoft. Ее прототип был разработан вне фирмы Microsoft в Seattle Computer Production и дополнен интерпретатором для Бейсика Била Гейтса [17].
Следует заметить, что имелся предшественник Windows – графическая оболочка компании Visi Corp под названием Visi On [44]. Приведем пример интерфейса этой оболочки 1983 года (рис. 2.10).
А вот как выглядел для пользователей экран среды Windows 1.0, выпущенной два года спустя в 1985 году (рис. 2.11).
5. Windows СЕ. Эти операционные системы начали разрабатываться в 1996 году. В настоящий момент они созданы для разнообразных мобильных устройств. Последняя версия в этой линейке – Windows mobile 6.
В последнее время компания стала ответчицей в исках антимонопольной комиссии ЕС и конкурентов. Приведем два примера (Википедия).
В марте 2004 года Еврокомиссия признала американскую компанию виновной в использовании своего доминирующего положения на европейском рынке программного обеспечения и наложила на компанию штраф в размере 497 млн евро, потребовав от Microsoft предоставить сторонним разработчикам информацию о своих продуктах, чтобы они смогли беспрепятственно выпускать совместимые программы. После того, как Microsoft не подчинилась данному решению, в июле 2006 года она вновь была оштрафована – на этот раз на 280,5 млн евро, после чего исполнила решение Еврокомиссии.
2.4. Отличия семейства UNIX/Linux от операционных систем Windows и MS DOS
Источник
Семейства операционных систем: DOS, OS/2, UNIX, WINDOWS.
Сегодня мы поговорим на такие темы, как: Семейства операционных систем: DOS, OS/2, UNIX, WINDOWS.
ОС семейства DOS.
Первый представитель этого семейства – система MS-DOS (Microsoft Disk Operating System – дисковая операционная система фирмы Microsoft) была выпущена в 1981 году в связи с появлением компьютеров IBM PC.
ОС семейства DOS обладают следующими характерными особенностями:
Пример
ОС MS-DOS 6.22., MS DOS 8.0 интегрированная в Windows ME, DOS PC 2000.
Начиная с версии 4.0, MS-DOS включал DOS Shell – программу диспетчера файлов с квазиграфическим текстовым пользовательским интерфейсом (TUI), который показал меню, windows разбиения, цветные темы, поддержку мыши и ярлыки программы, используя графику символьного режима.
ОС семейства OS/2
ОС OS/2 (Operating System / 2) была разработана фирмой IBM в 1987 году в связи с созданием нового семейства ПК PS/2.
ОС семейства OS/2 обладают следующими характерными особенностями:
Пример
Использования OS/2: OS/2 WSeB 4.5x в качестве файлового сервера.
ОС семейства UNIX
ОС UNIX была разработана Кеном Томпсоном – сотрудником фирмы Bell Laboratories концерна AT&T в 1969 году для различных компьютеров: от суперкомпьютера до миникомпьютеров. С тех пор было создано большое количество различных UNIX-систем. Юридически лишь некоторые из них имеют полное право называться «UNIX»; остальные же, хотя и используют сходные концепции и технологии, объединяются термином «UNIX-подобные». В ходе разработки Unix-систем был создан язык СИ.
ОС семейства UNIX обладает следующими характерными особенностями:
Linux (полное название GNU/Linux) – это UNIX-подобная ОС. Linux свободно распространяемая ОС, первоначально разработанная Линусом Торвальдсом. Первая официальная версия объявлена 5 октября 1991 года.
Версии: Debian GNU/Linux – не имеющий национальной принадлежности международный дистрибутив (а также его ответвления, включая сверх-популярные Ubuntu, Kubuntu, Xubuntu), американский Red Hat и его наследник Fedora, французско-бразильский Mandriva, бывшие Mandrake и Conectiva.
ОС семейства WINDOWS
История Windows началась в 1985 году, когда появилась первая версия системы (оболочки). Через несколько лет вышла вторая версия, но особой популярности система Windows не завоевала.
В 1990 году вышла Windows 3.0, которая стала применяться на многих ПК (графический интерфейс, многозадачный режим, появление множества программ, работающих под управлением Windows).
Последующие версии Windows были направлены на повышение надежности, на поддержку средств мультимедиа и работу в компьютерных сетях.
Всех представителей ОС Windows можно разделить на две линейки:
Только в семействе Windows NT представлены операционные системы для серверов.
ОС семейства Windows обладают следующими характерными особенностями:
Представители семейства Windows:
Windows 3.х (3.0/3.1/3.11). Операционные оболочки, выполняемые под управлением MS-DOS.
Windows 95 (первая ОС). Изменился интерфейс, выросла скорость работы программ, возможность автоматической настройки дополнительного оборудования, возможность работы с Интернет.
Windows 95 OSR2. Исправлены многие ошибки Windows 95, добавлена поддержка нескольких новых устройств, возможность использовать файловую систему FAT32.
Windows 98. Сохранился внешний интерфейс, переработана внутренняя структура, много внимания уделено работе с Интернет, возможность работы с несколькими мониторами.
Windows 98 SE. В состав включена 5-ая версия Internet Explorer, обновленная система соединения с Интернет, многочисленные исправления ошибок и новая библиотека драйверов.
Windows NT (1992г. — NT 3.0, 1994г. — NT 3.5, 1996г. — NT 4.0), разрабатывались с целью повышения надежности и мощности сетевой работы.
Выпускается в двух модификациях:
Windows 2000 (NT 5.0). Разработана на основе Windows NT и унаследовала от нее высокую надежность и защищенность информации от постороннего вмешательства.
Windows Me. Наследница Windows 98, приобрела новые возможности: улучшенная работа с мультимедиа, возможность записи не только аудио, но и видеоинформации, мощные средства восстановления информации после сбоев.
Windows XP. Появление 64-разрядной версии, первая ОС с полностью настраиваемым интерфейсом, поддержка записи CD-R и CD-RW дисков на уровне самой ОС и др.
Windows CE. Предназначена исключительно для установки на «карманные» компьютеры.
Windows Server 2003. Содержит все функции, необходимые для серверной ОС Windows, направление на безопасность, надежность, доступность и масштабируемость. Версии: Standart Edition, Enterprise Edition, Datacenter Edition, Web Edition.
Windows Vista. План выпуска версий Windows Vista оптимизирован для ключевых категорий пользователей – отдельных пользователей, малых предприятий, средних и крупных организаций, а также для соответствующих этим категориям схем использования ПО. Основной задачей семейства Windows Vista является наиболее точное соответствие набора предлагаемых программных продуктов потребностям потребителей.
Windows Server 2008 (кодовое имя «Longhorn Server») – новая версия серверной операционной системы от Microsoft. Эта версия должна стать заменой Windows Server 2003 как представитель операционных систем поколения Vista.
Windows 7 (ранее известная под кодовыми названиями Blackcomb и Vienna) – версия компьютерной операционной системы семейства Windows, следующая за Windows Vista.
Источник
Операционные системы типа UNIX, Windows. Операционная система Windows 2000/2003: основные свойства Windows, файловые системы Window. Операционные системы Linux, Unix
Операционная система UNIX — одна из самых популярных в мире операционных систем благодаря тому, что ее сопровождает и распространяет большое число компаний. Была разработана Кеном Томпсоном — сотрудником фирмы Bell Laboratories концерна AT&T в 1969 году как многозадачная система для миникомпьютеров и мэйнфреймов. UNIX вобрала в себя целый ряд новых разработок в области операционных систем. В принципе, она создавалась как операционная система для исследователей. При разработке UNIX была поставлена задача создать систему, которая могла бы удовлетворять непрерывно изменяющимся требованиям сотрудников, занимающихся разнообразными исследованиями.
В 1970 году Деннис Ритчи вместе с Кеном Томпсоном переписали код системы с машинно-зависимого языка ассемблера (на котором тогда писались все операционные системы) на язык высокого уровня — Си. Это позволило им написать всего одну версию операционной системы UNIX, которую потом можно было компилировать Си-компиляторами на различных машинах. Операционная система UNIX стала, по сути дела, мобильной, то есть способной работать на различных типах машин практически без перепрограммирования. Кроме того, она позволяет иметь несколько видов Shell, т. е. интерфейсов взаимодействия между ядром и пользователем или интерпретаторов.
В 1974 году UNIX была передана университетам «для образовательных целей», а несколько лет спустя нашла коммерческое применение. Сейчас существуют версии UNIX для многих систем, начиная от PC (персонального компьютера) до суперкомпьютеров, таких, как Cray Y-MP.
Для проведения сложных экспериментальных исследований, связанных с большим количеством сложных вычислений над большим объемом данных, требуются значительные системные ресурсы. В этом случае многие UNIX системы позволяют организовать кластер, т. е. многомашинный вычислительный комплекс, где все ресурсы компьютеров (дисковое пространство, память, ресурсы процессора) являются разделяемыми и доступными для любого пользователя в соответствии с его правами. В такой системе существует возможность постоянного наращивания мощности кластера, путем подсоединения дополнительных компьютеров, а работа в ней при этом остается для пользователя абсолютно «прозрачной», как если бы он работал на одном компьютере с огромными ресурсами.
Основные компоненты ОС UNIX
core — ядро системы;
kernel — оболочка ядра системы;
development system — средства разработки программ;
manuals — экранные руководства пользователя и программиста;
VP/ix — эмулятор MS-DOS;
UUCP — средства передачи данных по каналам связи;
STREAMS — механизм сетевых протоколов;
TCP/IP — сетевой протокол;
NFS — сетевая файловая система;
X Window — средства сетевых графических интерфейсов пользователя (GUI);
Looking Glass — командная оболочка на базе GUI.
Ядро управляет основными ресурсами (процессор, оперативная память) и периферийными устройствами обмена и хранения данных (магнитные диски, магнитные ленты, принтеры, терминалы, линии связи и т. д.). Одной из функций ядра ОС UNIX является программная поддержка файловой системы (ФС). Командный интерпретатор Shell обслуживает терминал пользователя и транслирует команды в запрос к ядру ОС. ^
Основные понятия, связанные с работой пользователя в ОС UNIX
Начало и конец сеанса работ. Каждый пользователь системы имеет:
• имя пользователя (для установления взаимодействия пользователей и начисления расходов);
• пароль пользователя (для контроля входа в систему и защиты своих данных).
Пользователи могут быть объединены в группы (например, во время работы над совместными проектами) для разделения общих ресурсов, тогда еще есть имя группы пользователей [2].
Один пользователь, называемый superuser, является администратором системы (его имя root). В частности, он «заводит» (регистрирует) всех прочих пользователей.
Системное администрирование. В функции администратора системы UNIX входит повседневное управление системой во всех аспектах ее существования, таких, как подключение новых пользователей, управление файловой системой, изменение конфигурации и других. Следует заметить, что на персональных ЭВМ эти функции могут исполняться прикладным программистом.
Имеется ряд команд, расположенных обычно в каталоге /etc, рассчитанных на управление системой, таких, как fsck, mount, chown и т. д. Как правило, каталог /etc доступен только суперпользователю, так что системный администратор должен обладать правами суперпользователя.
Спецпользователи. Это пользователи, выполняющие действия над системой, недоступные обычным, пользователям. Один из них, имеющий неограниченные полномочия, называется суперпользователем и имеет обычно имя root. Разные системы могут иметь и других спецпользователей, например пользователя с именем bin, обладающих меньшими полномочиями, чем суперпользователь.
Имеются команды, которые может выполнить только суперпользователь, в частности установка даты командой date, монтаж файловой системы командой mount, создание специальных файлов командой mknod и др.
Стать суперпользователем можно несколькими способами. Первый — загрузить систему в режиме единственного пользователя. Другой, применяемый на многопользовательской системе, — выполнить команду SU (superuser). Администратору системы рекомендуется входить в систему как обычному пользователю и только в случае необходимости становиться временно суперпользователем по команде SU.
Пользователи и группы. Имеется два файла с именами passwd и group, находящихся в каталоге /etc, которые содержат информацию о пользователях и группах пользователей соответственно. Одна запись в файле passwd соответствует одному пользователю и имеет следующие текстовые поля, разделенные символом двоеточия:
пароль пользователя (в закодированном виде);
целочисленный идентификатор пользователя;
целочисленный идентификатор группы;
комментарий, который содержит сведения о месте работы пользователя и может использоваться командой finger и учетными программами;
интерпретатор команд пользователя.
Управление операционной системой. Средства управления операционной системой – аппаратно-зависимы, однако приводимое ниже описание этих средств являются типичными для большинства версий ОС UNIX.
Каждый том имеет загрузочную область, содержащую целое, возможно нулевое, число логических блоков. Загрузочная область полностью находится вне какой-либо файловой системы. Изменение ее размера возможно только при переинициализации тома.
Каждая загрузочная область может содержать только одну ОС (или часть одной ОС). ОС состоит из последовательности кодовых сегментов, расположенных в загрузочной области одного или нескольких томов, причем граница между томами может быть внутри некоторого сегмента.
ОС хранится в загрузочном формате. Помимо загрузочной области, она может также располагаться в ряде обычных файлов, каждый из которых содержит целое число кодовых сегментов, заканчивающихся двумя нулевыми байтами. Этот фрагмент не является загрузочным, однако он может быть преобразован в загрузочный командой /lbin/oscp.
Содержание загрузочной области в действительности состоит из одного или нескольких ОС-файлов. Каждый ОС-файл начинается с заголовка, содержащего файл загружаемости, номер тома и число томов, занятых операционной системой. Системный загрузчик загружает ОС-файл только в том случае, если флаг установлен в состояние загружаемости. Установку состояния ОС-файлов можно выполнить специальной командой /lbin/osmark с параметром, указывающим имя сцецфайла для устройства, на которое поставлен том с загрузочной областью.
Ядро ОС UNIX. Как и в любой другой многопользовательской операционной системе, обеспечивающей защиту пользователей друг от друга и защиту системных данных от любого непривилегированного пользователя, в ОС UNIX имеется защищенное ядро, которое управляет ресурсами компьютера и предоставляет пользователям базовый набор услуг.
Удобство и эффективность современных вариантов ОС UNIX не означает, что вся система, включая ядро, спроектирована и структуризована наилучшим образом. ОС UNIX развивалась на протяжении многих лет. Наращивались возможности системы, и, как это часто бывает в больших системах, качественные улучшения структуры ОС UNIX не поспевали за ростом ее возможностей.
В результате ядро большинства современных коммерческих вариантов ОС UNIX представляет собой не четко структурированный монолит большого размера. По этой причине программирование на уровне ядра ОС UNIX продолжает оставаться искусством (если не считать отработанной и понятной технологии разработки драйверов внешних устройств). Эта недостаточная технологичность организации ядра ОС UNIX многих не удовлетворяет.
Общая организация традиционного ядра ОС UNIX. Одно из основных достижений ОС UNIX состоит в том, что система обладает свойством высокой мобильности. Смысл этого качества состоит в том, что вся операционная система, включая ее ядро, сравнительно просто переносится на различные аппаратные платформы. Все части системы, не считая ядра, являются полностью машинно-независимыми. Эти компоненты-аккуратно написаны на языке Си, и для их переноса на новую платформу (по крайней мере, в классе 32-разрядных компьютеров) требуется только перекомпиляция исходных текстов в коды целевого компьютера.
Наибольшие проблемы связаны с ядром системы, которое полностью скрывает специфику используемого компьютера, но само зависит от этой специфики. В результате продуманного разделения машинно-зависимых и машинно-независимых компонентов ядра удалось добиться того, что основная часть ядра не зависит от архитектурных особенностей целевой платформы, написана полностью на языке Си и для переноса на новую платформу нуждается только в перекомпиляции.
Однако сравнительно небольшая часть ядра является машинно-зависимой и написана на смеси языка Си и языка ассемблера целевого процессора. При переносе системы на новую платформу требуется переписывание этой части ядра с использованием языка ассемблера и учетом специфических черт целевой аппаратуры.
Машинно-зависимая часть традиционного ядра ОС UNIX включает следующие компоненты:
раскрутки и инициализации системы на низком уровне (пока это зависит от особенностей аппаратуры);
первичной обработки внутренних и внешних прерываний;
управления памятью (в той части, которая относится к особенностям аппаратной поддержки виртуальной памяти);
переключения контекста процессов между режимами пользователя и ядра; • связанные с особенностями целевой платформы части драйверов устройств.
Основные функции. К основным функциям ядра ОС UNIX принято относить следующие:
инициализации системы — функция запуска и раскрутки. Ядро системы обеспечивает средство раскрутки (bootstrap), которое обеспечивает загрузку полного ядра в память компьютера и запускает ядро;
Управление процессами и нитями – функция, завершения и отслеживания существующих процессов и нитей («процессов», выполняемых на общей виртуальной памяти). Поскольку ОС UNIX является мультипроцессорной операционной системой, ядро обеспечивает разделение между запушенными процессами времени процессора (или процессоров в мультипроцессорных системах) и другими ресурсами копьютера.
Управление памятью – функция отображения практически неограниченной виртуальной памяти процессоров в физическую оперативную память компьютера, которая имеет ограниченные размеры. Соответствующий компонент ядра обеспечивает разделяемое использование одних и тех же областей оперативной памяти несколькими процессорами с использованием внешней памяти;
Программного интерфейса – функция, обеспечивающая доступ к возможностям ядра со стороны пользовательских процессов на основе механизма системных вызовов, оформленных в виде библиотеки функцией.
Принципы взаимодействия с ядром. В любой операционной системе поддерживается некоторый механизм, который позволяет пользовательским программам обращаться за услугами ядра ОС. В операционных системах наиболее известной советской вычислительной машины БЭСМ-6 соответствующие средства общения я ядром назывались экстракодами, в операционных системах IBM они назывались системными макрокомандами и т.д. В ОС UNIX также средства называются системными вызовами.
Конкретные механизмы возбуждения внутренних прерываний по инициативе пользовательской программы различаются в разных аппаратных архитектурах. Поскольку OC UNIX стремится обеспечить среду, в которой пользовательские программы могли бы быть полностью мобильны, потребовался дополнительный уровень, скрывающий особенности конкретного механизма возбуждения внутренних прерываний. Этот механизм обеспечивается так библиотекой системных вызовов.
Для пользователя библиотека системных вызовов представляет собой обычную библиотеку заранее реализованных функций системы программирования Си. При программировании на языке Си использование любой функции из библиотеки системных вызовов ничем не отличается от использования любой собственной или библиотечной Си-функции. Однако в нутрии конкретной библиотеки системных вызовов содержится код, являющийся, вообще говоря, специфичным для данной аппаратной платформы.
Принципы обработки прерываний. Конечно, применяемы в операционной системе механизм обработки внутренних и внешних прерываний в основном зависят от того, какая аппаратная поддержка обработки прерываний, конкретной аппаратной платформой. К настоящему моменту (и уже довольно давно) основные производители компьютеров де-факто пришли к соглашению о базовых механизмах прерываний.
Дело в операционной системы разместить в соответствующих ячейках оперативной памяти программный код, обеспечивающий начальную обработку прерывания и инициирующий полную обработку.
В основном ОС UNIX поддерживается общего подхода. В векторе прерывания, соответствующем внешнему прерыванию, т.е прерыванию от некоторого внешнего устройства, содержаться команды, устанавливающие уровень выполнения процессора (уровень выполнения определяет, на какие внешние прерывания процессор должен реагировать незамедлительно) и осуществляющие переход на программу полной обработки прерывания в соответствующем драйвере устройства. Для внутреннего прерывания (например, прерывания по инициативе программы пользователя при отсутствии в основной памяти нужной страницы виртуальной памяти при возникновении исключительной ситуации в программе пользователя и т.д.) или прерывания от таймера в векторе прерывания содержится переход на соответствующую программу ядра ОС UNIX.
Операционная оболочка Windows 3.1, Операционная оболочка Windows 3.1 — надстройка над DOS, обеспечивающая более удобный и наглядный интерфейс для пользователей (графический интерфейс), т. е. набор средств для вывода изображений на экран и манипулирования ими, построения меню, окон на экране и т.д., мультипрограммирования (т. е. возможность одновременного выполнения нескольких программ), имеющая расширенные средства для обмена информацией между программами [16].
В течение долгих лет с момента своего появления персональные компьютеры (IBM-совместимые) обходились без специальных «пользовательских оболочек», работая непосредственно под управлением операционной системы (MS-DOS, DR DOS, PC DOS. ).
Версия 3.0 оболочки Windows (и появившаяся следом 3.1) использует совершенно другие принципы в части интерфейса пользователя с ЭВМ. (Можно считать эти принципы новыми, но машины фирмы Apple строятся на этих принципах уже в течение многих лет.) Основная идея, заложенная в основу оболочки Windows, — естественность представления информации. Информация должна представляться в той форме, которая обеспечивает наиболее эффективное усвоение этой информации человеком. Windows 3.1 представляет собой существенный шаг вперед по сравнению с предыдущими интерфейсами пользователя с ЭВМ. Наиболее важными отличительными чертами ее являются следующие:
Основные преимущества Windows:
1. Независимость программ от внешних устройств (монитора, клавиатуры, принтера). Драйверы для поддержки этих устройств входят в состав Windows или поставляются имеете с указанными устройствами.
Windows — программы могут обращаться к внешним устройствам только через Windows, a DOS — программы обращаются к устройствам, минуя DOS. Это снимает с разработчиков проблему совместимости с конкретным внешним устройством.
2. Имеются средства для построения пользовательского интерфейса программ (окна, меню, запросы, списки программ и т. д.).
3. Доступность всей оперативной памяти (а не 640 Кбайт, как в DOS).
4. Динамическое подключение библиотек (dll-файлов). Библиотеки расширяют возможности Windows и могут быть вызваны автоматически любой Windows-программой.
5. Обмен данным между приложениями Windows.
6. Использование масштабируемых шрифтов типа True Type.
7. Организация встроенных справочников программ,
8. Единый пользовательский интерфейс.
9. Многозадачность — одновременное выполнение нескольких программ, переключение с одной задачи на другую, управление приоритетами выполняемых программ.
10. Совместимость с DOS-приложениями. Многие DOS-программы запускаются под управлением Windows, но работают медленнее.
11- Поддержка мультимедиа (подключение CD-ROM, медиапреера, микрофона, видеокамеры и других средств обмена информацией с окружающей средой).
Окна в Windows. Новинкой оболочки Windows является окно как элемент экрана, что мы видим в среде Windows, мы видим через окна, начиная от отдельных приложений, работающих под управлением Windows, и кончая самой оболочкой.
Каждое окно в обязательном порядке содержит поле заголовка и Рабочее поле (или поле индикации).
Источник
Обзор
операционной системы UNIX
Операционная
система UNIX представляет собой интерактивную
систему, используемую для одновременной
поддержки нескольких процессов и
нескольких пользователей. В ОС UNIX есть
достаточное количество средств,
позволяющих программистам и совместно
работать, и управлять использованием
общей информации.
ОС
UNIX предназначена для опытных программистов.
Это мощная и гибкая система. Она
характеризуется небольшим количеством
базовых элементов, которые можно
комбинировать бесконечным числом
способов, чтобы приспособить их для
конкретного приложения. Одно из основных
правил системы UNIX заключается в том,
что каждая программа должна выполнять
всего одну функцию, но делать это хорошо.
В системе устранена бесполезная
избыточность. Напри-
мер,
зачем писать сору, когда достаточно ср?
Операционную
систему UNIX можно рассматривать в виде
пирамиды (рис. 3.7). У основания пирамиды
располагается аппаратное обеспечение,
состоящее из ЦП, памяти, дисков, терминалов
и других устройств. На аппаратном
обеспечении работает система UNIX .
Ее
функция заключается в управлении
аппаратным обеспечением и предоставлении
всем программам системных вызовов. Эти
системные вызовы позволяют программам
создавать процессы, файлы и прочие
ресурсы и управлять ими.
Программы
обращаются к системным вызовам, помещая
аргументы в регистры ЦП и выполняя
команды прерывания для переключения
из пользовательского режима в режим
ядра и передачи
управления
операционной системе UNIX .
Помимо
ОС и библиотеки системных вызовов, все
версии UNIX содержат большое количество
стандартных программ, некоторые из них
описываются стандартом POSIX 1003.2, тогда
как другие могут различаться в разных
версиях системы. К этим программам
относятся командный процессор (оболочка),
компиляторы, редакторы, программы
обработки текста и утилиты для работы
с файлами. Именно эти программы и
запускаются пользователем с терминала.
Таким
образом, существует 3 интерфейса в ОС
UNIX : интерфейс системных вызовов,
интерфейс библиотечных функций и
интерфейс, образованный набором
стандартных обслуживающих программ.
Последний интерфейс большинство
пользователей считает системой
UNIX
. В действительности он не имеет
практически никакого отношения к самой
системе и легко может быть заменен. В
некоторых версиях системы, например,
этот ориентированный на ввод с клавиатуры
интерфейс пользователя был заменен
графическим интерфейсом, ориентированным
на использование мыши, для чего не
потребовалось никаких изменений в самой
системе. Именно эта гибкость сделала
систему UNIX столь популярной и позволила
ей пережить многочисленные изменения
технологии, лежащей в ее основе.
У
многих версий системы UNIX имеется
графический интерфейс пользователя,
сходный с популярными интерфейсами,
применяемыми на компьютерах Macintosh и в
системе Windows . Пользовательский интерфейс
UNIX состоит не только из оболочки, но
также из большого числа стандартных
обслуживающих программ, называемых
утилитами. Стандарт POSEX 1003.2 определяет
синтаксис и семантику около 100 из этих
программ. Идея стандартизации этих
программ
заключается
в том, чтобы можно было писать оболочки,
которые работали бы на всех системах
UNIX . Помимо этих стандартных утилит,
существует еще масса прикладных программ,
таких как web -браузеры, программы просмотра
изображений и т. д.
Процессы
UNIX очень похожи на последовательные
классические процессы, которые были
рассмотрены выше. Каждый процесс
запускает одну программу и изначально
получает один поток управления. У
процесса есть один счетчик команд,
указывающий на следующую исполняемую
команду процессора. Большинство версий
UNIX позволяют процессу после того, как
он запущен, создавать дополнительные
потоки.
UNIX
представляет собой многозадачную
систему, так что несколько независимых
процессов могут работать одновременно.
У каждого пользователя может быть
одновременно несколько активных
процессов, так что в большой системе
могут одновременно работать сотни и
даже тысячи процессов. На большинстве
однопользовательских рабочих станций
работают десятки фоновых процессов.
Они запускаются автоматически при
загрузке системы. Файловая система в
UNIX — иерархическая, с файлами и каталогами.
Все диски монтируются в единое дерево
каталогов, начинающееся в одном корне.
Отдельные файлы могут быть связаны с
любым каталогом дерева.
Обзор
операционной системы Linux
Linux
— многозадачная и многопользовательская
операционная система для образования,
бизнеса, индивидуального программирования.
Linux изначально был написан Линусом
Торвальдсом. Вначале Linux разрабатывался
для работы на 386 процессоре. Одним из
первых проектов Линуса Торвальдса была
программа, которая могла переключаться
между процессами, один из которых печатал
АААА, а другой — ВВВВ. Впоследствии эта
программа выросла в Linux.
Linux
поставляется АБСОЛЮТНО БЕСПЛАТНО. Linux
— очень мощная и стабильная ОС. Использование
его в Сети оправдывает себя, да и взломать
его не так уж и легко.
На
сегодняшний день, развитие Linux идет по
двум ветвям. Первая, с четными номерами
версий(2.0, 2.2, 2.4), считается более
стабильной, надежной версией Linux. Вторая,
чьи версии нумеруются нечетными
номерами(2.1, 2.3), является более дерзкой
и быстрее развивающейся и более богатой
ошибками.
В
Linux нет разделения на диски С,D, и процесс
общения с устройствами очень удобен.
Все устройства имеют собственный
системный файл, все диски подключаются
к одной файловой системе и выглядит это
все как бы монолитно, едино. Четкая
структура каталогов позволяет находить
любую информацию мгновенно. Для файлов
библиотек — свой каталог, для запускаемых
файлов — свой, для файлов с настройками
— свой, для файлов устройств – свой.
Модульность
ядра позволяет подключать любые сервисы
ОС без перезагрузки компьютера. Кроме
того, вы можете переделать само ядро
ОС.
В
ОС Linux очень умело используется идея
многозадачности, т.е. любые процессы в
системе выполняются одновременно.
Огромное количество настроек позволяет
изменить внешний (да и внутренний) вид
ОС. В Linux у вас есть выбор в использовании
графической оболочки, есть несколько
офисных пакетов, программы-серверы,
файерволы…
В
1998 Linux была самой быстро развивающейся
операционной системой для серверов,
распространение которой увеличилось
в том же году на 212 %. Сегодня пользователей
Linux насчитывается более 20,000,000. Под Linux
существует множество приложений,
предназначенных как для домашнего
использования, так и для полностью
функциональных рабочих станций UNIX и
серверов Internet.
Итак,
Linux — это:
*
бесплатный (вернее, свободно
распространяемый) клон Юникс;
*
операционная система с истинной
многозадачностью;
*
ОС, которую каждый ее «пользователь»
может модифицировать, так как можно
найти исходные коды практически для
любой составляющей ее части;
*
которая настраивается именно так, как
вам хочется, а не как предпочитает
производитель.
Обзор
операционной системы Windows
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #