Commit Graph

22 Commits

Author SHA1 Message Date
David Anderson 53782b7de4 - lib: switch include order to the way it was (general to specific).
Should fix MinGW compile


svn path=/trunk/boinc/; revision=26008
2012-08-11 05:47:18 +00:00
David Anderson 405f567c81 - code cleanup: in foo.cpp, include foo.h first
svn path=/trunk/boinc/; revision=25933
2012-08-01 20:04:05 +00:00
Charlie Fenton 6f330ed430 lib: Adjust #include files as requested by Oliver Bock
svn path=/trunk/boinc/; revision=25880
2012-07-18 08:49:27 +00:00
David Anderson 68b3fe6b19 - client: fix crashing bug when there's a cycle in the process graph.
I had fixed this in one place but not another.
- client: don't memset(0,) a PROCINFO; use clear() instead


svn path=/trunk/boinc/; revision=24431
2011-10-19 07:49:23 +00:00
David Anderson b16f603a8a - client (and API and manager): change the data structure
used for system process info
    Old: vector of PROCINFO.
        Descendants of a process were found by recursively
        iterating through the vector.
        Operations are O(n)
    New: map of (id, PROCINFO),
        and each PROCINFO has a vector of its children.
        Operations are O(log(n))
    Also combined Mac/Win/Linux variants of code that
    was essentially the same.


svn path=/trunk/boinc/; revision=24117
2011-09-02 17:45:29 +00:00
David Anderson a0fd3445fc - wrapper: improve and bullet-proof the way we kill apps.
Win: enumerate all descendants, and kill them all TerminateProcess().
    Unix:
        send the main process a SIGTERM.
        Check once a sec for existence of descendants.
        if none, done
        If any still exist after 10 sec, kill all descendants
- wrapper fix bug in Win env var stuff
- scheduler: check for VBox version 3.2+ in app_plan()
    

svn path=/trunk/boinc/; revision=23085
2011-02-22 23:11:34 +00:00
Charlie Fenton 5e10e24311 lib: Add test for low-priority processes to procinfo_setup() and relatives on Mac
svn path=/trunk/boinc/; revision=22427
2010-09-30 06:45:45 +00:00
David Anderson 1f9454c576 - client (unix): don't count low-priority processes towards
non-BOINC CPU time.
    NOTE: when you nice a process to 19,
    its priority in /proc is 39 (at least on Ubuntu and FC11).
    I can't find where this offset (20) is documented,
    so I just hardwired 39.

    TODO: Mac

svn path=/trunk/boinc/; revision=22424
2010-09-29 20:12:41 +00:00
Charlie Fenton 9d55213996 client: fix problems with exclusive_gpu_app feature
svn path=/trunk/boinc/; revision=22310
2010-08-31 10:35:42 +00:00
Charlie Fenton 9c185c44b0 Mac: fix compiler warning
svn path=/trunk/boinc/; revision=21755
2010-06-16 02:10:23 +00:00
Charlie Fenton 7787d8ef66 client: Improve code for determining non-BOINC CPU time for branded clients (Mac & Windows)
svn path=/trunk/boinc/; revision=21188
2010-04-15 23:02:13 +00:00
Charlie Fenton ab7df01162 client: Add code for determining non-BOINC CPU time for GR and PtP clients (Mac & Windows)
svn path=/trunk/boinc/; revision=21169
2010-04-13 08:52:50 +00:00
Charlie Fenton 4b91fb69cc client: Fix bug in determining non-BOINC CPU time (Mac).
svn path=/trunk/boinc/; revision=21162
2010-04-09 23:36:49 +00:00
Charlie Fenton 8e7f5082e2 Mac: don't include graphics apps in non-BOINC CPU time; optimize screensaver for OS 10.6.
svn path=/trunk/boinc/; revision=21132
2010-04-07 11:37:56 +00:00
David Anderson f5ab42494a - client: fix typos
svn path=/trunk/boinc/; revision=20581
2010-02-16 01:00:35 +00:00
David Anderson 768f3bfe0b - client: include CPU usage of client in BOINC total.
Also include manager if its name includes "boinc"
    (can't figure out another way)

svn path=/trunk/boinc/; revision=20566
2010-02-15 01:00:32 +00:00
Charlie Fenton 02d8176505 Mac client: use rss keyword not rsz in ps command for OS 10.6 compatibility.
svn path=/trunk/boinc/; revision=18900
2009-08-21 22:28:38 +00:00
Charlie Fenton b544a24a74 Mac MGR: strip /n from command field of PROCINFO struct to fix <exclusive_app>; KillClient() gets pid from procinfo_setup() except on Windows; restore boinc.jpg file
svn path=/trunk/boinc/; revision=18385
2009-06-12 00:42:09 +00:00
Charlie Fenton 930d3c08a3 Mac client: fill in command field of PROCINFO struct more efficiently
svn path=/trunk/boinc/; revision=17775
2009-04-10 01:09:58 +00:00
Charlie Fenton dab27897c2 Mac client: fill in command field of PROCINFO struct so <exclusive_app> log flag works properly on Mac.
svn path=/trunk/boinc/; revision=17760
2009-04-09 10:41:11 +00:00
Eric J. Korpela 8f3abcc835 - Added checks for net/*.h, arpa/*.h, netinet/*.h and code to figure out
which of those files to include
    - Modified MAC address check to work on some non-Linux unixes.
      (mac_address.cpp)
    - Added suggested change to "already attached to project" checking.
      (ProjectInfoPage.cpp)
    - changed includes of standard c header files to their c++ equivalents
      (i.e. replaced <stdio.h> with <cstdio>) for namespace protection.
    - replaced "using namespace std;" with more explicit "using std::function" in
      several files.
    - Fixed bug in checking whether the os is OS/2 and added conditional OS_OS2
      to the build environment. (boinc_platform.m4,configure.ac)
    - Changed build environment to not use -nostandardlibs unless we are using
      G++ and static linkage is specified. (configure.ac)
    - Added makefiles and package building files for solaris CSW package manager.
    - Fixed bug with attempting to find login name using logname. (configure.ac)
    - Added ifdef HAVE_* protection around some include files commonly found in
      sys.
    - Added support for unified binary for x86_64/i686-pc-solaris.
      (cs_platforms.cpp)
    - generate_host_cpid() now uses MAC address on non-linux unix.
      (hostinfo_network.cpp)
    - Macro BOINC_SET_COMPILE_FLAGS now doesn't check gcc only flags on non-gcc
      compilers. (boinc_set_compile_flags.m4)
    - Library compiles no longer depend upon the library extension or require
      the library to be prefixed with lib.
    - More fixes for fcgi builds.
    - Added declaration of "struct ether_addr" and ether_ntoa().  Have not yet
      implemented ether_ntoa() for machines that don't have it, or where it is
      buggy.  (unix_util.h)
    - Added FCGI::perror() which calls FCGI_perror(). (boinc_fcgi.{h,cpp})
    - Fixed library Makefiles so that all required headers get installed.


svn path=/trunk/boinc/; revision=17388
2009-02-26 00:23:23 +00:00
David Anderson 98cfb8d3b0 - rename .C files to .cpp so that Doxygen will work
svn path=/trunk/boinc/; revision=16069
2008-09-26 18:20:24 +00:00