Any operating system comes with a tool to monitor the CPU consumption of the running application (e.g., Activity Monitor on mac, .... in windows). These tool give for each process the amount of CPU and memory it consumes. Unfortunately, Smalltalk does not have such a tool. Pharo and VisualWorks offers the process browser, which is a rather primitive. No indication about the resource consumption is given. A first prototype has been proposed (Loom http://objectprofile.com/#/pages/products/loom/overview.html), however it currently works on VisualWorks and offers a rather sluggish user interface.
This project is about offering a reliable tool to monitor the resource consumption of the running threads. Our tool will be made portable and will run on Pharo and VisualWorks.
The tool will offer nice visual chart to monitor the consumption, as most OS process monitors do.
The program will present:
- A window with a table of thread's information
- A visual time line that represents the tread evolution
- Several Buttons to handle the threads
Benefits to the Student
The student will (i) get a better understanding of the executing enviroment of Pharo and VisualWorks (ii) make a contribution that will be use by several users (iii) practice in building GUI applications/frameworks, improve Smalltalk programming skills.
Benefits to the Community
The Smalltalk community would use the new browser like a tool in order to review and handle the consumption of the processes in a visual way. We expect Thread Profiler to help improve Pharo and VisualWorks applications.