Commit Graph

580 Commits

Author SHA1 Message Date
matrevis 30c09a58ba - Added an optimization to save cache when reached the end of the simulation
This optimization causes some trouble when using jumpto, but nothing terrible.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@991 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-02 02:07:19 +00:00
matrevis 47d4fe65b4 - Corrected get_front() issues.
- Widget tests are now working properly.



git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@990 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-02 01:56:00 +00:00
elvez 4b3cce6bea - Correctly manage file extensions in load/save dialogs. I couldn`t find a way to automagically add the extension on file save. It`s just too much of an hassle to do it by hand, isn`t it?
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@989 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-02 01:01:37 +00:00
elvez f617c51a87 - Fixed bug causing crash on adding a resource after simulation is terminated. A workaround was used, it was caused by Simulation::get_front() returning a wrong value.
- Other minor improvements to the ResourceWidget

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@988 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-02 00:20:24 +00:00
matrevis d570314405 - Better Preferences management
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@987 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 23:28:23 +00:00
tchernobog 23e24e87e5 - Aesthetics
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@986 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 22:51:16 +00:00
tchernobog 6f2c9c3252 - Use smart_ptr for tooltips into schedulable_state_widget. Closes task #3.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@984 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 17:20:17 +00:00
tchernobog ad774067e1 - Add lottery and plain round robin cpu policies. I didn't test
them extensively, mind you. Closes task #14.
- Added documentation for each cpu policy
- Manage extra-exception into PythonCPUPolicy (when the .py
file doesn't contain a similarly named class)
- Update exception output in GuiBuilder to make it slightly
more descriptive


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@983 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 17:03:34 +00:00
tchernobog ff95a5364d - Allow the user to select the (CPU|Resource)Policy from
the GUI


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@982 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 13:17:53 +00:00
matrevis 689f1c108d - Udpdated test-holt-widget for resource policy support
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@981 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 12:49:16 +00:00
tchernobog 17b54f1bfe - Add policy description to configure_policy_dialog
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@980 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 12:08:26 +00:00
matrevis 0912042b50 - Added preferences load/save feature.
altough till lacking exception handling
  if no sgpem.cfg file is present, segmentation fault
  therefore no loading is ever done by now.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@979 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 00:58:12 +00:00
elvez 58cf50b500 - Added visualization of resources queue to resourceswidget. Task #28
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@978 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-09-01 00:23:39 +00:00
elvez eb9546a63c - Disabled all operations on schedulables from the GUI while the simulation is not stopped. Task #25
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@977 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-31 22:17:16 +00:00
tchernobog ba9b28b0c8 - Correctly set release time for candidate threads that try to
run and immediately block
- Use modulo to check the end of the time slice instead than a
simple equality


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@976 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-31 18:57:09 +00:00
tchernobog 5b7130a9a0 - Fix book-keeping of thread data fields
- (temp) Add debug printout into text simulation of 
a thread acquiring time and release time. Will be removed
just after scheduler is fixed.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@975 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-31 18:16:11 +00:00
tchernobog 1bc33d37ec - Fix one of two Scheduler's bugs. Now the state of the running thread
is update separately by the state of future or blocked ones at the
beginning of step_forward() (since else it didn't influence the state of
threads coming before it in the global thread list)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@974 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-31 17:15:41 +00:00
elvez 0c3ecf3bcb - Removed a level from the schedulables tree. Added details about subrequests
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@973 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-31 00:34:49 +00:00
tchernobog 323ab51210 - Fix sigsegv when editing an entity
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@972 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-31 00:31:14 +00:00
matrevis c797bf97ae - Improved resource policy power
- added tests for gap management
- added test for resource policy


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@971 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 23:59:10 +00:00
tchernobog 4f3e8f61df - Enable CPUPolicy configuration in the GUI through clicking on the
toolbar button about the "Scheduling policy". The same is true also
for a ResourcePolicy. These two features will also need a related
entry under the "Edit" menu. Closes task #15.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@970 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 23:37:11 +00:00
elvez 9af2008050 - Allow compilation of test which didn`t need massive updates (those from m0.1). Task #19
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@969 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 22:35:45 +00:00
matrevis 26755fd876 - Small fix to let the application work
using ResourcePoliciesGatekeeper


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@968 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 21:09:47 +00:00
elvez 685a6d84f0 - All dialogs created by SchedulablesTreeWidget are now inializated only when needed
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@967 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 15:54:47 +00:00
tchernobog a4bde96a7b - Manage exceptions into SimulationController.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@966 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 15:53:26 +00:00
elvez 3f314f6225 - Removed useless declaration from header file
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@965 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 15:32:33 +00:00
elvez 58838fabbc - More extensible exception checking in text_simulation
- Started doing initialization of glade dialogs in a lazy manner

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@964 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 15:31:25 +00:00
elvez 9d541e2751 - Added markup for threads, improved support for translation of hard-coded strings
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@963 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-30 00:14:44 +00:00
elvez cb59a30e06 - Added support for Return key-as-OK for dialogs
- Scrollbars on the SchedulablesTreeWidget only show up if needed
- Forced minimum height on the list view inside add-request dialog

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@962 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-29 22:24:02 +00:00
tchernobog 1f466f80d5 - Add newlines at the end of file to make new versions of m4 happy
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@961 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-29 09:12:54 +00:00
tchernobog 35451bddbd - Hopefully a more complete fix.
- TODO: write a test for this both in the case of the parent process
having a "hole" between threads and being a) terminated, and b) blocked


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@960 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 22:59:51 +00:00
matrevis 0520169288 - I forgot to include a pair of files.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@959 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 22:45:02 +00:00
matrevis f3dc9b77df - Added a bit of resource policy mamagement. Still far from being usefu.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@958 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 22:40:08 +00:00
tchernobog 980d9b410a - Fix a minor bug in scheduler that didn't ended the simulation
if there was a 'hole' between threads of the same process. The
fix isn't the most elegant thing in the universe, but it's simple
and it'll do.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@957 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 22:29:56 +00:00
elvez 8b7a4ed569 - Fixed bug in serialization which caused threads to be saved with a "lats-for" field of 0
- Added some comments to the string_to code

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@956 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 22:29:43 +00:00
elvez 2497aa3bc6 - Bullet-proofed the code in string_utils. Not tested for booleans, but don`t complain for the last test, it`s necessary, trust me.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@955 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 22:01:18 +00:00
tchernobog 73c66c12d3 - Re-enable loading of saved files
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@954 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 21:48:55 +00:00
elvez 9e61332a12 - Removed CPUPolicyManager::init(), it was deprecated
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@953 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 21:40:02 +00:00
tchernobog c30a3674f2 - Use deletor for deleting all policies from the manager
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@952 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 21:01:32 +00:00
tchernobog bb8e16e490 - Some little eyecandiness. Not much, after all, but still some.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@951 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 20:50:20 +00:00
tchernobog ba60be88bc - Remove useless pointer from SimulationController member data
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@950 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 20:23:42 +00:00
tchernobog 0cf9c77835 - Erm..... finish the SimulationController so that it works
(one-line patch). :-)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@949 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 20:19:58 +00:00
tchernobog 3689424217 - First implementation of a SimulationController in the GUI
that uses a callback to run the simulation in continuous mode.
It isn't finished yet.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@948 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 20:15:05 +00:00
elvez 1cdd2a6a9e - Restored in-depth checking inside string_to<T>. Under advice of Matteo some code is still commented, since we are not sure if it`s correct
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@947 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-28 09:56:35 +00:00
tchernobog 645156e62c - Move code to manage step_by_step or continuous simulation from
ConcreteSimulation to TextSimulation


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@946 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-27 14:36:23 +00:00
tchernobog 1087d45628 - Add naive code to test Simulation from the GUI. Please note that
we need to move the "continous/non-continous" code snippet out of ConcreteSimulation
and into TextualSimulation/the GUI Simulation. In fact, ConcreteSimulation
is just a state machine that performs a single step and then puts itself
either in paused state (if the Simulation hasn't finished) or into stopped state
(if it finished)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@945 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-27 13:39:40 +00:00
tchernobog aa608a1cc2 - Mantain expanded state of TreeView rows while History updates.
It isn't elegant, but it's the best I can come up with in 10 minutes before
having dinner.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@944 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-26 18:42:10 +00:00
tchernobog 231662825d - Unify interface of string_utils. I dropped most of the exception
handling, hoping it's unnecessary. Code should be slightly more
maintainable now.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@943 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-26 10:45:04 +00:00
elvez 696c513ed2 - TODO and FIXME reduced to 38
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@941 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-25 22:43:04 +00:00
elvez 57059b647b - Now it is possible to edit resources
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@940 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-08-25 21:45:29 +00:00