quasar [Mon, 5 Nov 2007 10:21:04 +0000 (10:21 +0000)]
delete platform msg props
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4963
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Mon, 5 Nov 2007 10:20:23 +0000 (10:20 +0000)]
updating msg prop tests
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4962
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Mon, 5 Nov 2007 10:16:50 +0000 (10:16 +0000)]
factorized platform file
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4961
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 2 Nov 2007 09:07:05 +0000 (09:07 +0000)]
Update msg property test
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4960
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 2 Nov 2007 09:01:55 +0000 (09:01 +0000)]
Update msg property test
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4959
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 2 Nov 2007 08:37:45 +0000 (08:37 +0000)]
modified tesh file for simdag/properties
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4958
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 2 Nov 2007 00:24:15 +0000 (00:24 +0000)]
This time, hopefully, the files are in valid version 2 of the DTD
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4957
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Thu, 1 Nov 2007 16:42:09 +0000 (16:42 +0000)]
simdag properties example
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4954
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Thu, 1 Nov 2007 16:06:39 +0000 (16:06 +0000)]
gras prop example
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4953
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Thu, 1 Nov 2007 15:59:42 +0000 (15:59 +0000)]
msg properties example
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4952
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Wed, 31 Oct 2007 17:51:35 +0000 (17:51 +0000)]
Update the platform files: the root tag is now called 'platform', not 'platform_description'. Everyone knows that XML is a descriptive language, right?
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4946
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
lmarchal [Wed, 31 Oct 2007 16:01:57 +0000 (16:01 +0000)]
Corrected a small bug for transfers, and added host visualization,
process sorting, time axis and legend.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4944
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Wed, 31 Oct 2007 10:08:37 +0000 (10:08 +0000)]
updating the dtd and some memory leacks
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4943
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sun, 28 Oct 2007 22:37:16 +0000 (22:37 +0000)]
Add totals
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4932
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sun, 28 Oct 2007 09:38:12 +0000 (09:38 +0000)]
Add the SVN revision to the VERSION string so that it lands into the archive names
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4930
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sun, 28 Oct 2007 08:44:19 +0000 (08:44 +0000)]
Update the FAQ wrt lastest XML changes
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4929
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sun, 28 Oct 2007 08:32:07 +0000 (08:32 +0000)]
Export the cute little macro that Arnaud devised to ease the bypassing work (and add a pointer to the right example in its new location)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4928
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 23:05:43 +0000 (23:05 +0000)]
Also display the status of the last build in the top box of each column
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4927
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 23:05:12 +0000 (23:05 +0000)]
Reindent and cosmetics
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4926
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 22:12:40 +0000 (22:12 +0000)]
Mac does not find the prototype of getline
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4925
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 20:58:38 +0000 (20:58 +0000)]
Cosmetics: do display the amount of failed tests in the waterfall, as well as the svn revision
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4924
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 18:02:44 +0000 (18:02 +0000)]
Off by one access
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4923
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 18:01:23 +0000 (18:01 +0000)]
Damn it, we forgot to update the stubs, once again
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4922
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 15:08:12 +0000 (15:08 +0000)]
Message improvements
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4921
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 15:06:11 +0000 (15:06 +0000)]
Revalidate the output after the conversion to the lastest XML version (s/cpu/host/ changed every logging lines)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4920
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 15:02:13 +0000 (15:02 +0000)]
Ooops. When restarting the logging action with dynamic buffer because we overflowed the static one, use the copy of the vaargs, not the original ones (which were already used by static action)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4919
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 14:53:03 +0000 (14:53 +0000)]
cosmetics
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4918
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 14:47:29 +0000 (14:47 +0000)]
Let's be brutal: copy the pthread_mutex_timedlock prototype since I fail to get this from the system headers on amd64
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4917
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 14:35:18 +0000 (14:35 +0000)]
Cleanups around the inter-unixes portability code for sem_init, sem_timedwait and mutex_timedlock
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4916
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 14:32:52 +0000 (14:32 +0000)]
Check for sem_init
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4915
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 14:30:24 +0000 (14:30 +0000)]
new line at EOF
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4914
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 13:13:52 +0000 (13:13 +0000)]
Check for pthread_mutex_timedlock()
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4913
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 13:08:22 +0000 (13:08 +0000)]
Kill useless variable
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4912
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 12:06:43 +0000 (12:06 +0000)]
Make test more verbose to understand why it timeouts on build daemons
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4911
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 11:47:05 +0000 (11:47 +0000)]
Oops, forgot to add this file
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4910
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 11:45:21 +0000 (11:45 +0000)]
more explicit error messages, and random cleanups
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4909
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 11:43:08 +0000 (11:43 +0000)]
Fixup the bypassing example: pretend we've found v2 XML, and split the bypassing function in two (one for the platform and one for the application) to make sure that the platform isn't declared twice (once in MSG_create_environment and once in MSG_launch_application) since it fools things
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4908
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 11:33:33 +0000 (11:33 +0000)]
Fix stupid comments
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4907
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 11:31:47 +0000 (11:31 +0000)]
Check that the platform file does not define the same element (host or link) twice. Fail otherwise.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4906
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 11:06:55 +0000 (11:06 +0000)]
Avoid segfault when trying to retrieve the name of the current thread while being in the maestro before initialization (where SIMIX_process_self returns NULL)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4905
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 09:59:52 +0000 (09:59 +0000)]
More java approach with a specific task type for finalization instead of magic value in uniq task type, plus random cleanups
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4904
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 09:44:36 +0000 (09:44 +0000)]
Better Java philosophy: create a new type of tasks to mean terminaison instead of relying of some magic value of the classical computation task (plus reduce the verbosity of the slaves)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4903
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 09:21:27 +0000 (09:21 +0000)]
Reset the clock to 0 in surf_exit so that it gets zeroed in MSG_clean for people wanting to rerun simullations in the same setting (hello Pablo)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4902
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 09:12:22 +0000 (09:12 +0000)]
Reduce drastically the size of the test since it causes timeouts on slow build daemons
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4901
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 09:09:46 +0000 (09:09 +0000)]
Last useless cleanup about Marc jumbo commit
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4900
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 09:07:26 +0000 (09:07 +0000)]
Factorize the current_property_set symbol of simix (for process properties) and surf (for host and link properties); mark it 'extern' in include/surf/surf.h, and declare it strongly (ie, initialize it) in surf/surfxml_parse.c so that the poor macosx linker don't get fooled
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4899
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 08:36:33 +0000 (08:36 +0000)]
Kill code duplication, and doc tiny improvements
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4898
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 08:24:36 +0000 (08:24 +0000)]
Kill the useless _MSG_process_create_with_env_from_SIMIX(). _MSG_process_create_from_SIMIX() is part of the private API of MSG (I mean internal to the lib), so it can be changed without pissing of users
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4897
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 08:17:22 +0000 (08:17 +0000)]
Lastest cleanups in surf/ of Marc's jumbo commit
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4896
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Sat, 27 Oct 2007 07:34:39 +0000 (07:34 +0000)]
I think I now better understand the surf internals: each resource can be *either* a cpu or a link, so we can merge all the get_??_properties into only one method. No object will need both of them. This could be further improved by moving this to a function in surf directly instead of leaving this in models, but it would be the first attribute being handled that way, so I prefer keeping the pseudo object philosophy in place in surf
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4895
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 21:17:37 +0000 (21:17 +0000)]
useless cleanups
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4894
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 21:16:52 +0000 (21:16 +0000)]
Yeah, that was a bit agressive against leaks...
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4893
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 21:08:05 +0000 (21:08 +0000)]
Ooops, this is a graphxml file, not a surfxml one. It shouldn't be updated... (revert)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4892
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 20:42:22 +0000 (20:42 +0000)]
Fixup the is_first semantic (does not change anything, but you're first the first time, not afterward)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4891
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 20:38:57 +0000 (20:38 +0000)]
Propagate the s/network_link/link/ from the XML to the C code (hope I didn't break anything)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4890
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 19:51:25 +0000 (19:51 +0000)]
Add the stubs to properties related functions in real life
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4889
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Fri, 26 Oct 2007 19:48:48 +0000 (19:48 +0000)]
Rename gras_os_property_value() to gras_os_host_property_value(); Documentation tiny improvements
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4888
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 18:58:19 +0000 (18:58 +0000)]
provide a value for the properties of the child
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4887
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 18:53:23 +0000 (18:53 +0000)]
let's also be brutal with what seems to be a typo from Malek [Mt]
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4886
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 18:52:39 +0000 (18:52 +0000)]
Let's be brutal since we fail to understand the problem: time to get some food&sleep
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4885
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 18:24:57 +0000 (18:24 +0000)]
relax ordering enforcement
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4884
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 18:24:08 +0000 (18:24 +0000)]
these symbols where only defined as extern, fooling the linker (plus some cleanups in the output when the XML is too old
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4883
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 18:01:06 +0000 (18:01 +0000)]
move the callback lists to the public headers
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4882
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 17:49:47 +0000 (17:49 +0000)]
Update the bypass example to the lastest DTD
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4881
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 17:42:10 +0000 (17:42 +0000)]
update all the XML files
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4880
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 17:07:04 +0000 (17:07 +0000)]
oops, my last minute cleanup broke everything [Mt]
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4878
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 16:46:59 +0000 (16:46 +0000)]
kill cruft
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4877
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
quasar [Fri, 26 Oct 2007 16:45:56 +0000 (16:45 +0000)]
* Cleanup the DTD by renaming:
<cpu> to <host>
<network_link> to <link>
<route_element> to <link:ctn>
"name" attributes to "id"
* Modify the DTD to add properties to <process>, <host> and <link>
In the DTD, these are <prop name=... value=...> subtags, and this
can be retrieved as a xbt_dict from the source code (see below)
* Add the following functions to the user API to retrieve (as
xbt_dict) the properties defined in XML:
xbt_dict_t SD_link_get_properties(SD_link_t link);
const char* SD_link_get_property_value(SD_link_t l,char* name);
and, on the same model,
SD_workstation_get_{properties,property_value}()
MSG_process_get_{properties,property_value}()
MSG_host_get_{properties,property_value}()
gras_process_get_{properties,property_value}()
gras_os_host_get_{properties,property_value}()
* Modify the parser to work in one pass only.
Some more work may be done so that surf does the parsing after the
models have declared the callbacks.
* Enforce the order in the DTD: routes must come after the last CPU,
router and link
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4876
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Fri, 26 Oct 2007 09:12:09 +0000 (09:12 +0000)]
a distraction
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4875
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Fri, 26 Oct 2007 08:56:35 +0000 (08:56 +0000)]
This change the semantic of the timed function. The behavior depends now of the value of the parameters delay or timeout. If these parameters are negative, the timed function have the behavior of a blocking function. For example the following call : xbt_os_mutex_timedacquire(mutex,-1) is equivalent to xbt_os_mutex_acquire(mutex). If you set these parameters to zero
the timed function have the behavior of a try function. For example, to try to lock a mutex you must call the xbt_os_mutex_timedacquire() function with the parameter delay/timeout set to zero.
Finally, if you specify a delay more than zero, the timed function try to acquire the lock until the delay was expired, which is the normal behavior of the function.
Remark : the changes of the other files are the consequence of this new semantic : because the timed functions also implement the behavior of the try functions, theirs declarations and theirs definitions are removed.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4874
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Thu, 25 Oct 2007 18:27:49 +0000 (18:27 +0000)]
Tiny improvement of the search speed
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4873
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 16:01:56 +0000 (16:01 +0000)]
the version of the xbt_os_time() function needs the declaration of the structure timeval. The structure of this function change :
if the macro HAVE_GETTIMEOFDAY is defined or if we are on a Windows platform compute the timeval and return else use the poor resolution.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4872
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 15:22:24 +0000 (15:22 +0000)]
the inclusion of the header stat.h is tested in the file portability header portable.h (HAVE_SYS_STAT_H)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4871
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 12:48:06 +0000 (12:48 +0000)]
distraction
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4870
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 12:10:39 +0000 (12:10 +0000)]
distraction
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4869
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 12:02:09 +0000 (12:02 +0000)]
Visual C++ need sys/stat.h for open() function
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4868
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 11:58:39 +0000 (11:58 +0000)]
just had SG_BEGIN_DECL and SG_END_DECL macro (for c++ compilers)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4867
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 11:57:20 +0000 (11:57 +0000)]
Most of this change is the consequence of the refactoring of the name of the function connected to the mutex object and of the unsupported semaphore function on MAC OS X.
The file synchro.h rename the functions xbt_mutex_acquire() and xbt_mutex_release() to xbt_mutex_acquire() an respectively xbt_mutex_release().
This file also contains the declaration of two new functions xbt_mutex_tryacquire() and xbt_mutex_timedacquire(). The first
is the non blocking version of the function xbt_mutex_acquire() (if the lock is already owned by an other thread the function immediately
returns). The second function xbt_mutex_timedacquire() attempts to get the mutex during a specified delay (timeout), if the lock is not available
during this delay the function returns (throws a timeout exception). These functions (for the real life) are defined in the file xbt_rl_synchro.c and (for the simulation) in the file xbt_sg_synchro.c.
The header xbt_os_thread.h declare two new functions xbt_os_mutex_tryacquire() and xbt_os_mutex_timedaquire(). These functions represent
the implementation of the xbt_mutex_tryacquire() and xbt_mutex_timeacquire() for the real live.
These functions are implemented in the source code file xbt_os_thread.c.
The change in the files dynar.c and xbt_queue.c, philosopher.c and parallel_log_crashtest.c is the consequence of the refactoring of the functions previously described.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4866
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Thu, 25 Oct 2007 11:55:34 +0000 (11:55 +0000)]
The configuration file visualc.h is change to declare the _WIN32_WINNT macro before the inclusion of the windows.h header (this permits to use the TryEnterCriticalSection() only available if the previous macro is more or equals to 0x400).
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4865
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Thu, 25 Oct 2007 08:33:48 +0000 (08:33 +0000)]
cleanup windows portability in there
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4864
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:51:24 +0000 (13:51 +0000)]
Reduce the unimplemented part
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4863
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:50:08 +0000 (13:50 +0000)]
also autogenerated
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4862
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:49:13 +0000 (13:49 +0000)]
autogenerated
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4861
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:45:58 +0000 (13:45 +0000)]
Kill broken portability bits for visual and macosx
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4860
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:43:32 +0000 (13:43 +0000)]
Do not include the useless semaphore standard header. It's not needed, and moreover, it seems to load stdio itself. So, loading semaphore from here causes getline to become undefined since stdio.h is loaded before portable.h got a chance to declare _GNU_SOURCE
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4859
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:38:19 +0000 (13:38 +0000)]
printf format fixups
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4858
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 13:29:19 +0000 (13:29 +0000)]
* Check that sem_timedwait is available (since it's not on mac osx)
* Check only once that pthread is available (and use previous result
the second time)
* Remove a useless rewrite (s/pthreads/pthread/) in with_context since
nobody ever put pthreads as a value to this variable.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4857
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
mquinson [Tue, 23 Oct 2007 12:13:01 +0000 (12:13 +0000)]
Cosmetics on error messages
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4855
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 11:26:19 +0000 (11:26 +0000)]
Mac OS X doesn't provide the sem_timedwait() function.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4854
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 09:54:00 +0000 (09:54 +0000)]
Just add the simgrid library in the entries of the linker of Visual C++.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4853
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 09:53:15 +0000 (09:53 +0000)]
This change is about the the add-on of the semaphore examples and by the implementation of the gettimeofday() functions for Windows.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4852
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 09:48:57 +0000 (09:48 +0000)]
Add the Visual C++ projects of the new examples sem_basic and sem_sched.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4851
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 09:42:53 +0000 (09:42 +0000)]
This new directory contains two samples explaining the usage of the semaphore interface provide by the xbt layer.
The first example : sem_basic, show how to use a semaphore to manage the access of a global variable shared by multiple threads.
The second example : sem_sched, show how to use the semaphore interface to implement a simple context switch based on threads.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4850
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 09:38:51 +0000 (09:38 +0000)]
This implement the function gettimeofday() for win32 (Visual C++ does not provides this function)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4849
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Tue, 23 Oct 2007 09:37:14 +0000 (09:37 +0000)]
This change is about the refactoring of the source code of the objects use int the msg synchronization mechanism :
- the functions xbt_os_mutex_lock() and xbt_os_mutex_unlock() are renamed xbt_os_mutex_acquire() and xbt_os_mutex_release() respectively
- the functions xbt_os_sem_wait() and xbt_os_sem_post() are renamed xbt_os_sem_acquire() and xbt_os_sem_release() respectively
This renaming impacts the folowing files :
- xbt_os_thread.h and xbt_os_thread.c
- context.c
- xbt_rl_synchro.c
- run_context.c
In addition the function unschedule() declared an defined in the file context.c is renamed yield().
The prototype of the function xbt_os_sem_init() takes now only one parameter : the initial value of the semaphore.
The second parameter of the function xbt_os_sem_timedacquire() which replace the function xbt_os_sem_timedwait() is now a double (desired timeout in seconds).
To finish, the semaphore interface of the xbt portability layer does not expose the functions xbt_os_sem_open() and xbt_sem_close().
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4848
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Mon, 22 Oct 2007 15:02:21 +0000 (15:02 +0000)]
use the XBT_EXPORT_NO_IMPORT macro instead XBT_PUBLIC_DATA and add the keyword extern to avoid the gcc compiler warnings
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4847
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Mon, 22 Oct 2007 11:36:59 +0000 (11:36 +0000)]
this declarations and definitions are only concerned by the thread implementation of the xbt context
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4846
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Mon, 22 Oct 2007 09:29:37 +0000 (09:29 +0000)]
This change exports the gras_procdata pointer and use the Win32 function GetCurrentProcessId() instead the function GetCurrentProcess() to get the process identifier
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4845
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Mon, 22 Oct 2007 09:24:55 +0000 (09:24 +0000)]
Visual C++ already declare the isatty function in the header.h. So this change avoids the warning cause by this redeclaration for this compiler.
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4844
48e7efb5-ca39-0410-a469-
dd3cf9ba447f
cherierm [Mon, 22 Oct 2007 09:18:51 +0000 (09:18 +0000)]
Remove the keyword extern to avoid the multiple declaration of the the variables declared with the macro XBT_PUBLIC_DATA;
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@4843
48e7efb5-ca39-0410-a469-
dd3cf9ba447f