Автоматизированная информационная система средствами Ubuntu Linux

Автор работы: Пользователь скрыл имя, 30 Марта 2011 в 00:30, курсовая работа

Описание работы

Цель работы – исследовать принципы разработки автоматизированной информационной системы средствами операционный системы Linux и показать ее важность на практике.

Задачи:

•Изучить теоретические основы работы ОС Linux;
•Привести описание основных характеристик Linux;
•Описать структуру АИС;
•Разработать АИС на примере дистрибутива Ubuntu Linux;

Содержание работы

Введение…………………………………………………………………… 3

Глава 1. Основные характеристики Linux…………………………..... 6

1.Ключевые черты Linux……………………………..................... 6
2.Сравнительные характеристики 32-разрядных ОС…….…...... 8
3.Системные и программные характеристики Linux…………... 10
4.Система “X Window”……………………………..…………… 16
5.Работа в сети………………………………………….………… 19
6.Исследование файловой системы…………………………...… 22
Глава 2. Автоматизированная информационная система………..… 28

2.1 Понятие автоматизированной информационной системы…… 28

2.2 Структура автоматизированных информационных систем..… 34

Глава3. Автоматизированная информационная система средствами Ubuntu Linux ……………………………………………………………… 41

3.1 Программное обеспечение Ubuntu Linux ………………..….… 41

3.2 Практическое использование сетей в операционной системе

Ubuntu Linux. ………………………………………………...……... 43

3.3 Интернет-приложения…………….……………………….…… 46

3.4 Компьютерные вирусы в Linux……………………………...… 49

3.5 Пакет офисных приложений OpenOffice.org………………..… 50

Заключение………………………………………………………...……… 56

Список литературы………………………………………………….

Файлы: 1 файл

Дипломная LINUX v1.3.docx

— 424.06 Кб (Скачать файл)
 

     OS/2 является наиболее компактной системой. Именно в этом и состоит привлекательность операционной системы, разработанной IBM. Пользователю необходимо иметь только 8 Мбайт оперативной памяти, чтобы приобщиться к миру объектно-ориентированного интерфейса, и представляет собой неплохую платформу для многозадачной работы с приложениями DOS, Windows и OS/2. Отметим, что размер системы является одной из наиболее сильных характеристик Linux. Система изначально проектировалась максимально компактной и производительной, в то время как для Windows основным критерием оптимизации являлась переносимость, а для OS/2 - совместимость с предыдущими версиями системы. А, кроме того, поскольку любой администратор Linux-системы имеет в своем распоряжении полный исходный текст ОС, она может быть оптимизирована для работы с конкретным оборудованием и нуждами пользователя. OS/2 и Windows похвастаться такой возможностью не могут.[3] 

    1.   Системные и программные  характеристики Linux
 

     Linux поддерживает большинство свойств, присущих другим реализациям Unix, плюс ряд тех, которых больше нигде нет. Linux - это полная многозадачная многопользовательская операционная система.  Это означает, что одновременно много пользователей могут работать на одной машине, одновременно выполнять много программ. Linux достаточно хорошо совместим с рядом стандартов для Unix (насколько можно говорить о стандартизации Unix) на уровне исходных текстов, включая IEEE POSIX.1, System V и BSD. Он создавался, имея в виду такую совместимость. Поэтому, несложно найти в Linux черты, присущие многим Unix-системам. Большинство свободно распространяемых по сети Internet программ для Unix может быть откомпилировано для Linux практически без особых изменений. Кроме того, все исходные тексты для Linux, включая ядро, драйверы устройств, библиотеки, пользовательские программы и инструментальные средства распространяются свободно.[12]

       Linux также поддерживает виртуальные консоли (“virtual consoles”), которые позволяют “переключать экраны” на консоли в текстовом режиме, также позволяют войти в систему под несколькими именами в одно время. Ядро может само эмулировать команды 387-FPU, так что системы без сопроцессора могут выполнять программы, на него рассчитывающие (т.е. с плавающей точкой).

     Linux поддерживает различные типы файловых систем для хранения данных. Некоторые файловые системы были созданы специально для Linux. Поддерживаются также другие типы файловых систем, такие как Minix-1 и Xenix. Реализована также файловая система MS-DOS, позволяющая прямо обращаться к файлам MS-DOS на жестком диске. 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), и так далее. Поддерживается весь спектр клиентов и услуг TCP/IP, таких как FTP, telnet, NNTP и SMTP. [5]

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

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

     Ядро  также поддерживает универсальный  пул памяти для пользовательских программ и дискового кэша. При  этом для кэша может использоваться вся память, и наоборот, кэш уменьшается  при работе  небольших программ. Выполняемые программы используют динамически связываемые библиотеки, т.е. выполняемые программы могут совместно использовать библиотечную программу, представленную одним физическим файлом на диске. Это позволяет выполняемым файлам занимать меньше места на диске, особенно тем, которые многократно используют библиотечные функции. Есть также статические связываемые библиотеки для тех, кто желает пользоваться отладкой на уровне объектных кодов или иметь “полные” выполняемые программы, которые не нуждаются в разделяемых библиотеках. В Linux разделяемые библиотеки динамически связываются во время выполнения, позволяя программисту заменять библиотечные модули своими собственными. Для обеспечения отладки ядро Linux выдает дампы памяти для “посмертного” анализа. Использование дампа и динамических отладчиков позволяет определить причины краха программы.[14]

     Практически любая утилита, которая находится  в стандартных реализациях Unix, имеется и в Linux. Сюда включены и базовые команды, такие как ls, awk, tr, sed, bc, more и т.д. В Linux есть все стандартные команды и утилиты Unix.

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

     В Linux имеются многие текстовые редакторы, включая vi, ex, pico, jove, также GNU Emacs и его вариации, вроде Lucid Emacs (который содержит расширение для использования под “X Window”) и joe. Но vi имеет много ограничений по причине своего преклонного возраста, сейчас завоевывают популярность более современные и сложные редакторы вроде Emacs. Emacs поддерживает базирующийся на LISP макроязык и интерпретатор, мощный командный синтаксис и другие расширения.  

     
Основные  команды Linux
Команда Что делает Синтаксис
Cd Изменяет текущий  рабочий каталог Cd <directory>; 
<directory> - каталог, в который перейти.
Ls Выдает информацию о файлах в каталоге Ls <file1> ... <fileN> 
Где <file1> ... <fileN> имена файлов или каталогов, информацию про которые надо выдать.

Опции огромное колличество. Наиболее часто используемые: -F (для представления информации о типах файлов), и -l (выдает в длинном формате информацию о размерах файлов, владельцах, правах доступа и т.д.).

Cp Копирует файл(ы) в файл или каталог Cp <file1> ... <fileN> <destination> 
Где <file1> ... <fileN> имена копируемых файлов, а <destination> файл или каталог, в который копируют.
Mv Перемещает  файл(ы) в другой файл или каталог Mv <file1> ... <fileN> <destination> 
Где <file1> ... <fileN> имена перемещаемых файлов, а <destination> имя файла или каталога, в который перемещают.
Rm Удаляет файлы Rm <file1> ... <fileN> 
Где <file1> ... <fileN> имена удаляемых файлов. 
Опции: -i потребует пользовательского подтверждения перед удалением файла
Mkdir Создает новые  каталоги Mkdir <dir1> ... <dirN>
Rmdir Эта команда  удаляет пустые каталоги rmdir <dir1> ... <dirN> 
Где <dir1> ... <dirN> удаляемые каталоги
Man Выдает страницу руководства по данной команде или  ресурсу. man <command> 
Где <command> имя команды или ресурса, о котором запрашивается информация
More Выдает содержимое названных файлов по-экранно more <file1> ... <fileN> 
Где <file1> ... <fileN> отображаемые файлы
Cat Используется  для конкатенации файлов. Также используется для выдачи полного содержания файла  разом cat <file1> ... <fileN> 
Где <file1> ... <fileN> выдаваемые файлы
Echo Просто повторяет  аргументы echo <arg1> ... <argN> 
Где <arg1> ... <argN> "повторяемые" аргументы.
Grep Выдает все  строки в названном файле(лах), которые  содержат заданный образец grep <pattern> <file1> ... <fileN> 
Где <pattern> - образец (представленный регулярным выражением) и <file1> ... <fileN> - файлы, в которых производится поиск

      Таблица 2.

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

     Многие  пользователи самой важной утилитой считают shell. Shell - это программа, которая читает и выполняет команды пользователя. Кроме того, многие оболочки имеют такие возможности, как контроль выполнения (job control), позволяя пользователю управлять несколькими параллельными процессами, также перенаправление входа-выхода и командный язык для написания командных файлов (shell scripts). Командный файл - это программа на языке оболочки, аналогичная “batch file” в MS-DOS.

     В Linux много типов оболочек. Наиболее важное различие между ними - используемый командный язык. Например, C Shell (csh) использует командный язык, чем-то напоминающий язык программирования Си. Классический Баурновский shell (Bourne Shell) использует иной командный язык. Обычно выбор оболочки обусловлен выбором соответствующего командного языка. Выбранная оболочка в какой-то мере определяет рабочую среду. Наиболее популярная оболочка - это GNU Bourne Again Shell (bash), т.е. вариант Bourne shell, включающий много современных свойств и возможностей, таких как управление работами, командную историю, дописывание имен команд и имен файлов, Emacs-подобный интерфейс редактирования командной строки и мощное расширение стандартной оболочки (Bourne shell). [33]

     Другая  популярная оболочка - tcsh, версия C Shell с более современными функциями по сравнению с bash. Другие оболочки: zsh - небольшая баурно-подобная оболочка; ksh - оболочка Корна; ash - оболочка BSD.

     Linux дает уникальную возможность кроить систему под наши личные нужды. 

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

     Кроме Си и Си++ многие другие компиляторы  и интерпретаторы были перенесены в  Linux, такие как Smalltalk, FORTRAN, Pascal, LISP, Scheme и Ada, Perl и shell-подобный командный язык, включающий поддержку разработки простейших приложений в “X Window”.

     В Linux был перенесен продвинутый отладчик gdb, позволяющий пошагово выполнять программы в поисках ошибок или анализировать крах программ с помощью дампов памяти. Gprof - утилита профилирования, показывающая, где программа при выполнении тратит больше времени. Текстовый редактор Emacs позволяет осуществлять интерактивное редактирование. Другие инструменты, включая GNU make и imake используются для управления компиляцией больших программ; RCS - система для защиты и сопровождения исходных текстов.

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

     Linux идеален для создания Unix-приложений. Поддерживаются различные стандарты вроде POSIX.1, позволяющие легко переносить программы, написанные для Linux, на другие системы. Можно использовать Linux для обучения программированию в Unix и изучения таких аспектов, как архитектура ядра. 

1.4 Система “X Window” 

     Система “X Window” (или кратко просто Х) - стандартный графический интерфейс для Unix-машин. Это мощная среда, поддерживающая много приложений. Используя “X Window”, пользователь может одновременно иметь на экране несколько окон, при этом каждое имеет независимый login. Часто используется мышь, хотя она необязательна. Было написано много специфических Х-приложений, таких как игры, графические утилиты, инструментарий для программирования и документирования и т.д. С Linux и X компьютер - замечательная рабочая станция. Используя протоколы TCP/IP, можно смотреть X-приложения, выполняемые на других машинах. 

     Система “X Window” была первоначально создана в MIT и свободно распространялась. Существует много и коммерческих приложений, расширяющих возможности “X Window”. Для Linux есть система “X Window”, известная как XFree, свободно распространяется для Unix-систем типа Linux. XFree поддерживает широкий спектр видео устройств, включая VGA, Super VGA, HDMI, различные видео адаптеры с ускорителями. Это полный комплект “X Window”, содержащий сам сервер, много прикладных программ и утилит, программные библиотеки и документацию.

     Стандартные Х-приложения включают xterm (эмулятор терминала, используемый в большинстве текстовых приложений в X Window); xdm (X-менеджер, обслуживающий login); xclock (представление простых часов); xman (X-ориентированное руководство по Linux) и т.д. Трудно перечислить все приложения X, доступные в Linux, но базовый комплект XFree включает “стандартные” приложения, содержащиеся в исходной версии MIT. Но доступно и многое другое, теоретически, все написанное для “X Window” можно прямо компилировать и для Linux.[37]

Информация о работе Автоматизированная информационная система средствами Ubuntu Linux