sonyps4.ru

Особенности работы операционной системы linux. Чем является "Линукс"

Характерные особенности Linux как ОС.

  • многозадачность: много программ выполняются одновременно;
  • многопользовательский режим: много пользователей одновременно работают на одной и той же машине;
  • защищенный режим процессора (386 protected mode);
  • защита памяти процесса; сбой программы не может вызвать зависания системы;
  • экономная загрузка: Linux считывает с диска только те части программы, которые действительно используются для выполнения;
  • разделение страниц по записи между экземплярами выполняемой программы. Это значит, что процессы-экземпляры программы могут использовать при выполнении одну и ту же память. Когда такой процесс пытается произвести запись в память, то 4-x килобайтная страница, в которую идет запись, копируется на свободное место. Это свойство увеличивает быстродействие и экономит память;
  • виртуальная память со страничной организацией (т.е. на диск из памяти вытесняется не весь неактивный процесс, а только требуемая страница); виртуальная память в самостоятельных разделах диска и/или файлах файловой системы; объем виртуальной памяти до 2 Гбайт; изменение размера виртуальной памяти во время выполнения программ;
  • общая память программ и дискового кэша: вся свободная память используется для буферизации обмена с диском;
  • динамические загружаемые разделяемые библиотеки;
  • дамп программы для пост-мортем анализа: позволяет анализировать отладчиком не только выполняющуюся, но и завершившуюся аварийно программу;
  • сертификация по стандарту POSIX.1, совместимость со стандартами System V и BSD на уровне исходных текстов;
  • через iBCS2-согласованный эмулятор совместимость с SCO, SVR3, SVR4 по загружаемым программам,
  • наличие исходного текста всех программ, включая тексты ядра, драйверов, средств разработки и приложений. Эти тексты свободно распространяются. В настоящее время некоторыми фирмами для Linux поставляется ряд коммерческих программ без исходных текстов, но все, что было свободным так и остается свободным;
  • управление заданиями в стандарте POSIX;
  • эмуляция сопроцессора в ядре, поэтому приложение может не заботиться об эмуляции сопроцессора. Конечно, если сопроцессор в наличии, то он и используется;
  • поддержка национальных алфавитов и соглашений, в т.ч. для русского языка; возможность добавлять новые;
  • множественные виртуальные консоли: на одном дисплее несколько одновременных независимых сеансов работы, переключаемых с клавиатуры;
  • поддержка ряда распространенных файловых систем (MINIX, Xenix, файловые системы System V); наличие собственной передовой файловой системы объемом до 4 Терабайт и с именами файлов до 255 знаков;
  • прозрачный доступ к разделам DOS (или OS/2 FAT): раздел DOS выглядит как часть файловой системы Linux; поддержка VFAT (WNT, Windows 95);
  • специальная файловая система UMSDOS, которая позволяет устанавливать Linux в файловую систему DOS;
  • доступ (только чтение) к файловой системе HPFS-2 OS/2 2.1;
  • поддержка всех стандартных форматов CD ROM;
  • поддержка сети TCP/IP, включая ftp, telnet, NFS и т.д.

Как выглядит одновременное выполнение нескольких программ.

Так называемая виртуальная мультиконсоль дает возможность на одном дисплее организовать работу нескольких консолей. На первой консоли запускается процесс трансляции. Комбинацией клавиш Alt-F2 следует переход на вторую консоль. Трансляция продолжается, но при этом первая консоль на экране дисплея заменяется новой картинкой второй консоли. В которой запускается, например, редактор текста. Комбинацией Alt-F3 следует переход на третью консоль, в которой запускается отладчик и т.д. Обычно в системе 8 консолей, но можно установить до 64-х. В любой момент времени можно переключиться на любую консоль.

На отдельной консоли может работать как текстовая, так и графическая программа.

На одной из свободных консолей можно запустить оконную графическую систему X Window System. Открываете окно на экране и играете в DOOM. Можно через сеть с партнером. А в других окнах - база данных, почта, редактор, трансляция и т.д.

Таким образом, одновременно работает много консолей, а на одной из консолей еще и много окон X Window System.

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

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

Как несколько пользователей работают на одной и той же машине.

Пользователь получает доступ к системе в результате регистрации. На консоль система выводит приглашение login:, а пользователь в ответ вводит свое имя и пароль доступа. После проверки прав доступа система выдает приглашение вводить команды на выполнение программ, принимает команды и выполняет их, например:

Консоль tty1 Консоль tty2 ______________________________ ________________________________ / \ / \ | tty1 eugene.mplik.ru login: root | tty2 eugene.mplik.ru login: eugene | | Password: xxxxxxxx | Password: xxxxxxxx | | | | | Linux 1.3.68 | Linux 1.3.68 | | | | | eugene.mplik.ru > cal 02 1996 | eugene.mplik.ru $ telnet elvis.ru 2| | Февраля 1996 | Connected to elvis.ru. | | Вс Пн Вт Ср Чт Пт Су | Англо-русский,русско-английский сло| | 1 2 3 | .e or . - выход | | 4 5 6 7 8 9 10 | .h - помощь | | 11 12 13 14 15 16 17 | tr>unix | | 18 19 20 21 22 23 24 | операционная система; первоначально| | 25 26 27 28 29 | разработанная в Bell Laboratories | | | для мини-ЭВМ серии PDP-11 и получив| | eugene.mplik.ru > | различных классов и типов. Особенно| \ ______________________________ / \ ________________________________ /

Обычная практика состоит в том, что пользователь регистрируется на разных виртуальных консолях под разными именами. Например, для выполнения административных функций на консоли 1 пользователь регистрируется как root, для выполнения прикладной программы как eugene на консоли 2, для запуска игрушки как games на консоли 3 и т.д. Смысл такого подхода в том, что различные "пользователи" обладают различными индивидуальностями в системе - правами доступа к ресурсам, начальными установками, файлами и т.д.

Если машина включена в сеть, то возможна удаленная регистрация пользователя с машины A в машину B, даже тогда, когда эти машины расположены на разных континентах (связь машин в планетарном масштабе обеспечивает сеть Internet). Пользователь на машине A выдает команду типа

Telnet машина_B.фирма_B.город_B.страна_B

и через секунду-две видит на экране приглашение

Машина_B login:

вводит свое имя и пароль и оказывается на текущей консоли в машине B (если пароль подтвердил права доступа). С другой консоли возможен вход другую машину или повторно в машину B.

Находясь в машине B, пользователь может выдать команду

Telnet машина_A.фирма_A.город_A.страна_A

и зарегистрироваться еще раз в собственной машине A из машины B.

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

Eugene.mplik.ru $ telnet elvis.ru 2345 Connected to elvis.ru. Англо-русский,русско-английский словарь.e or . - выход.h - помощь tr>unix операционная система; первоначально разработанная в Bell Laboratories для мини-ЭВМ серии PDP-11 и получившая широкое распространение на ЭВМ различных классов и типов. Особенности UNIX: переносимость программ между реализациями UNIX на различных ЭВМ; ориентация на диалоговый режим работы и использование, в первую очередь, программистами для разработки программ; открытость для внесения расширений. tr>.e Connection closed by foreign host. eugene.mplik.ru $

Помимо сетевого подключения машина может иметь десятки терминалов, подключенных через последовательные порты. Терминал представляет собой экран и клавиатуру, т.е. консоль, на которой пользователь может регистрироваться обычным образом. Только в этом случае консоль не виртуальная, а представлена специализированным отдельным устройством. Терминалом может служить персональный компьютер, например, работающий под DOS PC 286, на котором выполняется программа, имитирующая логику работы консоли (прозрачный ввод с местной клавиатуры в Linux-машину и прозрачный вывод на местный дисплей данных от Linux-машины).

Сеть...___________________________... | ____|____ ____ | | | | дисплей | Linux |---|____| с виртуальными | | /___/ консолями |---------| |_________| порты /|\ / | \ / | \ линии связи / | \ ____ ____ ____ | | | | | | терминалы |____| |____| |____| /___/ /___/ /___/

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

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

Насколько полно документирована ОС Linux.

ОС Linux документирована так полно, как ни одна из коммерческих ОС. По Linux имеются книги, руководства, справочники и то, что недоступно в коммерческой системе - полные исходные тексты ОС с пояснениями и комментариями.

Объем документации по Linux непрерывно пополняется и расширяется, динамично отслеживая развитие системы.

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

Документация написана на английском языке. Существуют достаточно полные версии документации на немецком и японском языках. В Internet доступен русский перевод книги Linux Installation and Getting Started - ИНСТАЛЛЯЦИЯ LINUX И ПЕРВЫЕ ШАГИ. Может пригодиться ряд книг по системе Unix, вышедших на русском языке. Некоторые издания по Unix существуют в электронном виде на серверах Релкома.

На русском языке имеется справочник по стандарту POSIX: Беляков М.И., Рабовер Ю.И., Фридман А.Л. Мобильная операционная система: Справочник. - М.: Радио и связь, 1991. - 208с. Для начинающего пользователя он труден, но полезен для программиста, знакомого с концептуальными основами Unix и открытых систем.

Описания на русском языке архитектуры Unix, принципов построения сети на основе протоколов TCP/IP и ряда смежных вопросов существуют в виде файлов на серверах сети Релком.

Что касается оригинальной документации по Linux , то можно выделить следующие основные, но не исчерпывающие формы: книги, руководства HOWTO, справочники FAQ, гипертекстовые справочники INFO, оперативные руководства MAN, описания программных пакетов. Книги распространяются в печатном и электронном виде, остальные формы, как правило, электронные, т.е. представленные в виде файлов в составе дистрибутивов системы Linux и пакетов программ, распространяемых через Internet и на компакт-дисках.

Часто один и тот же электронный документ доступен в виде нескольких файлов одного содержания, но разных форматов, например, ascii, postsсript, html. Один формат удобен для просмотра и поиска ключевых слов на текстовом экране дисплея, другие форматы приспособлены для печати с типографским качеством на лазерном принтере или для просмотра на графическом экране.

В группе comp.os.linux.answers сети новостей Usenet регулярно публикуются последние версии некоторых документов по Linux (одновременно они появляются на серверах Internet, откуда их можно получить различными способами, в т.ч. по электронной почте, например, через [email protected]).

Для примера вот список (неполный) руководств HOWTO:

  • Bootdisk HOWTO
  • CDROM HOWTO
  • Commercial HOWTO
  • Cyrillic HOWTO
  • DOSEMU HOWTO
  • Distribution HOWTO
  • Ethernet HOWTO
  • HOWTO Index
  • Hardware Compatibility HOWTO
  • INFO-SHEET
  • Installation HOWTO
  • Kernel HOWTO
  • Electronic Mail HOWTO
  • NET-2 HOWTO
  • News HOWTO
  • PCI HOWTO
  • PCMCIA HOWTO
  • Printing HOWTO
  • SCSI HOWTO
  • Serial HOWTO
  • Sound HOWTO
  • UMSDOS HOWTO
  • UPS HOWTO
  • UUCP HOWTO
  • XFree86 HOWTO

Отличие Linux от других ОС со свободной лицензией.

Существует ряд других операционных систем , которые имеют лицензию, разрешающую свободное копирование. Из них в России наиболее популярна система FreeBSD.

Работа в Linux или FreeBSD для опытного специалиста не представляет труда. Но для новичка Linux проще в освоении и удобнее в эксплуатации.

В отличие от FreeBSD, которая исторически происходит от кодов Unix, ядро системы Linux написано заново.

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

Какой бы выбор вы не сделали - Linux или FreeBSD - в любом из этих случаев это будет хороший выбор.

Linux и FreeBSD сильно различаются концепцией развития. Более того, среди операционных систем Linux вообще уникальна по своей философии.

Это система, которую пользователи сделали для пользователей.

Linux не просто свободная система, которую каждый может копировать без ограничений. Это система со свободной открытой разработкой , и любой человек, будь он житель Вашингтона или Екатеринбурга, может стать соавтором Linux, сделав свой вклад, не имеет значения, большой или маленький.

В мире Linux популярнее FreeBSD. По некоторым оценкам в 1995 году количество установок Linux достигло 10 миллионов. Выпускается печатный журнал Linux Journal . Продаются десятки различных версий компакт-дисков с Linux . Через глобальные сети доступны сотни архивов с Linux . Исходящий трафик архива Linux на сервере sunsite.unc.edu составляет десяток гигабайт в день. Круглые сутки с этим архивом в каждый момент времени работают несколько сотен пользователей и для обслуживания других тысяч желающих образованы десятки зеркальных копий архива Linux от sunsite.

Как грибы в США, Европе, Японии, Австралии возникают Linux User Groups (ассоциации пользователей). Регулярно проводятся международные конференции по Linux. 30 ноября - 2 декабря 1994 г. в Вашингтоне работала секция Linux на 6-ой OSW (Open Systems World) - международной конференции по открытым системам. Одновременно работали секции Novell AppWare, Windows NT, Solaris, SCO Unix. С того времени Linux это постоянная тема на международных форумах по Unix. На Unix Expo 95 к Linux был проявлен фантастический интерес, к стендам с Linux - Red Hat, Caldera , DEC , Linux Journal - невозможно было протолкнуться.

Соответственно, материалов по Linux больше и они доступнее. Существует богатый выбор недорогих CDROM (компакт-дисков) по Linux. За несколько десятков долларов приобретаются тысячи мегабайтов программного обеспечения отменного качества.

Linux является полноценной операционной системой, которая представляет собой свободный клон операционной системы UNIX. В этой статье мы попытаемся сделать техническое описание Linux .

При загрузке компьютера операционная система Linux перехватывает управление компьютером и управляет следующими его компонентами.

Базовое описание компонентов Linux

  • Процессором - так как ядро Linux обеспечивает одновременную работу нескольких процессов от нескольких пользователей (с поддержкой нескольких процессоров), операционная система нуждается в средствах управления многопоточностью. Планировщик Linux назначает процессам приоритеты и определяет, какой процесс выполняется на конкретном процессоре (если в системе установлено несколько процессоров). Планировщик можно настроить для работы в системах различного типа. При правильной настройке более важные процессы получают более быструю реакцию процессора. Например, планировщик Linux на настольном компьютере предоставляет больший приоритет задаче перемещения окна и меньший - задаче фонового копирования файлов.
  • Памятью - ядро Linux старается держать работающие в данный момент процессы в оперативной памяти. Простаивающие процессы перемещаются в файл подкачки, представляющий собой выделенную область на жестком диске, которая используется для хранения не перемещающихся в оперативную память данных и процессов. При переполнении оперативной памяти процессы выносятся в файл подкачки. При переполнении файла подкачки (но этого допускать нельзя) новые процессы не запускаются.
  • Устройствами - ядро Linux поддерживает тысячи аппаратных устройств. При этом за счет включения в работающее ядро только актуальных драйверов размер ядра удается сохранять на приемлемом уровне. Использование загружаемых модулей позволяет добавить в ядро поддержку дополнительных устройств. Модули можно загружать и выгружать по запросу в результате подключения или отключения устройства. (Ядро, которое будет рассматриваться далее, является сердцем операционной системы Linux.)
  • Файловыми системами - файловые системы предоставляют структуры, в которых файлы хранятся на компакт-дисках, жестких дисках, гибких дисках, DVD и на других носителях. Ядро Linux поддерживает множество типов файловых систем (например, файловые системы Linux: ext3 и reiserfs, а также файловые системы VFAT и NTFS из операционной системы Windows).
  • Безопасностью - как и UNIX, операционная система Linux изначально создавалась для обеспечения, одновременного многопользовательского доступа. Для защиты пользовательских ресурсов каждому файлу назначаются наборы разрешений на чтение, запись и выполнение, которые определяют права доступа. В стандартной системе Linux имеет доступ ко всей системе без ограничений, специальные регистрационные записи могут управлять определенными службами (например, службами Web-сервера Apache), а пользователям могут присваиваться разрешения по отдельности или в составе групп. Последние нововведения, например Security-Enhanced Linux, поддерживают более тонкую настройку и защиту безопасных сред обработки информации.

Показанное выше описание является описанием базовых компонентов ядра (kernel) Linux . Название от ядра Linux (которое было создано и до сих пор разрабатывается под руководством Линуса Торвальдса) распространилось на всю операционную систему.

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

Следующая часть в статье о описание Linux повествует, что многие другие компоненты создавались другими проектами, поэтому правильней произносить Linux нужно так: GNU Linux

Проект GNU предоставил множество компонентов, которые сейчас являются частью операционной системы Linux. (GNU, Apache, KDE, GNOME и другие ключевые проекты с открытым исходным кодом в составе операционных систем Linux рассматриваются немного ниже.) На основе других проектов были созданы следующие подсистемы.

  • Графический интерфейс пользователя состоит из графической инфраструктуры (обычно это X WindowSystem), оконных менеджеров, панелей, пиктограмм и меню. Графический интерфейс пользователя позволяет применять комбинацию мыши и клавиатуры вместо простого ввода команд с клавиатуры (как это делалось в добрые старые времена). В ближайшее время графический сервер X смениться на Wayland на всех дистрибутивах Linux. Ubuntu разрабатывает собственный граф. сервер Mir.
  • Инструменты администрирования включают в себя сотни (а возможно и тысячи) команд и графических утилит, которые позволяют добавлять пользователей, управлять дисками, следить за состоянием сети, устанавливать программное обеспечение, а так же гарантировать безопасность и управлять ресурсами компьютера.
  • Приложения - хотя ни один из дистрибутивов Linux не содержит всех существующих приложений, но в каждом присутствуют тысячи игр, офисных приложений, Web-обозревателей, медиа проигрывателей, чат-клиентов и множество других приложений, доступных исключительно для платформы Linux.
  • Инструменты разработчика включают в себя исключительно инструменты для разработки и создания библиотек и приложений для реализации интерфейсов специализации.
  • Серверные возможности позволяют компьютеру под управлением Linux предоставлять службы для клиентов в сети. Иными словами, кроме установки Web-обозревателей для просмотра Web-страниц, компьютер можно превратить в сервер, который предоставляет Web-страницы другим компьютерам. При этом среди популярных серверных функций можно назвать Web-серверы, серверы электронной почты, баз данных, печати, файловые серверы, серверы DNS и DHCP.
Вот некоторые вопросы которые "мучают" пользователей при переходе на Linux
  • Много пользователей - зачем?
  • Что такое ядро?
  • Есть ли другие отличия?
Много пользователей - зачем? Linux изначально был спроектирован как многопользовательская система. При этом речь шлее не о том: что вычислительной машиной под Linux могут пользоваться несколько человек по очереди, а о реальной многопользовательской системе, когда несколько человек одновременно запускают свои приложения на одном и том же компьютере. Нужно ли это, если речь идет о настольной, персональной машине? Сейчас уже можно твердо сказать «да». Во-первых, настройки и данные, связанные с приложениями, поддерживаются независимо и тщательно для каждого пользователя, а это оказывается существенно при широко применяемом сейчас совместном доступе к приложениям и данным. Во-вторых, для каждого пользователя сохраняются независимо настройки его рабочего стола, каждый раз, выполнив процедуру регистрации, он получает привычное рабочее окружение. Что такое ядро? Основную часть ОС Linux принято называть ядром. В ядро входит самый нижний уровень функций операционной системы, как то: контроль аппаратных средств, запуск драйверов устройств, управление файловыми системами, создание процессов, управление памятью и другие базовые функции. Ядро Linux во многом походит на ядро UNIX. Ядро Linux имеет некоторые особенности, которые являются совершенно уникальными:
  • ядро построено по модульному принципу
  • на одном компьютере может быть установлено сразу несколько ядер
  • разработка ядра Linux управляется централизовано
Ядро Linux не представляет собой монолитное образование, некоторые его части могут загружаться в процессе работы, такие части называются модулями. Если некоторые функции не требуются в текущий момент, то отвечающие за них модули не загружены и не занимают память. На одном компьютере может быть установлено сразу несколько ядер, но только одно из них работает в каждый момент времени. Эта особенность позволяет тестировать новые версии ядра, собирать более подходящую его конфигурацию и в то же время иметь возможность очень легко вернуться назад, к старой версии, которая гарантированно работала. Разработку ядра Linux до сих пор контролирует легендарный Линус Торвальдс. А это означает, что каждая версия ядра представляет собой один единственный объект. Взаимодействие приложений или одно большое приложение? Операционная система Linux далеко не так сильно интегрирована, как операционная система Windows. Фактически каждый дистрибутив состоит из ядра и сотен, если не тысяч отдельных программных пакетов, ассоциированных с этим ядром. Все программы изначально проектировались и проектируются так, чтобы допускать тесное взаимодействие, иначе системы не смогла бы работать. Но это не означает, что они должны взаимодействовать, интеграции между ними может и не быть. В некоторых случаях такое отсутствие обязательной интеграции на низком уровне может выглядеть как недостаток, но это качество дает разработчикам ПО более высокого свободу в выбора низкоуровневых приложений и возможность их замены впоследствии. Поскольку ядро Linux и почти все доступные приложения базируются на открытых стандартах, интеграция между ними выполняется легко, и работают они вместе надежно. Пользовательский интерфейс, на что обратить внимание? Как правило, пользователь общается с вычислительно машиной посредством графического монитора, мыши и клавиатуры. Так устроены почти все клиентские компьютеры, хотя внешний вид рабочего стола и функциональность могут различаться. Под Linux менеджер графической сессии является просто одним из приложений, он не является частью операционной системы. Это означает что, во-первых, вы можете выбирать менеджера рабочего стола (наиболее частый выбор - это KDE или GNOME) и, во-вторых, можно работать вообще без графического окружения, в алфавитно-цифровом режиме. Как настольная система взаимодействует с внешней инфраструктурой? Настольный компьютер редко работает сам по себе, он должен взаимодействовать с объемлющей инфраструктурой. Он нуждается в подключении к локальной сети, в доступе к серверам и другим общим ресурсам. Linux поддерживает все возможные сетевые протоколы, необходимые для такого взаимодействия. Важнейшим моментом при подключении компьютера к внешнему миру является проблема обеспечения безопасности. Ядро Linux имеет встроенный брандмауэр, который защищает компьютер от несанкционированного доступа извне и обеспечивает безопасную работу конечных пользователей и сохранность данных. Каким образом хранятся данные? Способ хранения данных в Linux кардинально отличается от способа, принятого в Windows. Файловая структура в Linux представлена одним деревом, при этом различные типы разделов, в том числе разделы на удаленных устройствах, выглядят однотипно. Здесь нет букв, приписанных к дискам. Такой подход позволяет, например, придерживаться одной и той же логической структуры каталогов на всех клиентских машинах. Существенным отличием в обращении с файлами является существование ссылок в большинстве файловых систем, с которыми работает Linux. По сути ссылки являются указателями на файлы или на целые каталоги. Существуют два вида ссылок: жесткие ссылки и символьные ссылки. Жесткая ссылка является просто еще одним именем, связанным с файлом, а символьная ссылка - это отдельно стоящий указатель. В том случае, если удален файл, символьная ссылка на него не удаляется, но начинает указывать в пустоту. Если число жестких ссылок на файл больше одной, то удаление одного имени не повлечет удаление файла. Реально он будет удален только после удаления последней жесткой ссылки. Есть ли другие отличия? Есть и другие особенности, отличающие Linux от других ОС для настольных компьютеров. В этом разделе мы рассмотрим разницу в работе с виртуальной памятью и уникальное для Linux понятие уровней выполнения (run levels). Работы с виртуальной памятью в каждой операционной системе происходит по своему, иногда это зависит даже от версии операционной системы. Особенностью Linux является то, что виртуальная память не будет использоваться до тех пор, пока есть возможность работать в реальной оперативной памяти. Windows, например, начинает перемещать информацию из оперативной памяти на диск и в других случаях, там существует практика превентивного свопинга. Во многих случаях такой подход приводит в снижению скорости выполнения операций. В Linux принята также система кэширования, то есть, хранение недавно использованной файловой информации в оперативной памяти. В результате такой практики постоянно используется значительная часть оперативной памяти. В том случае, если дополнительная оперативная память требуется приложениям, система просто сокращает область кэширования. Концепция уровней выполнения является общей для UNIX/Linux-подобных операционных систем. Уровень выполнения определяет, какие системные сервисы будут запущены при начальной загрузке системы. Уровни выполнения нумеруются от 0 до 9. Например, уровень выполнения 3 соответствует загрузке всех системных сервисов, кроме графических. На уровне 5 стартует также и графическое окружение. Уровень 1 соответствует однопользовательскому режиму загрузки системы, в котором доступна только одна консоль и отключены практически все службы.

Оставьте свой комментарий!

Министерство сельского хозяйства РФ

Федеральное государственное образовательное учреждение высшего профессионального образования

Пермская государственная сельскохозяйственная академия

имени академика Д.Н. Прянишникова»

Кафедра информатики

Специальность «Бухгалтерский учет, анализ и аудит»

Контрольная работа

по информатике

Выполнила студент заочного обучения

Батуева А.Н.

Проверил старший преподаватель:

Критченко Т.Н.

Пермь, 2008

1. Теоретическое задание. Операционная система Linux

1.1 Возможности, которые предоставляет ОС Linux

1.2 Кому и зачем может понадобиться ОС Linux

1.3 Характерные особенности Linux как ОС

1.4 Как выглядит одновременное выполнение нескольких программ

1.5 Как несколько пользователей работают на одной и той же машине

1.6 Насколько полно документирована ОС Linux

1.7 Отличие Linux от других ОС со свободной лицензией

1.8 Программное обеспечение, которое поддерживает система Linux

1.9 Работа с глобальной сетью Internet

1.10 Какой текстовый процессор можно использовать в Linux

2. Практическое задание

2.1 Задание 1

2.2 Задание 2

2.3 Задание 3


1. Операционная система Linux

Linux - это современная POSIX-совместимая и Unix-подобная операционная система для персональных компьютеров и рабочих станций.

Это многопользовательская сетевая операционная система с сетевой оконной графической системой XWindowSystem. ОС Linux поддерживает стандарты открытых систем и протоколы сети Internet и совместима с системами Unix, DOS, MSWindows. Все компоненты системы, включая исходные тексты, распространяются с лицензией на свободное копирование и установку для неограниченного числа пользователей.

Операционная система Linux широко распространена на платформах IntelPC 386/486/Pentium/PentiumPro и завоевывает позиции на ряде других платформ.

Разработка ОС Linux выполнена Линусом Торвалдсом из университета Хельсинки и не поддающейся подсчету обширной командой из тысяч пользователей сети Internet, сотрудников исследовательских центров, фондов, университетов и т.д.

1.1 Возможности, которые предоставляет ОС Linux

· дает возможность бесплатно и легально иметь современную ОС для использования как на работе, так и дома;

· обладает высоким быстродействием;

· работает надежно, устойчиво, совершенно без зависаний;

· не подвержена вирусам;

· позволяет использовать полностью возможности современных ПК, снимая ограничения, присущие DOS и MSWindows по использованию памяти машины и ресурсов процессора(ов);

· эффективно управляет многозадачностью и приоритетами, фоновые задачи (длительный расчет, передача электронной почты по модему, форматирование дискеты и т.д. и т.п.) не мешают интерактивной работе;

· позволяет легко интегрировать компьютер в локальные и глобальные сети, в т.ч. в Internet; работает с сетями на базе Novell и MSWindows;

· позволяет выполнять представленные в формате загрузки прикладные программы других ОС - различных версий Unix, DOS и MSWindows;

· обеспечивает использование огромного числа разнообразных программных пакетов, накопленных в мире Unix и свободно распространяемых вместе с исходными текстами;

· предоставляет богатый набор инструментальных средств для разработки прикладных программ любой степени сложности, включая системы класса клиент-сервер, объектно-ориентированные, с многооконным текстовым и/или графическим интерфейсом, пригодных для работы как в Linux, так и в других ОС;

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

· дает всем желающим попробовать свои силы в разработке, организовать общение и совместную работу через Internet с любыми из разработчиков ОС Linux и сделать свой вклад, став соавтором системы.

1.2 Кому и зачем может понадобиться ОС Linux

В применении Linux по разным причинам могут быть заинтересованы многие категории пользователей. Привести исчерпывающий список невозможно. Однако, вот ряд примеров. Linux это полноценная 32-х разрядная (64-х разрядная на платформе DECAXP) операционная система, которая использует компьютер на полную мощность. Linux превращает персональный компьютер IBMPC в настоящую рабочую станцию. По цене персоналки, которая значительно ниже стоимости рабочей станции.

Выигрыш в цене очень большой, так как помимо экономии на оборудовании, программное обеспечение в Linux поставляется со свободной лицензией, разрешающей бесплатное неограниченное копирование системы. Ядро, редакторы, трансляторы, СУБД, сеть, графические интерфейсы, игры и масса другого программного обеспечения объемом в тысячи мегабайт - бесплатно и на законной основе.

Выигрыш только на программном обеспечении может составить от тысяч до десятков тысяч долларов. Для многих пользователей в России свободная лицензия - это единственная возможность легально снабдить себя полноценным набором программного обеспечения.

Для пиратского рынка не платить за программы - обычное дело. Однако в случае с Linux мало того, что за это никто преследовать не будет, еще и полную документацию дадут! Более того, с исходными текстами всех программ! Пиратам такое и не снилось.

Большой интерес Linux представляет для потребителей и разработчиков прикладных систем. Представьте себе фирму, состоящую из нескольких филиалов, территориально разнесенных по разным районам города и даже по разным городам и странам. На головном предприятии работает сервер базы данных, клиенты - рабочие места в филиалах - через сеть взаимодействуют с сервером. Такая система быстро, дешево и удобно делается в Linux. Вспомните об устойчивости Linux. Вот где она сильно пригодится!

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

1.3 Характерные особенности Linux как ОС

· многозадачность: много программ выполняются одновременно;

· многопользовательский режим: много пользователей одновременно работают на одной и той же машине;

· защищенный режим процессора (386 protectedmode);

· защита памяти процесса; сбой программы не может вызвать зависания системы;

· разделение страниц по записи между экземплярами выполняемой программы. Это значит, что процессы-экземпляры программы могут использовать при выполнении одну и ту же память. Когда такой процесс пытается произвести запись в память, то 4-x килобайтная страница, в которую идет запись, копируется на свободное место. Это свойство увеличивает быстродействие и экономит память;

· виртуальная память со страничной организацией (т.е. на диск из памяти вытесняется не весь неактивный процесс, а только требуемая страница); виртуальная память в самостоятельных разделах диска и/или файлах файловой системы; объем виртуальной памяти до 2 Гбайт; изменение размера виртуальной памяти во время выполнения программ;

· общая память программ и дискового КЭШа: вся свободная память используется для буферизации обмена с диском;

· динамические загружаемые разделяемые библиотеки;

· сертификация по стандарту POSIX.1, совместимость со стандартами SystemV и BSD на уровне исходных текстов;

· через iBCS2-согласованный эмулятор совместимость с SCO, SVR3, SVR4 по загружаемым программам,

· управление заданиями в стандарте POSIX;

· наличие исходного текста всех программ, включая тексты ядра, драйверов, средств разработки и приложений. Эти тексты свободно распространяются. В настоящее время некоторыми фирмами для Linux поставляется ряд коммерческих программ без исходных текстов, но все, что было свободным так и остается свободным;

· эмуляция сопроцессора в ядре, поэтому приложение может не заботиться об эмуляции сопроцессора. Конечно, если сопроцессор в наличии, то он не используется;

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

· множественные виртуальные консоли: на одном дисплее несколько одновременных независимых сеансов работы, переключаемых с клавиатуры;

· поддержка ряда распространенных файловых систем (MINIX, Xenix, файловые системы SystemV); наличие собственной передовой файловой системы объемом до 4 Терабайт и с именами файлов до 255 знаков;

· прозрачный доступ к разделам DOS (или OS/2 FAT): раздел DOS выглядит как часть файловой системы Linux; поддержка VFAT (WNT, Windows 95);

· специальная файловая система UMSDOS, которая позволяет устанавливать Linux в файловую систему DOS;

· доступ (только чтение) к файловой системе HPFS-2 OS/2 2.1;

· поддержка всех стандартных форматов CDROM;

· поддержка сети TCP/IP, включая ftp, telnet, NFS и т.д.

1.4 Как выглядит одновременное выполнение нескольких программ

Так называемая виртуальная мультиконсоль дает возможность на одном дисплее организовать работу нескольких консолей. На первой консоли запускается процесс трансляции. Комбинацией клавиш Alt-F2 следует переход на вторую консоль. Трансляция продолжается, но при этом первая консоль на экране дисплея заменяется новой картинкой второй консоли. В которой запускается, например, редактор текста. Комбинацией Alt-F3 следует переход на третью консоль, в которой запускается отладчик и т.д. Обычно в системе 8 консолей, но можно установить до 64-х. В любой момент времени можно переключиться на любую консоль.

На отдельной консоли может работать как текстовая, так и графическая программа.

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

Таким образом, одновременно работает много консолей, а на одной из консолей еще и много окон XWindowSystem.

Лабораторная работа 3. Базовые функции ОС LINUX

Требования к сдаче лабораторной работы

Порядок выполнения

Практическая часть

Цель: получить навыки подготовки документов при помощи программных средств в операционной средеWINDOWS .

1. Ознакомиться с теоретической частью лабораторной работы.

2. Ответить на контрольные вопросы.

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

4. Оформить отчет.

1. Иметь отчет по выполнению лабораторной работы, содержащий

· тему лабораторной работы;

· теоретическую часть, включающую в себя ответы на контрольные вопросы;

· порядок выполнения;

· электронную и твердую копии своего варианта репрезентации, выполненные в редакторе WORD;

· выводы.

2. Уметь выполнить любые действия по редактированию текста, рисунков, предложенные преподавателем.

LINUX – свободно распространяемая операционная система, первоначально была разработана Линусом Торвальдсом (Linus Torvalds ) в Университете Хельсинки (Финляндия). LINUX был создан с помощью многих UNIX -программистов и энтузиастов из Internet, тех, кто имеет достаточно навыков и способностей развивать систему.

LINUX – 32-разрядная операционная система, спроектированная для работы на компьютерах с процессором Intel 80386 (и выше). С технической точки зрения LINUX – аналог UNIX , т.е. эта система обрабатывает стандартные команды UNIX и запускает UNIX -программы.

LINUX отличается от других операционных систем, таких как MS-DOS , OS /2, а также других реализаций UNIX -подобных систем для персональных компьютеров. LINUX может сосуществовать с другими операционными системами на той же машине.

§ альтернативная ОС для коммерческих операционных систем;

§ построена для Internet и сетей (SLACKWARE LINUX содержит все необходимое);

§ полностью открытая система (на прилагаемых CD -ROM находятся исходные тексты ОС SLACKWARE LINUX , можно внести свои изменения в ОС);

§ многозадачная операционная система;

§ многопользовательская ОС;

§ эффективная ОС (была построена для процессора 80386, использует возможности процессоров семейства Intel ; SLACKWARE LINUX обеспечивает защиту памяти).



Системные характеристики

LINUX поддерживает большинство свойств, присущих другим реализациям UNIX -подобных систем, и ряд тех, которых нет ни в одной ОС.

LINUX – это полная многозадачная многопользовательская операционная система. Это означает, что одновременно несколько пользователей могут работать на одной машине и выполнять много программ.

LINUX достаточно хорошо совместима с рядом стандартов для UNIX на уровне исходных текстов, включая IEEE POSIX.1 , System V и BSD . Большинство свободно распространяемых по сети Internet программ для UNIX может быть откомпилировано для LINUX практически без особых изменений. Все исходные тексты для LINUX , включая ядро, драйверы устройств, библиотеки, пользовательские программы и инструментальные средства, распространяются свободно.

Другими специфическими внутренними чертами LINUX являются контроль работ по стандарту POSIX (используемый оболочками, такими как CSH и BASH ), псевдотерминалы (pty ) и поддержка национальных и стандартных клавиатур динамически загружаемыми драйверами клавиатур.

LINUX также поддерживает виртуальные консоли (virtual consoles) , которые позволяют «переключать экраны» на консоли в текстовом режиме.

LINUX поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы, такие как ext2fs, были созданы специально для LINUX . Реализована также файловая система MS-DOS , позволяющая прямо обращаться к файлам MS-DOS на жестком диске. Поддерживается также файловая система ISO 9660 CD-ROM для работы с дисками CD-ROM.

LINUX обеспечивает полный набор протоколов TCP/IP для сетевой работы. Он включает в себя драйверы устройств для многих популярных карт Ethernet , SLIP (Serial Line Internet Protocol , обеспечивающие доступ по TCP/IP при последовательном соединении), PLIP (Parallel Line Internet Protocol ), PPP (Point-to-Point Protocol ), NFS (Network File System ) и т. д.

Ядро LINUX создано с учетом специального защищенного режима для процессоров Intel 80386 и 80486; поддерживает загрузку только нужных страниц, т. е. с диска в память загружаются те сегменты программы, которые действительно используются. Возможно использование одной страницы, физически один раз загруженной в память, несколькими выполняемыми программами.

Для увеличения объема доступной памяти LINUX осуществляет также разбиение диска на страницы, на диске может быть выделено до 256 Мбайт пространства для свопинга (swap space). Когда системе нужно больше физической памяти, она с помощью свопинга выводит неактивные страницы на диск. Это позволяет выполнять более объемные программы и обслуживать одновременно больше пользователей. Однако свопинг не исключает наращивания физической памяти, поскольку он снижает быстродействие, увеличивает время доступа.

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

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

Языки программирования

LINUX обеспечивает полную UNIX -среду программирования, включая все стандартные библиотеки, программный инструментарий, компиляторы, отладчики, которые встречаются в других UNIX -системах. В мире UNIX большинство приложений и системных программ делаются на С или С++. Стандартным компилятором для С и С++ в LINUX служит GNU gcc , который является современным компилятором, поддерживающим много опций. Он способен компилировать С++ так же, как Objective-C , другие объектно-ориентированные диалекты С .

Кроме С и С++ многие другие компиляторы и интерпретаторы были перенесены в LINUX, такие как Smalltalk , FORTRAN , PASCAL , LISP , Scheme и Ada . Cуществуют различные ассемблеры для написания кодов для защищенного режима 80386.



Загрузка...