ó éíòRc@s«dZddlZddlZddlZddlZddlZddlZddlmZddl m Z m Z m Z ddl mZmZddlTgZyejƒZWn'ek rÙdZejdeƒnXyejƒdZWn'ek rdZejd eƒnXyejƒZWn'ek rQdZejd eƒnXejd ƒZed d ƒZejZeddjdddddddddddg ƒƒZ d„Z!d„Z"d„Z#d„Z$e%edƒsñd „Z$ne&e$_'e&d!„Z(d"„Z)ej*Z*ej+Z+ej,Z,ej-Z.ej/Z0d#„Z1ie2ej36e4ej56e6ej76e8ej96e:ej;6e<ej=6e>ej?6Z@d$eAfd%„ƒYZBdS(&s FreeBSD platform implementation.iÿÿÿÿN(t_psposix(t AccessDeniedt NoSuchProcesstTimeoutExpired(t namedtupletwraps(t*s&couldn't determine platform's NUM_CPUSis*couldn't determine platform's TOTAL_PHYMEMs'couldn't determine platform's BOOT_TIMEt SC_PAGE_SIZEtcputimessuser nice system idle irqtvmemt ttotalt availabletpercenttusedtfreetactivetinactivetbufferstcachedtsharedtwiredc Cs‡tjƒ}|\}}}}}}}}|||} |||} t|| |ddƒ} t|| | | |||||||ƒ S(s&System virtual memory as a namedutple.t_roundi(t _psutil_bsdtget_virtual_memt usage_percenttnt_virtmem_info( tmemR RRRRRRRtavailRR ((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytvirtual_memory?s cCs`gtjƒD]}|t^q \}}}}}t||ddƒ}t||||||ƒS(s@System swap memory as (total, used, free, sin, sout) namedtuple.Ri(Rt get_swap_memt _PAGESIZERtnt_swapmeminfo(txR RRtsintsoutR ((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyt swap_memoryIs2cCs1tjƒ\}}}}}t|||||ƒS(s,Return system per-CPU times as a named tuple(Rtget_system_cpu_timest_cputimes_ntuple(tusertnicetsystemtidletirq((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR%PscCs[g}xNtjƒD]@}|\}}}}}t|||||ƒ}|j|ƒqW|S(s(Return system CPU times as a named tuple(Rtget_system_per_cpu_timesR&tappend(trettcpu_tR'R(R)R*R+titem((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR,Us R,cCs;tdkrtgStjr+tdƒ‚ntt_tgS(Nis&supported only starting from FreeBSD 8(tNUM_CPUSR%R,t __called__tNotImplementedErrortTrue(((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR,fs    c Cs¥g}tjƒ}xŒ|D]„}|\}}}}|dkrFd}n|s{tjj|ƒ stjj|ƒ r{qq{nt||||ƒ}|j|ƒqW|S(Ntnonet(Rtget_disk_partitionstostpathtisabstexistst nt_partitionR-( talltretlistt partitionst partitiontdevicet mountpointtfstypetoptstntuple((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytdisk_partitionsos     cCssg}tjƒ}xZ|D]R}|\}}}}|dkrCqnt||pRd||ƒ}|j|ƒqW|S(Nt~(Rtget_system_userstnt_usertNoneR-(R>trawlistR0R'tttythostnamettstamptnt((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRH~s   cstˆƒ‡fd†ƒ}|S(s`Decorator which translates bare OSError exceptions into NoSuchProcess and AccessDenied. csœyˆ|||ŽSWntk r—tjƒd}|jtjkr^t|j|jƒ‚n|jtjtj fkr‘t |j|jƒ‚n‚nXdS(Ni( tOSErrortsystexc_infoterrnotESRCHRtpidt _process_nametEPERMtEACCESR(tselftargstkwargsterr(tfun(s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytwrapper”s (R(R]R^((R]s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytwrap_exceptionss tProcesscBseZdZddgZd„Zed„ƒZed„ƒZed„ƒZed„ƒZ ed„ƒZ e e d ƒred „ƒZ ned „ƒZed „ƒZed „ƒZed„ƒZeddƒZed„ƒZed„ƒZed„ƒZed„ƒZed„ƒZed„ƒZed„ƒZedd„ƒZed%d„ƒZed„ƒZed„ƒZed„ƒZ ed„ƒZ!edd ƒZ"edd!ƒZ#ed"„ƒZ$e e d#ƒsd$„Z%e%Ze%Z e%Z$e%ZnRS(&s1Wrapper class around underlying C implementation.RURVcCs||_d|_dS(N(RURJRV(RYRU((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyt__init__±s cCstj|jƒS(s4Return process name as a string of limited len (15).(Rtget_process_nameRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRbµscCstj|jƒS(s#Return process executable pathname.(Rtget_process_exeRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRcºscCstj|jƒS(s.Return process cmdline as a list of arguments.(Rtget_process_cmdlineRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRd¿scCsCtj|jƒ}tjƒ}y ||SWntk r>dSXdS(N(Rtget_process_tty_nrRURt_get_terminal_maptKeyErrorRJ(RYttty_nrttmap((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_process_terminalÄs    cCstj|jƒS(sReturn process parent pid.(Rtget_process_ppidRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRkÍstget_process_cwdcCstj|jƒpdS(s)Return process current working directory.N(RRlRURJ(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRlÔscCs+tj|jƒ\}}}t|||ƒS(s*Return real, effective and saved user ids.(Rtget_process_uidsRUtnt_uids(RYtrealt effectivetsaved((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRmÛscCs+tj|jƒ\}}}t|||ƒS(s+Return real, effective and saved group ids.(Rtget_process_gidsRUtnt_gids(RYRoRpRq((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRráscCs%tj|jƒ\}}t||ƒS(s3return a tuple containing process user/kernel time.(Rtget_process_cpu_timesRUt nt_cputimes(RYR'R)((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyt get_cpu_timesçscCs)tj|jƒd \}}t||ƒS(s2Return a tuple with the process' RSS and VMS size.i(Rtget_process_memory_infoRUt nt_meminfo(RYtrsstvms((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_memory_infoístmeminfosrss vms text data stackcCs|jtj|jƒŒS(N(t _nt_ext_memRRwRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_ext_memory_infoõscCstj|jƒS(sTReturn the start time of the process as a number of seconds since the epoch.(Rtget_process_create_timeRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyRùscCstj|jƒS(s6Return the number of threads belonging to the process.(Rtget_process_num_threadsRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR€ÿscCsttj|jƒŒS(N(tnt_ctxswRtget_process_num_ctx_switchesRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_num_ctx_switchesscCstj|jƒS(s=Return the number of file descriptors opened by this process.(Rtget_process_num_fdsRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyt get_num_fdsscCsUtj|jƒ}g}x6|D].\}}}t|||ƒ}|j|ƒqW|S(s6Return the number of threads belonging to the process.(Rtget_process_threadsRUt nt_threadR-(RYRKR>t thread_idtutimetstimeRE((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR† s cCsmttdƒrGtj|jƒ}g|D]\}}t||ƒ^q(Stj|j|jƒ}|jƒSdS(s8Return files opened by process as a list of namedtuples.tget_process_open_filesN(thasattrRR‹RUt nt_openfileRt LsofParserRV(RYRKR9tfdtlsof((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_open_filess &tinetcCsŒ|tkrGtd|djgtD]}t|ƒ^q"ƒfƒ‚nt|\}}tj|j||ƒ}g|D]}t|Œ^qvS(sXReturn etwork connections opened by a process as a list of namedtuples. s+invalid %r kind argument; choose between %ss, (t conn_tmapt ValueErrortjointreprRtget_process_connectionsRUt nt_connection(RYtkindR!tfamiliesttypesR.tconn((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_connections#s  5cCsDytj|j|ƒSWn&tk r?t|j|jƒ‚nXdS(N(Rtwait_pidRURRV(RYttimeout((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyt process_wait/s cCstj|jƒS(N(t _psutil_posixt getpriorityRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_process_nice6scCstj|j|ƒS(N(R¡t setpriorityRU(RYtvalue((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytset_process_nice:scCs3tj|jƒ}|tkr&t|StddƒS(Niÿÿÿÿt?(Rtget_process_statusRUt _status_maptconstant(RYtcode((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR¨>s cCs1tj|jƒ\}}}}t||||ƒS(N(Rtget_process_io_countersRUtnt_io(RYtrctwctrbtwb((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR¬Estmmaps*path rss, private, ref_count, shadow_counts6addr, perms path rss, private, ref_count, shadow_countcCstj|jƒS(N(Rtget_process_memory_mapsRU(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytget_memory_mapsOsR‹cCstdƒ‚dS(Ns&supported only starting from FreeBSD 8(R3(RY((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyt_not_implementedUsN(&t__name__t __module__t__doc__t __slots__RaR_RbRcRdRjRkRŒRRlRmRrRvR{RR}R~RR€RƒR…R†R‘RRJR R£R¦R¨R¬tnt_mmap_groupedt nt_mmap_extR´Rµ(((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pyR`¬sR         (CR¸RSR8RQtwarningsRR¡tpsutilRt psutil._errorRRRtpsutil._compatRRtpsutil._commont__extra__all__t get_num_cpusR1t ExceptionRJtwarntRuntimeWarningRt TOTAL_PHYMEMtget_system_boot_timet BOOT_TIMEtsysconfRR&R•RRR$R%R,RŒtFalseR2RFRHt get_pid_listt pid_existstget_disk_usagetget_network_io_counterstnetwork_io_counterstget_disk_io_counterstdisk_io_countersR_tSTATUS_STOPPEDtSSTOPtSTATUS_SLEEPINGtSSLEEPtSTATUS_RUNNINGtSRUNt STATUS_IDLEtSIDLtSTATUS_WAITINGtSWAITt STATUS_LOCKEDtSLOCKt STATUS_ZOMBIEtSZOMBR©tobjectR`(((s@/opt/alt/python27/lib64/python2.7/site-packages/psutil/_psbsd.pytsz