Commit Graph

44 Commits

Author SHA1 Message Date
David Anderson 1f2296b36c client: Win version name tweaks, from [P3D} Crashtest 2013-06-12 12:29:07 -07:00
David Anderson 846b8c7757 all components: change strcpy() to strlcpy() when possible.
This commit should cover the client and manager code.
2013-06-03 20:24:48 -07:00
David Anderson aadb36578b - Client: detect new Win versions and AMD GPUs; from [P3D] Crashtest 2013-04-03 00:19:01 -07:00
David Anderson 8e63d72f3d - client: updated Windows version identification, from Robert Kress 2013-03-22 10:28:20 +01:00
Rom Walton 86ceabbee2 client: Fix typo 2013-03-05 15:27:26 +01:00
Rom Walton 9ce39485b5 client: Basic detection of the battery state for a given host for Windows and Android. Useful for detecting if the battery is overheating. 2013-03-05 15:12:52 +01:00
Rom Walton 759b3b8078 client: Basic detection of how much capacity a host's battery has on Android and Windows. 2013-03-05 15:12:52 +01:00
David Anderson 3a530a4c34 - client: check return value of the function (statfs or statvfs)
used to find disk space and usage.
    This may be failing for in-memory filesystems on Linux.
2013-03-05 15:05:29 +01:00
David Anderson 9342fe696b - client (Win) fixes/improvements to CPU feature detection, from Robert Kreß 2013-03-05 14:52:37 +01:00
David Anderson 7d40c46923 - client and API: improve the way an app checks for the death of the client
Old: heartbeat mechanism
    Problem: if the client is blocked for > 30 secs
        (e.g. because it takes a long time to write the state file,
        of because it's stopped in a debugger)
        then apps exit.
        This is bad is the app doesn't checkpoint and has been
        running for a long time.
    New: the client passes its PID to the app.
        The app periodically (10 sec) checks that the process still exists.
    Notes:
    - For backward compatibility (e.g. new API w/ old client,
        or vice versa) the client still sends heartbeats,
        and the API checks heartbeats if the client doesn't pass a PID.
    - The new mechanism works only if the client's PID isn't assigned
        to a new process within 10 secs of the client exiting.
        Windows 2000 reuses PIDs immediately, so check for Win2K
        and don't use this mechanism if so.

TODO: For Unix multithread apps,
    critical sections aren't currently being enforced.
    Need to fix this by masking signals.


svn path=/trunk/boinc/; revision=26147
2012-10-11 16:41:31 +00:00
David Anderson 4dc940653c - client:
- added the definitions for the new Windows 7/2008r2 preSP1
            and Windows 8/2012 SKUs based on the winnt.h
            from the Windows 8 RC SKD (also added as proof)
        - added the detection for some more Windows SKU
        - Updates provided by Teamwork of Planet3Dnow.de to coproc_detect.cpp
            - added CAL_TARGET_ID 21 as : AMD Radeon HD 78x0 series (Pitcairn)
        (from [P3D] Crashtest)

svn path=/trunk/boinc/; revision=25760
2012-06-14 18:45:58 +00:00
David Anderson 361877a59f - client: detect Windows HyperV Server 2008 R2 (from Crashtest)
svn path=/trunk/boinc/; revision=24921
2011-12-28 00:22:20 +00:00
Rom Walton 9c7c7a22ad Quick Updates
svn path=/trunk/boinc/; revision=24773
2011-12-10 16:46:42 +00:00
Rom Walton 9e1cafbf4d Quick Updates
svn path=/trunk/boinc/; revision=24209
2011-09-14 22:09:12 +00:00
Rom Walton c2e922b3df - client: Update Windows detection code to support Windows 8.
(From: [P3D] Crashtest)
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=24208
2011-09-14 22:03:16 +00:00
Rom Walton 32f5c73d65 - client: Account for new registry location that the new VirtualBox installer
stashes the version number.  Check the new location first, if not found go
        back to the original location.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=23562
2011-05-19 16:57:19 +00:00
David Anderson 1141c18265 win compile fix
svn path=/trunk/boinc/; revision=23215
2011-03-10 22:01:56 +00:00
David Anderson 4d21b4960a - client: don't put CDATA around account manager opaque data
in request msg

    client/
        acct_mgr.cpp

svn path=/trunk/boinc/; revision=23214
2011-03-10 21:54:31 +00:00
David Anderson 6784283211 - user web: fix bugs in server status page
- fix some indentation


svn path=/trunk/boinc/; revision=22890
2011-01-06 23:09:13 +00:00
Rom Walton d4d0f7b43b - client: Add VirtualBox detection for linux
client/
        hostinfo_unix.cpp
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=22714
2010-11-18 21:11:25 +00:00
David Anderson 3355b66241 - client and scheduler: a client host may have multiple VM systems installed.
TODO: check for VirtualBox on Mac, Linux

svn path=/trunk/boinc/; revision=22704
2010-11-17 23:19:07 +00:00
Rom Walton f0ae0b832d - client: Add support to detect VirtualBox VM software.
client/
        client_state.cpp
        hostinfo_win.cpp
    lib/
        hostinfo.cpp, .h

svn path=/trunk/boinc/; revision=22702
2010-11-17 20:08:18 +00:00
David Anderson 40c50852f5 - scheduler: fix logic that deals with jobs that need > 2GB RAM.
My change of 1 Oct ([22440]) required that such jobs
    be processed with 64-bit apps,
    on the assumption that 32-bit apps have a 2 GB user address space limit.
    However, it turns out this limit applies only to Windows
    (kernel and user mode share the 4GB address space; each gets half).
    On Linux, the split is 3GB user / 1 GB kernel.
    On Mac OS X, user mode and kernel mode have separate address spaces,
    each of them 4 GB.


svn path=/trunk/boinc/; revision=22599
2010-10-27 22:58:16 +00:00
Rom Walton a1cbb05482 - client: Only error out of the CPU version check if the call to CPUID(0)
returns zero.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=22266
2010-08-18 17:26:55 +00:00
Rom Walton e14e1cad34 - Remove BOINC_RCSID tags from source files, we are doing branching and tagging
properly.
        
    <Various Files>

svn path=/trunk/boinc/; revision=20873
2010-03-12 16:51:57 +00:00
Rom Walton b6b528f690 Quick Updates
svn path=/trunk/boinc/; revision=20783
2010-03-03 22:15:46 +00:00
Rom Walton c97d777998 - client: more Windows SKU detection changes
(from: [P3D] Crashtest)

    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=20782
2010-03-03 22:06:03 +00:00
Rom Walton 4f2c78d4e9 - client: Add missing European SKUs to the host detection code.
(from: Robert Kreß)
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=20771
2010-03-02 18:04:27 +00:00
Rom Walton 2a5248cf39 - client: Improve error checking with CPU detection features.
- lib: cleanup some warnings.
    
    client/
        hostinfo_win.cpp
    lib/
        str_util.h

svn path=/trunk/boinc/; revision=20764
2010-03-02 00:21:40 +00:00
Rom Walton 24f49eac73 - WIN: Add some missing CPU features to the feature list
- WIN: Make sure the Brand string for a CPU is printable. Older Intel
        processors have some control characters.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=20729
2010-02-25 15:48:54 +00:00
Rom Walton a5bbf07ccc - client: Add a function to the client software to be able to detect
the number of bytes sent and received across all non-loopback
        interfaces.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=20704
2010-02-23 05:13:54 +00:00
Rom Walton f0b9a297e1 - client: some more CPU detection cleanup.
client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=20475
2010-02-09 19:00:07 +00:00
Rom Walton 2913c4b318 Quick Updates
svn path=/trunk/boinc/; revision=20470
2010-02-08 21:42:49 +00:00
Rom Walton 09197c6a1a - client: detect CPU information via the cpuid instruction instead of
the registry.  This change is only for Windows but I haven't tested
        this with GCC.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=20469
2010-02-08 21:39:12 +00:00
Rom Walton 329303b323 - Remove need for boinc.dll from the client.
client/
        hostinfo_win.cpp
        main.cpp
    clientctrl/
        boincsvcctrl.cpp
    clientgui/
        BOINCClientManager.cpp
        BOINCGUIApp.cpp
        BOINCGUIApp.h
        stdwx.h
    clienttray/
        tray_win.cpp
        tray_win.h
    lib/
        boinc_win.h
        daemonmgt.cpp (Deleted)
        daemonmgt.h (Added)
        daemonmgt_win.cpp (Added)
        idlemon.h (Added)
        idlemon_win.cpp (Added)
        idlemon_win.h (Deleted)
    win_build/
        boinc.sln
        boinc_dll.vcproj
        boincmgr.vcproj
        boincsvcctrl.vcproj
        boinctray.vcproj
        libboinc.vcproj

svn path=/trunk/boinc/; revision=19576
2009-11-13 21:23:15 +00:00
Rom Walton 3e5aa9834c - client: add missing Windows SKUs.
From Robert Kreß
    
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=19195
2009-09-28 15:46:27 +00:00
Rom Walton 9f5c62a375 - client: report the different Windows 7 and Windows 2008
"R2" correctly.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=19170
2009-09-25 18:56:52 +00:00
David Anderson 563a55f37e - client/libs/samples: remove "#define read _read" etc. from boinc_win.h
These cause problems when "read" is a member name, etc.
		Do these #defines, conditioned on _MSC_VER,
		in the files that actually need them.
	- don't include boinc_win.h from parse.h.
		principle of minimal inclusion

svn path=/trunk/boinc/; revision=18902
2009-08-22 17:00:19 +00:00
Rom Walton f0b74d520a - client: Remove Win9x compatibility code from memory detection
routine.
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=18741
2009-07-28 01:30:07 +00:00
Rom Walton fcc031a6d5 - client: Remove backwards compatible CPU feature detection code
since we no longer support Win9x
        
    client/
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=18598
2009-07-15 20:14:44 +00:00
David Anderson 0b3ce504ff - Win: compile fixes
svn path=/trunk/boinc/; revision=18439
2009-06-16 21:58:38 +00:00
Rom Walton 558b81d4b6 Fix spelling mistake
svn path=/trunk/boinc/; revision=17794
2009-04-13 14:55:32 +00:00
Rom Walton 696dfba813 - client: initial support for detecting the CPU L2 cache
size on Windows.
        
    client/
        client_state.cpp
        cs_benchmark.cpp
        hostinfo_win.cpp

svn path=/trunk/boinc/; revision=17637
2009-03-20 01:46:29 +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