Commit Graph

65 Commits

Author SHA1 Message Date
tchernobog d5565b319f - Add placeholder for a plugin interface to implement.
Will need to be finished with next milestones.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@460 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-25 12:40:24 +00:00
tchernobog 56534edb6c - Make libpyloader a loadable plugin (warning: won't work
on Window$ unless you change the string "libpyloader" to
"pyloader" into main.cc)
- Fix Makefile to support module creation and loading
- 2DO: 
	- Add a class into backend to load and manage plugins
	- Install plugins into separate directory
	- Remove hardcoded paths


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@458 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-25 12:21:30 +00:00
fpaparel 4833658cc1 - added doxygen documentation
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@446 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 15:10:36 +00:00
matrevis 5034c59728 - Added documentation to some headers
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@438 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 13:19:27 +00:00
johnny 52857f08b9 - More documentation
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@437 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 12:22:25 +00:00
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
johnny 47c184ac3f - "Commenting The Source(tm)" 02-2006 - The best summer camp of the world - Second part
- Reorganized the .cc files to match the .hh methods order.


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@421 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 01:24:21 +00:00
paolo 02e69f9214 Documented history.hh, policy.hh, policy_manager.hh, slice.hh - ps
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@419 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-24 01:06:49 +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
johnny 1d326590ee - "Commenting The Source(tm)" 02-2006 - The best summer camp of the world - First part
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@405 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-23 17:59:02 +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
fpaparel 8eeeaae3f5 - hemm... updated also the header!!
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@391 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 23:21:12 +00:00
fpaparel b7f3086286 - implemented swap in schedulable_list.cc
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@390 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-22 23:19:51 +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 2e1a699b65 - This is a save point (everything compiles again) ;-)
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@369 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:30:19 +00:00
fpaparel ef659927c4 - Die tortoise-svn die
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@368 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:29:05 +00:00
fpaparel 0de370f4d3 - Add dummy policy left out of previous commit
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@367 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:15:57 +00:00
fpaparel 4482b98df7 - fixed a number of bugs
- added dummy_policy written in C++
- the interpreter is now finished (hopefully)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@366 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-21 11:09:55 +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 b3ba006800 - Rewrite sgpem module interface file with adapter methods
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@360 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-20 19:10:16 +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
fpaparel 759dfdad25 - added console interpreter
- added string_utils

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@342 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 22:19:25 +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
tchernobog 74df8ba0d2 - Temporary hack to Makefile. To be fixed.
git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@337 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 12:45:30 +00:00
tchernobog 6e15465e16 - Remove spurious files left from previous commit (these
files were moved to the pyloader directory)


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@336 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-17 12:34:12 +00:00
tchernobog b6c49d98d6 - Add support for abtract python classes
- Create first modules: the Policy Python class


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@335 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-16 22:50:32 +00:00
tchernobog 5554ec2256 - Initial split of libpyloader from libbackend. Will need rework
in order to:
  - fix wrong design
  - fix include paths
  - fix installation of header files


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@333 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-16 21:29:51 +00:00
fpaparel 6d5e9270a8 - added few frontend classes
- updated others from backend

git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@330 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-15 22:58:18 +00:00
tchernobog 6cf67202c7 - Add Python preprocessor flags to src/ and src/backend Makefiles
- Add -Wno-long-long to compiler options in order to workaround Python types' evilness


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@322 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-13 16:35:00 +00:00
fpaparel 146b3c99cc - Now all backend classes are present (not all complete)
- Can't compile when trying to link with Python
         + check -pedantic parameter
         + when compiling main.cc there is no -I/..../Python parameter


git-svn-id: svn://svn.gna.org/svn/sgpemv2/trunk@321 3ecf2c5c-341e-0410-92b4-d18e462d057c
2006-02-13 11:32:05 +00:00