Волжский университет имени В.Н. Татищева
Факультет “Информатика и телекоммуникации”
Кафедра “Информатика и системы управления”
КУРСОВАЯ РАБОТА
по дисциплине: “Системное программное обеспечение”
Тольятти 200
СОДЕРЖАНИЕ
Введение
1.1 Мониторинг ОС в современном мире
1.2 Программная часть
1.3 Задача программы
1.4 Описание программы
1.5 Программный код
Список используемой литературы
В последнее десятилетие развитие компьютерных технологий вступило в совершенно новую фазу. Вычислительные машины пришли во все сферы человеческой деятельности. Практически каждое предприятие, не зависимо от сферы деятельности, трудно представить без компьютерной техники.
Широкое распространение персональных компьютеров и микрокомпьютерных рабочих станций в бизнесе началось в начале 80-х годов. В настоящее время это оборудование представляет собой столь же неотъемлемую принадлежность любого офиса, как, например, телефон.
Среди всего этого возникла необходимость мониторинга операционной системы т.к. компьютеры постоянно выходили из строя, либо работали ни на полном быстродействии. В связи с этим стали появляться новые профессии такие как: системный администратор или верстальщик. С развитием операционных систем требования к мониторингу постоянно менялись, но принцип мониторинга остался тем же – контроль за системой.
1. МОНИТОРИНГ ОПЕРАЦИОННОЙ СИСТЕМЫ В СОВРЕМЕННОМ МИРЕ
Сейчас профессия системного администратора очень распространена, в его функции входит следить за системой (Приведение системы в порядок), настройка компьютера на максимальное быстродействие, и контроль за Hardware устройствами. Раньше это было не так просто сделать т.к. не было нужного программного обеспечения, и «мозгов», а если и были люди то очень мало. Но благодаря современным технологиям и современным программам. Мониторинг системы стал максимально простым. Во всех современных операционных системах существуют стандартные программы мониторинга, а так же очень много софта посвященного тому же вопросу, такие как «AIDA, sisSoftware, и др.»
2. ПРОГРАММНАЯ ЧАСТЬ
2.1 Задача программы
Моя программа разработана для операционной системы Windows и представляет собой средство для мониторинга системы, которое позволяет узнать основные параметры компьютера и протестировать его на современность. В программе я постарался сделать так, чтобы мониторинг осуществлялся как можно легче. С помощью нее можно узнать «Балл» своего Hardware устройства, который показывает, устарело устройство или нет. Программа была протестирована на нескольких компьютерах, что позволило мне установить балл каждому из компьютеров.
2.2 Описание программы
Программа разрабатывалась под ОС Windows 95/98/ME/NT/2000/XP в программе Delphi 7.0
При открытии программы появляется главное рабочее окно (Рис. 5.1)
Рис. 5.1 Основное окно программы
Основное окно состоит из формы на которой имеются кнопки: Процессор, память, дисплей, ОС, диски, видеокарта, об авторе и выход.
При нажатии кнопки процессор появляется (Рис. 5.2) окно на котором показано: название процессора, реальная частота его загрузки, график загрузки, средняя частота, и балловая оценка
Рис. 5.2 Процессор системы
При нажатии кнопки память появляется окно (Рис 5.3) на котором можно посмотреть уровень загрузки памяти, и балл ее оценки.
Рис. 5.3 ОЗУ
При нажатии на кнопку дисплей появляется окно (Рис. 5.4) на котором мы можем посмотреть параметры монитора и поддерживаемые им режимы.
Рис. 5.4 Дисплей
При нажатии на кнопку ОС появляется окно (Рис. 5.5) на котором мы можем посмотреть версию ОС, ее параметры, а так же балл оценки.
Рис. 5.5 ОС
При нажатии на кнопку диски появляется окно (Рис. 5.6) на котором мы можем посмотреть параметры всех имеющихся дисков, и его параметров.
Рис. 5.6 Диски
При нажатии на кнопку видеокарта появляется окно (Рис. 5.7) на котором мы можем посмотреть параметры видеокарты.
Рис. 5.7 Видеокарта
2.3 Программнаячасть
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Buttons, jpeg, registry;
type
TForm1 = class(TForm)
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Image6: TImage;
Image7: TImage;
Image8: TImage;
Image9: TImage;
Image10: TImage;
Image11: TImage;
Image12: TImage;
Image13: TImage;
Image14: TImage;
Image15: TImage;
Image16: TImage;
Image17: TImage;
Image18: TImage;
Image19: TImage;
Image20: TImage;
Image21: TImage;
Image22: TImage;
Image23: TImage;
Image24: TImage;
Image25: TImage;
procedure FormCreate(Sender: TObject);
procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormPaint(Sender: TObject);
procedure Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image4MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image5MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image6MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image7MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image8MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image9MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image4MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image5MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image6MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image7MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image8MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image9MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Image3MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image4MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image5MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image6MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image7MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image8MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image9MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
procedure Image5Click(Sender: TObject);
procedure Image9Click(Sender: TObject);
procedure Image2Click(Sender: TObject);
procedure Image4Click(Sender: TObject);
procedure Image3Click(Sender: TObject);
procedure Image8Click(Sender: TObject);
procedure Image7Click(Sender: TObject);
procedure Image6Click(Sender: TObject);
private
{ Private declarations }
Dragging,Stop : Boolean;
OldLeft,OldTop : Integer;
modes:array[0..255] of TDevMode;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit8;
{$R *.dfm}
{ TForm1 }
function CreateRgnFromBitmap(rgnBitmap: TBitmap): HRGN;
var
TransColor: TColor;
i, j: Integer;
i_width, i_height: Integer;
i_left, i_right: Integer;
rectRgn: HRGN;
begin
Result := 0;
i_width := rgnBitmap.Width;
i_height := rgnBitmap.Height;
transColor := rgnBitmap.Canvas.Pixels[0, 0];
for i := 0 to i_height - 1 do
begin
i_left := -1;
for j := 0 to i_width - 1 do
begin
if i_left < 0 then
begin
if rgnBitmap.Canvas.Pixels[j, i] <> transColor then
i_left := j;
end
else
if rgnBitmap.Canvas.Pixels[j, i] = transColor then
begin
i_right := j;
rectRgn := CreateRectRgn(i_left, i, i_right, i + 1);
if Result = 0 then
Result := rectRgn
else
begin
CombineRgn(Result, Result, rectRgn, RGN_OR);
DeleteObject(rectRgn);
end;
i_left := -1;
end;
end;
if i_left >= 0 then
begin
rectRgn := CreateRectRgn(i_left, i, i_width, i + 1);
if Result = 0 then
Result := rectRgn
else
begin
CombineRgn(Result, Result, rectRgn, RGN_OR);
DeleteObject(rectRgn);
end;
end;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
WindowRgn: HRGN;
begin
BorderStyle := bsNone;
ClientWidth := Image1.Picture.Bitmap.Width;
ClientHeight := Image1.Picture.Bitmap.Height;
windowRgn := CreateRgnFromBitmap(Image1.Picture.Bitmap);
SetWindowRgn(Handle, WindowRgn, True);
end;
procedure TForm1.FormPaint(Sender: TObject);
begin
Canvas.Draw(0, 0, Image1.Picture.Bitmap);
end;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if button=mbLeft then
begin
Dragging := True;
OldLeft := X;
OldTop := Y;
end;
end;
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if Dragging then
begin
Left := Left+X-OldLeft;
Top := Top+Y-OldTop;
end;
end;
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Dragging := False;
end;
procedure TForm1.Image2MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Image2.Cursor:=crHandPoint;
end;
procedure TForm1.Image2MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image2.Picture:=Image14.Picture;
end;
procedure TForm1.Image2MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image2.Picture:=Image15.Picture;
end;
procedure TForm1.Image3MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image3.Picture:=Image16.Picture;
end;
procedure TForm1.Image4MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image4.Picture:=Image18.Picture;
end;
procedure TForm1.Image5MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image5.Picture:=Image13.Picture;
end;
procedure TForm1.Image6MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image6.Picture:=Image24.Picture;
end;
procedure TForm1.Image7MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image7.Picture:=Image23.Picture;
end;
procedure TForm1.Image8MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image8.Picture:=Image20.Picture;
end;
procedure TForm1.Image9MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image9.Picture:=Image11.Picture;
end;
procedure TForm1.Image3MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image3.Picture:=Image17.Picture;
end;
procedure TForm1.Image4MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Image4.Picture:=Image19.Picture;
end;
procedure TForm1.Image5MouseDown(Sender: TObject; Button: TMouseButton;