Upload
mahesh-meniya
View
91
Download
1
Embed Size (px)
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.
Citation preview
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.