Удаленный рабочий стол для Linux

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.04.2014
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru

Размещено на http://www.allbest.ru

Содержание

ВВЕДЕНИЕ

1. АНАЛИЗ ИСХОДНЫХ ДАННЫХ

1.1 Анализ предметной области

1.2 Специальное и общесистемное программное обеспечение

2. ПРОГРАММНОЕ ПРОЕКТИРОВАНИЕ

2.1 Пользовательский интерфейс

2.2 Функциональное обеспечение

2.3 Структурное обеспечение

2.4 Алгоритмическое обеспечение

2.5 Архитектурное обеспечение

2.6 Информационные структуры

3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ

3.1 Детальная реализация функциональных частей ПО

3.1.1 Реализация функциональной части

3.1.2 Разработка пользовательского интерфейса

3.2 Сопроводительная документация программного обеспечения

3.2.1 Разработка описания программы

3.2.2 Разработка руководства пользователя

3.2.3 Разработка методики интеграционных тестов

3.3 Анализ программного обеспечения

3.3.1 Анализ исходного кода приложения

3.3.2 Анализ производительности приложения

3.4 Тестирование программного обеспечения

3.4.1 Разработка модульных тестов

3.4.2 Результаты интегрированного тестирования

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

ПРИЛОЖЕНИЯ

Введение

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

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

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

Аналогом проекта, который также осуществляет удаленный доступ, является программа Team Viewer[1]. Приложение предлагает следующие функции:

- обеспечение удаленного доступа;

- передача файлов;

- видео конференция, чат;

- удаленный доступ с несколькими клиентами;

- работа с качеством транслируемого изображения;

- делать скриншоты;

- удаленная перезагрузка;

- запись сеанса для документирования, включая звук и видео;

- удаленная печать с домашнего офиса;

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

приложение удаленный доступ linux

1. Анализ исходных данных

1.1 Анализ предметной области

Предметной областью разрабатываемого проекта является осуществление удаленного администрирования к компьютеру с ОС Linux. Важнейшими аспектами для исследования является соединение клиента с сервером.

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

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

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

1.2 Специальное и общесистемное программное обеспечение

При написании данного курсового проекта планируется использовать следующее стороннее программное обеспечение и инструментарий:

- QTCreator[2] - кросс-платформенная свободная IDE для разработки приложений на языках C, C++ и QML. Продукт компании Troltech для работы с фрейммворком QT;

- Qt[2] - кросс-платформенный инструментарий разработки ПО на языке программирования C++.

- Microsoft Office Word 2010 - для создания пояснительной записки.

- Enterprice Architect[3] - для разработки диаграмм.

- X Window System[4] -- оконная система, обеспечивающая стандартные инструменты и протоколы для построения графического интерфейса пользователя.

Разработка сервера будет осуществляться на ОС Ubuntu 12.04. Интерфейс сервера будет иметь довольно простой вид, что обусловлено малым взаимодействием с пользователем. Разработка клиента будет осуществляться на ОС Windows7 использованием виджетов, осуществляющих взаимодействие пользователя с самим приложением.

2. Программное проектирование

2.1 Пользовательский интерфейс

Пользовательский интерфейс клиента.

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

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

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

После составления вышеописанных требований был составлен прототип интерфейса главного окна (Рис.1.1).

Рисунок 1.1 - Прототип интерфейса главного окна

Пользовательский интерфейс сервера.

Серверное приложение должно иметь простой интерфейс, содержащий меню, в котором пользователь выбирает нужное ему действие.

Рис 1.2 - Прототип интерфейса главного окна

2.2 Функциональное обеспечение

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

В данном проекте в качестве актеров выступают пользователь, (клиентское приложение) и сервер.

Пользователь взаимодействует непосредственно с клиентским приложением и должен иметь возможность выполнить следующие действия:

Ввести IP-адрес компьютера, на котором находится серверное приложение.

Осуществлять нажатия мыши и клавиатуры при активном клиентском приложении.

На основании вышесказанного была построена диаграмма вариантов использования, представленная в Приложении А.

2.3 Структурное обеспечение

Клиент состоит из двух классов:

MainWindow - класс, отвечающий за визуализацию приложения, создание окна и за перехватку событий, информация о которых отсылается серверному приложению. Наследует QMainWindow и использует такие стандартные виджеты, как меню и лэйбл, который в свою очередь используется для отображения скриншота на экране, строка состояния, отображающая состояние о соединении.

MyClient - класс, отвечающий за реализацию TCP соединения между приложениями, отправку и прием сообщений. Является наследником класса QObject.

Классы содержат следующие методы:

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

virtual void mousePressEvent, virtual void mouseReleaseEvent, virtual void mouseMoveEvent, virtual void mouseDoubleClickEvent, virtual void keyPressEvent, virtual void keyReleaseEvent, virtual void wheelEvent - переопределенные специализированные методы, благодаря которым обрабатываются события клавиатуры и мыши и информация о которых в дальнейшем поступлением этой информации серверному приложению.

Слоты:

void slotConnection и void about - методы, которые вызываются при выборе пользователем полей пунктов в меню Connection и About. В слоте slotConnection создается диалоговое окно, в котором пользователь вводит IP-адрес компьютера, на котором находится серверное приложение. About - слот, отображающий информацию о созданном приложении.

Сервер состоит из 3 классов:

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

MyServer - класс, отвечающий за TCP-соединение и создание скриншотов, наследник QObject, имеет собственные слоты.

Thread - класс, отвечающий за выполнение событий в системе на основании полученных данных от клиента. События будут выполняться в отдельном потоке. Класс унаследован от класса QThread, который предоставляет реализацию потоков.

Классы содержат следующие методы:

void slotNewConnection - слот, срабатывающий каждый раз при соединении нового клиента. В нем устанавливается подтверждение соединения с клиентом, старт таймера.

void timerEvent - перехватываемое событие - срабатывание таймера, в котором происходит создание скриншота и отсылка его клиенту, а также сохранение текущего скриншота в файл. Формат для изображения выбран JPEG из-за оптимального сжатия полученного изображения. При запуске таймера указывается время, интервал, по истечении которого срабатывает событие таймера. Для обеспечения оптимальности, выбрано время 3 секунды, т. е.клиенту будут отсылаться скриншоты, отображающие результат работы на сервере, каждые 3 секунды.

void slotReadClient - слот, связанный с сигналом readyRead(), отвечающий за прием информации о событиях, произошедших на стороне клиента.

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

void mousemove - метод, вызывающийся, если событие, поступившее от клиента - движение мыши. Использует библиотеку Xlib.

void m_click - метод, который срабатывает, если на сервер поступила информация о том, что был совершен клик мыши. В метод передается кнопка мыши, которая была нажата.

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

На основании вышесказанного была построена диаграмма классов, представленная в Приложении Б.

2.4 Алгоритмическое обеспечение

Алгоритм обработки команд сервера на клиенте.

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

Сервер на основании полученных данных эмулирует устройства ввода и отсылает скриншот.

На основании вышесказанного были построены диаграммы последовательности и активности, представленная в приложении В и приложении Г соответственно.

2.5 Архитектурное обеспечение

Для взаимодействия клиента с сервером используется протокол передачи данных TCP.

Для корректной работы были подключены следующие библиотеки и модули:

модуль QtGui - подключен для создания GUI:

модуль QNetwork - для реализации подключения клиента и сервера посредством TCP.

XLib - библиотека функций клиента системы X Window. Библиотека подключена для реализации эмулирования мыши и клавиатуры.

На основании вышесказанного была построена диаграмма активности, представленная в Приложении Д.

2.6 Информационное обеспечение

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

TCP имеет важное преимущество: гарантирует целостность доставки пакета до адресата.

Сервер с клиентом обменивается двумя типами данных:

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

При отправке пакетов от сервера к клиенту по сети передаётся массив байт. В массив байт заносятся данные из буфера (тип QBuffer), в который записывается сам скриншшот.

3. Программное проектирование

3.1. Детальная реализация функциональных частей ПО

3.1.1 Реализация функциональной части

Сервер.

Сервер содержит следующие методы и слоты:

slotNewConnection - вызывается каждый раз при соединении с новым клиентом. Подтверждает соединение, отвечает за старт таймера и потока и ожидает получения команд от клиента. В листинге 1 приведён исходный код данного метода.

Листинг 1 - исходный код слота slotNewConnection

void MyServer::slotNewConnection()

2. {

3. pClientSocket = m_ptcpServer->nextPendingConnection();

4. connect(pClientSocket, SIGNAL(readyRead()),

5. this, SLOT(slotReadClient())

6. );

7. startTimer(3000);

8. _thread.start();

9. QMessageBox::information(0,"Connection","Connected to Client!!!");

10. }

slotReadClient - данный слот срабатывает при поступлении запросов от клиента и высылке сигнала readyToRead. Данные добавляются в очередь методом enqueue, которая в свою очередь обрабатывается в отдельном потоке.

Листинг 2 - исходный код слота slotReadClient

void MyServer::slotReadClient()

{

count++;

pClientSocket = (QTcpSocket*)sender();

QDataStream in(pClientSocket);

in.setVersion(QDataStream::Qt_4_5);

if (_block == 0)

{

if (pClientSocket->bytesAvailable() < (int)sizeof(quint16))

{

return;

}

in >> _block;

}

if (pClientSocket->bytesAvailable() < _block)

{

return;

}

else

{

_block = 0;

QString command = "";

in >> command;

_thread._queue.enqueue(command);

}

}

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

Листинг 3 - исходный код метода timerEvent

void MyServer::timerEvent(QTimerEvent *qe)

{

qDebug()<<"it's working";

QDesktopWidget* gt = QApplication::desktop();

QPixmap pix = QPixmap::grabWindow(gt->screen()->winId());

QImage img(pix.toImage());

QString st = "./2.jpg";

img.save(st,"JPEG");

if(img.isNull())

{

qDebug() << "NULL";

}

QBuffer buf;

QImageWriter writer(&buf,"jpg");

writer.write(img);

QByteArray byte;

QDataStream out(&byte,QIODevice::WriteOnly);

out.setVersion(QDataStream::Qt_4_8);

out << (quint32)buf.size();

byte.append(buf.data());1

pClientSocket->write(byte);

}

Клиент.

Клиентское приложение взаимодействует с пользователем и выполняет следующие действия:

Подключение к серверу

Отображение скриншотов в окне приложения

прием скриншотов от сервера

Передача данных о мыши и клавиатуре

При желании подключиться к клиенту, пользователь может выбрать пункт «Connection» в меню «Action», либо нажать сочетание клавиш Ctrl+C. При этом срабатывает метод dialog_call. В методе вызывается диалоговое окно, в котором требуется ввести IP-адрес сервера. Для проверки корректности ввода используется регулярное выражение и проверка полученной строки методом contains. После прохождения проверки на корректность ввода при успешном результате срабатывает конструктор класса MyClient.

Листинг 4 - метод dialog_call

void MainWindow::dialog_call()

{

QRegExp reg("\\b(([01]?\\d?\\d|2[0-4]\\d|25[0-5])\\.){3}([01]?\\d?\\d|2[0-4]\\d|25[0-5])\\b");

str = "localhost";

bool bOk;

while(1)

{

str = QInputDialog::getText(0,"IP-Address","Enter IP(cancel - localhost): ",QLineEdit::Normal,"localhost",&bOk);

if(!bOk)

{

str = "localhost";

}

if((str.contains(reg)>0) || (str == "localhost"))

{

client = new MyClient(str,2323);

flag = true;

break;

}

}

}

Так же, как и в сервере, у клиента есть слот slotReadyRead, который срабатывает по такой же схеме как в серверном приложении.

Листинг 5 - листинг слота slotReadyRead

void MyClient::slotReadyRead()

{

if(m_size_bytes == 0)

{

QDataStream stream(m_pTcpSocket);

if (m_pTcpSocket->bytesAvailable() < sizeof(quint32))

{

return;

}

stream >> m_size_bytes;

}

if (m_size_bytes > m_pTcpSocket->bytesAvailable())

{

return;

}

QByteArray barr = m_pTcpSocket->read(m_size_bytes);

QBuffer buffer(&barr);

buffer.open(QIODevice::ReadOnly);

QImageReader reader(&buffer, "jpg");

QImage image = reader.read();

if (!image.isNull())

{

count = 1;

QPixmap px = QPixmap::fromImage(image);

pixmap = new QPixmap(px);

pixmap->save("./test_1.jpg","jpg");

m_size_bytes = 0;

}

37.

38. else

39. {

40. QPixmap pix("./3.jpg");

41. pix.save("./test_1.jpg","jpg");

42. }

43. }

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

Листинг 6 - один из переопределенных методов mousePressEvent

void MainWindow::mousePressEvent(QMouseEvent *pe)

{

wh = fal;

x_pos = pe->x();

y_pos = pe->y();

state = Press;

device = Mouse;

if(pe->buttons() & Qt::LeftButton)

{

button = Left;

}

if(pe->buttons() & Qt::RightButton)

{

button = Right;

}

if(pe->buttons() & Qt::MidButton)

{

button = Middle;

20. }

21. mov = unmoving;

22. display();

23. }

Листинг 7 - метод display

void MainWindow::display()

{

if(flag)

{

st = "Connected...";

lbl->setText(st);

client->slotSendToServer(device, x_pos, y_pos, button, state, wh, mov,keyboard,code,s);

if(client->count == 1)

9. {

10. p.load("./test_1.jpg");

11. i = p.width();

12. y = p.height();

13. this->resize(i,y);

14. label->setPixmap(p);

15. }

16. }

17. }

3.1.2 Разработка пользовательского интерфейса

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

Клиент.

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

QLabel;

QMenu;

menuBar;

centralWidget;

statusBar;

QTextEdit.

Рисунок 3.1 - графический интерфейс клиента.

Рисунок 3.2 - графический интерфейс сервера.

3.2 Сопроводительная документация программного обеспечения

3.2.1Разработка описания программы

Общее описание:

«Данный программный продукт предназначен для удаленного администрирования компьютеров по локальной или беспроводной сети.

Приложение-сервер запускается на компьютере с ОС Linux. Клиентское приложение не требует от пользователя никаких настроек.

Приложение-клиент запускается на компьютере с ОС Windows.

Приложение-клиент требует только ввода IP адреса подключения.

3.2.2 Разработка руководства пользователя

Подключите компьютер к сети.

Запустите Server и Client на соответствующих сторонах.

Для запуска серверного и клиентского приложения необходимым и достаточным условием являются следующие требования:

Операционная система - Windows 7/Windows 8 - для Client, Linux Ubuntu 12.04 - для Server.

Размер оперативной памяти - 2гб. DDR2.

Свободное место на диске - 15мб.

Наличие сетевой карты.

Наличие устройств ввода.

3.2.3 Разработка методики интеграционных тестов

Для проверки работоспособности приложения следует разработать интеграционные тесты описанные в таблице 3.1.

Таблица 3.2 - интеграционные тесты.

Описание теста

Действия

Результат

1) Проверка корректной передачи информации о произошедших событиях устройств ввода.

Произведение нажатий на устройства ввода

Убраны лишние данные

2) Проверка отправки изображений

Передача файла

Изображение доставлено корректно

3.3 Анализ программного обеспечения.

3.3.1 Анализ исходного кода приложения

Для анализа исходного кода приложения была выбрана программа CppCheck.

В результате работы сканирования файлов ошибки не были выявлены.(Рис. 3.3)

Рис. 3.3 - Результат анализа исходного кода приложения

3.3.2 Анализ производительности приложения

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

Рисунок 3.2, 3.3-результат анализа производительности.

3.4 Тестирование программного обеспечения

3.4.1 Разработка модульных тестов

В разрабатываемой программе небольшое количество функций и

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

Модульные тесты разрабатывались с помощью библиотеки BOOST TEST[5].

Ниже приведен листинг одного из тестов:

#include "boost_auto_test_case.h"

#include "MainWindow.h"

#include <boost/test/unit_test.hpp>

#define BOOST_TEST_MODULE mod

BOOST_AUTO_TEST_CASE(mod)

{

MainWindow m_wnd();

int i1 = 0;

int i2 = 130;

int i3 = 145;

int i4 = 1;

int i5 = 2;

int i6 = 1;

int i7 = 3;

int i8 = 1065;

QString s = “y”;

QString st = “0 120 145 1 2 1 3 1065 y”; m_wnd.conversion(i1,i2,i3,i4,i5,i6,i7,i8,s);

BOOST_CHECK_EQUAL(s, st);

}

В результате модульных тестов были проверены следующие функции:

1)корректное возвращение IP-адреса клиента из диалогового окна ввода IP-адреса

2)корректное передвижение мыши при поступающих координатах

3)корректные клики мыши на определенные объекты на экране

4)корректное соответствие нажатых клавиш на клавиатуре на клиенте и на сервере.

5) корректное эмулирование в зависимости от поступаемых данных.

3.4.2 Результаты интегрированного тестирования

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

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

Тест отработал правильно. Результатом теста является успешный результат.

Рисунок 3.4 - статистика использования клавиатуры и мыши.

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

Все тесты отработали правильно. Результатом правильной работы теста являются изображения, хранящиеся в папках с исходными файлами клиента и сервера.

Рисунок 3.5- Изображения на клиенте и на сервере

Результат выполнения модульных тестов приведён в таблице 3.6.

№ теста

Результат

Проверка корректности передачи информации и выполнении ее на сервере

Пройден. Результат приведен на рис.

3.1.

Проверка отправки изображений

Пройден.Результат приведен на рис.

3.2.

Таблица 3.6 - Результат выполнения модульных тестов.

Заключение

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

Были получены навыки и умения в следующих сферах:

Программирование на языке С++.

Программирование в среде QtCreator.

Программирование с использованием библиотеки Xlib.

Получены навыки работы с сокетами, событиями, данными типа QPixmap и QImage.

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

Приложение А

Диаграмма вариантов использования

Приложение Б

Диаграмма классов

Приложение В

Диаграмма последовательности

Приложение Г

Диаграмма деятельности

Приложение Д

Диаграмма развертывания

Размещено на Allbest.ru


Подобные документы

  • Знакомство с графическим интерфейсом ASP Linux, его основные преимущества и недостатки, разработка навыков работы с сервисным и прикладным программным обеспечением этой системы. сравнительный анализ функциональных возможностях изученной среды и Windows.

    методичка [1,6 M], добавлен 12.09.2008

  • Стандартные компоненты Windows XP. Главное меню, панель задач, оформление рабочего стола и значки рабочего стола. Требования к минимальной конфигурации, необходимой для установки Windows XP на платформе Intel. Удаленный доступ к рабочему столу.

    курсовая работа [1,1 M], добавлен 14.01.2015

  • Общие сведения об операционной системе Linux. Анализ информации о серверах. Основные прикладные клиент-серверные технологии Windows. Сведения о SQL-сервере. Общая информация о MySQL–сервере. Установка и специфика конфигурирования MYSQL-сервера на LINUX.

    курсовая работа [1,3 M], добавлен 16.12.2015

  • Совместное функционирование всех устройств компьютера и доступ к его ресурсам. Понятие и функции графической операционной системы Windows. Справочная служба Windows. Управление файловой системой. Технология "Plug and Play". Графический интерфейс Windows.

    контрольная работа [22,2 K], добавлен 22.01.2011

  • Графический интерфейс (операционные системы), объекты Windows и их свойства. Рабочий стол – графическая среда, на которой отображаются объекты и элементы управления Windows, примеры окон и рабочего стола. Основные приемы управления с помощью мыши.

    презентация [1,1 M], добавлен 12.04.2010

  • Виды операционных систем. Графический пользовательский интерфейс операционной системы Linux и Mac OS. Функции устройства управления окнами (windows manager). Программа управления файлами, драйвера, модуль управления памятью - основные компоненты ядра.

    презентация [1,8 M], добавлен 14.10.2013

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

    лабораторная работа [1,3 M], добавлен 30.11.2016

  • Структура предприятия ОАО "Златмаш" и основные задачи Информационно-вычислительного центра. Разработка локального сервера, использующего движок Mediawiki на операционной системе Linux Ubuntu. Выбор языка и среды программирования, создание интерфейса.

    отчет по практике [1,2 M], добавлен 16.09.2012

  • Доступ пользователей сети к электронным сообщениям, хранящимся на сервере. Описание программы, аутентификация простая, APOP и AUTH-аутентификация. Реализация функций, руководство пользователя, алгоритмы функционирования программы, графический интерфейс.

    курсовая работа [1,1 M], добавлен 13.11.2009

  • Компоновка и конфигурирование Linux сервера. Общая информация об ALT Linux Server 5, его подвиды и основные функциональные возможности. Установка дистрибутива ALT Linux 5.0 "Ковчег" и Apache2+php+MySQL. Пример настройки работы сайта на web-сервере.

    курсовая работа [6,0 M], добавлен 24.10.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.