Process viewer

Post on 02-Jul-2015

93 views 1 download

description

Process Viewer application which is useful for managing various processes and process log with user friendly environment. This presentation describes various technical aspect of this project.

Transcript of Process viewer

Process ViewerUsing C++, MySQL

Developed ByMahesh Meniya & Vimal Moliya

MCA Students

Project GuideMr. Amit Kothari (Asst. Prof., MEFGI, Rajkot)

Developed By

MAHESH J. MENIYA (115220693048)VIMAL B. MOLIYA (115220693020)

Contents

• What is process ?• Overview of application• Learning Objectives• User interaction• Application functions• Application Architecture• Technology used• Database Structure• Class Diagram• Sample coding• User Interface• Future Enhancement

• What is process ?• Overview of application• Learning Objectives• User interaction• Application functions• Application Architecture• Technology used• Database Structure• Class Diagram• Sample coding• User Interface• Future Enhancement

What is process ?

In computing, a process is an instance of acomputer program that is being executed. It containsthe program code and its current activity. A processmay be made up of multiple threads of execution thatexecute instructions concurrently.

A computer program is a passive collection ofinstructions; a process is the actual execution of thoseinstructions. Several processes may be associated withthe same program; for example, opening up severalinstances of the same program often means more thanone process is being executed.

In computing, a process is an instance of acomputer program that is being executed. It containsthe program code and its current activity. A processmay be made up of multiple threads of execution thatexecute instructions concurrently.

A computer program is a passive collection ofinstructions; a process is the actual execution of thoseinstructions. Several processes may be associated withthe same program; for example, opening up severalinstances of the same program often means more thanone process is being executed.

Overview

Process Viewer provides facilities like viewrunning process with their memory consumption,process start-time, kill selected process, view thefully qualified path from where .exe file is resides andmore important it manage user wise history forfurther usage.

Process Viewer is multi threaded applicationthat provides various useful functions for processesand application running in user system.“

Process Viewer provides facilities like viewrunning process with their memory consumption,process start-time, kill selected process, view thefully qualified path from where .exe file is resides andmore important it manage user wise history forfurther usage.

Learning Objectives

C++ OOPS Funda• Inheritance• Exception handling• Virtual function• Friend function• Operator overloading

(<< for Display O/P)• Namespace• Run Time Type Identification

(RTTI)• Method Overloading• Template (generic Programming)• Enum• And other general OOPS funda

Advanced Funda• Linked List (Data structure)• Multi-Threading• System Programming• Database application• Partially ORM implementation

C++ OOPS Funda• Inheritance• Exception handling• Virtual function• Friend function• Operator overloading

(<< for Display O/P)• Namespace• Run Time Type Identification

(RTTI)• Method Overloading• Template (generic Programming)• Enum• And other general OOPS funda

Advanced Funda• Linked List (Data structure)• Multi-Threading• System Programming• Database application• Partially ORM implementation

User Interaction

Application FunctionsView Processes

Shows list of running processes including informationlike process Id, process name and process memory usageand starting time. List will be refresh when new processarrives or terminate.

Kill ProcessUser can terminate unwanted process.

Process PathUser can view full path of executable component

though can be also useful in detection and removingspyware , virus or any unwanted process/Application. Inprocess viewer show path where component is loaded.

View ProcessesShows list of running processes including information

like process Id, process name and process memory usageand starting time. List will be refresh when new processarrives or terminate.

Kill ProcessUser can terminate unwanted process.

Process PathUser can view full path of executable component

though can be also useful in detection and removingspyware , virus or any unwanted process/Application. Inprocess viewer show path where component is loaded.

Application FunctionsHistory

Process viewer manage user-wise process log as ahistory. Application doesn’t require user authentication itwork on system authentication So, There is no need forremember username and password. User can view onlyhis/her history for particular time interval. It displaysprocess name, process start-End Date&Time.

So user can let know which process had start andwhen it was terminated.

Run in BackgroundThis application can also run in background. User

can also back from background mode.

HistoryProcess viewer manage user-wise process log as a

history. Application doesn’t require user authentication itwork on system authentication So, There is no need forremember username and password. User can view onlyhis/her history for particular time interval. It displaysprocess name, process start-End Date&Time.

So user can let know which process had start andwhen it was terminated.

Run in BackgroundThis application can also run in background. User

can also back from background mode.

Understanding Application Architecture

Technology Used

MySQL, the most popular Open source, relationaldatabase management system, is developed,distributed, and supported by Oracle Corporation.

Pthread

The POSIX thread libraries are a standards basedthread API for C/C++. It is most effective where theprocess flow can be scheduled to run on anotherprocessor thus gaining speed through parallel ordistributed processing.

Pthread

Database Structure

Sample Data & Relation

Class Diagram

Class Diagram for -

1. Process Module2. Database Module3. Threading Module4. User-Interface Module

Class Diagram for -

1. Process Module2. Database Module3. Threading Module4. User-Interface Module

Class diagram for Process Module1. p_data

contain data aboutprocess

2. p_operationManage processIn linked list

3. view_processdisplay info. Ofprocesses

4. kill_processmanage operationfor kill process

1. p_datacontain data aboutprocess

2. p_operationManage processIn linked list

3. view_processdisplay info. Ofprocesses

4. kill_processmanage operationfor kill process

Class diagram for Database Module1. database

Interact withdatabase

2. Field_valueContainer class forfield & value

3. dttimecontainer class forprocess date&time

4. usermanage user data

5. Datatypeenum for datatype

1. databaseInteract withdatabase

2. Field_valueContainer class forfield & value

3. dttimecontainer class forprocess date&time

4. usermanage user data

5. Datatypeenum for datatype

Class diagram for Threading Module1. p_thread

Base class forthreading

2. th_refreshDerived class fromp_thread refresheslinked list

3. t_stateenum for threadstate

1. p_threadBase class forthreading

2. th_refreshDerived class fromp_thread refresheslinked list

3. t_stateenum for threadstate

Class diagram for user interface Module1. menu

Class for createmenu

2. consoleClass for variousconsole reletedfunction

3. windowclass for window

1. menuClass for createmenu

2. consoleClass for variousconsole reletedfunction

3. windowclass for window

Coding Sample

Main Menu

Viewing details about Running Processes

Kill Process (Input)

Kill Process (result)

Kill Process (Process not found)

View Path

History (Invalid Input)

History (Input)

History Viewing (Page 1)

History Viewing (Page 2)

Future Enhancement

• Create new task using Application• Set priority for Process• Improve User Interface

References & Resources

• Programming with ANSI C++ (Bhushan Trivedi)• Microsoft Developer Network (MSDN)

(http://msdn.microsoft.com)

• Threading using pthread(https://computing.llnl.gov/tutorials/pthreads)

• Stackoverflow(http://stackoverflow.com)

• Our Own Ideas

• Programming with ANSI C++ (Bhushan Trivedi)• Microsoft Developer Network (MSDN)

(http://msdn.microsoft.com)

• Threading using pthread(https://computing.llnl.gov/tutorials/pthreads)

• Stackoverflow(http://stackoverflow.com)

• Our Own Ideas

Thanks to,

We would like to thanks Marwadi EducationFoundation providing such platform to develop andpresent our project – ”Process Viewer”.

Thank you.

We would like to thanks Marwadi EducationFoundation providing such platform to develop andpresent our project – ”Process Viewer”.

Thank you.