Commit Graph

27 Commits

Author SHA1 Message Date
tchernobog 7ce8cf93c3 - Add SJF
- Re-enable FCFS sorting function
- Correct bug in PythonPolicy that wronged return value
of is_pre_emptible()


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@435 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 11:17:37 +00:00
tchernobog 5dddd9b488 - I don't remember exactly what I did.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@434 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 10:39:40 +00:00
tchernobog 1395347b1a - Fix Schedulable::get_name() in SWIG export interface
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@431 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 09:02:32 +00:00
tchernobog dc84bfd16c - Return numeric_limits<int>::max() from get_time_slice()
of PythonPolicy when the Python user-implemented one returns
a negative value


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@430 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 08:28:18 +00:00
tchernobog dfe1593b44 - Tadaaaan! Fixed it! Now:
- SWIG generate interface doesn't do a mess with namespaces anymore
  - Improved PythonPolicy to be acceptably faster
  - FCFS implemented, sir!
  - FIXME : the qsort implementation doesn't seem right


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@413 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 21:50:43 +00:00
tchernobog da5fc9d195 git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@410 3ecf2c5c-341e-0410-92b4-d18e462d057c 2006-02-23 19:08:30 +00:00
tchernobog cd9b1b1892 - Fix typos
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@409 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 19:02:21 +00:00
tchernobog e2211907f5 - Add documentation for classes:
- (C++) PythonPolicyManager
  - (Python) Policy, ScriptAdapter, fcfs


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@408 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 18:55:14 +00:00
tchernobog ec5d813a7c - Move SWIG interface file to the correct subdir
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@396 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 11:36:13 +00:00
tchernobog 8d6b7c500e - Fix test to initialize a set of processes and run a simulation
- The test needs to be linked to Gtkmm, even if it doesn't use it. 
This is wrong and a coding anomaly that will need to be resolved.
- Add debug code to fcfs.py. Please remove it when it'll be okay
- Calling dir(SchedulableList.get_item_at(x)) from Python shows
a worringly empty list!


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@395 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 11:29:25 +00:00
tchernobog a2a492b5d5 - Previous segmentation fault was due to a faulty call (wrong parameters
to ScriptAdapter.__wrap_sort_queue()). Now prints an error and check
for retval before Py_DECREF'ing it.
- Fix(?) qsort implementation in Policy
- SWIG doesn't understand "uint". Change into more verbose (but surely
standard) unsigned int


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@394 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 10:12:27 +00:00
tchernobog 075e12d14d - Add note that building with --disable-shared at the moment doesn't work
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@393 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 09:26:27 +00:00
tchernobog 73a3e72118 - Implement first draft of quicksort in Python
- Extend test to have a set of processes (now lacks
significative output)
- Extend FCFS policy to do something useful
- FIXME : segfaults on sortQueue()
- FIXME : needs implementation for SchedulableQueue.swap()


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@389 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 22:57:32 +00:00
tchernobog 47451bf78d - Add swap() method signature to SchedulableQueue
- Export swap() to SWIG
- Add sort function (just its documentation, actually, implementation will
follow) to Policy.py


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@385 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 21:35:26 +00:00
tchernobog eecb9f109f - "Yeehaw! It's working! I can't believe it! And they said that an imitation
diamond wasn't good enough..." :-)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@384 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 20:36:33 +00:00
tchernobog 8f655f2f69 - Finish implementing async setup for Python policies' access
- Correct method names for the Python policy (design problem?)
- Compiles, but can't run it on this machine. I'll test it later
(and I expect quite a lot of SIGSEGVs).


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@382 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 15:16:08 +00:00
tchernobog 4e65ca6cd0 - Super mega hacked implementation of python_policy_manager.
Haven't tried running it.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@380 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 12:39:30 +00:00
tchernobog 712e14f558 - Add first undocumented (and quite useless) test for libpyloader.
It doesn't work properly for no apparent reason.
- Add SWIG interface generation for Scheduler


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@375 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 22:57:14 +00:00
tchernobog 9471870adb - Added initial interface for the PythonScript adapter
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@371 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 15:18:13 +00:00
tchernobog 633416f340 - Add preliminary code for Python policy management
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@370 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 12:20:14 +00:00
tchernobog ea70e2f092 - Typos
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@365 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 10:31:01 +00:00
tchernobog 7d58c965ff - Add initial layout for further builtin policies (needs
to be expanded / fixed)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@363 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 07:39:39 +00:00
tchernobog 8c05219cec - Add newlines at the end of source files. I hope not having to do this
frequently! (it's a two-liner script, but nevertheless...)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@355 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 22:36:24 +00:00
tchernobog b9c4813f11 - Add first draft of SWIG interface file, and create Python
loadable module. However, please note that:
	- All the methods accepting a Glib::ustring should
	not be exported, instead they should be replaced by wrapper
	functions accepting PyObject*.
	- The same thing applies to every other method accepting
	a ``non built-in'' data type
	- Return types should probably be wrapped, too
	- It may be a good idea to implement wrapper methods 
	that print out the content of a C++ object, 
	so that a Python user can do a simple "print schedStat". 
	This is achieved by adding a "__str__()" method to the 
	class. See the SWIG manual for further infos about
	returning const char* values.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@354 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 22:25:23 +00:00
tchernobog 9b40d632eb - Fix documentation for Python Abstract module
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@353 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 16:22:53 +00:00
tchernobog 8bb6220819 - Merged branch to avoid recursive make
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@349 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-19 14:34:41 +00:00
tchernobog 3ba6b90f30 - Add missing files
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@338 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 16:08:54 +00:00