ó éíòRc@ sdZddlmZddlZddlZddlZddlZddlZddlm Z m Z m Z dd„Z defd„ƒYZd„Zd efd „ƒYZdd „Zd „Zed dƒZeddƒZeddƒZeddƒZeddƒZeddƒZeddƒZeddƒZeddƒZedd ƒZed!d"ƒZed#d$ƒZ ddl!Z!dd%l!m"Z"m#Z#m$Z$e%e!d&dƒZ&e%e!d'dƒZ'ie"e&e'ge#e$gfd(6e"e&ge#gfd)6e"ge#gfd*6e"e&ge$gfd+6e"ge$gfd,6e"e&ge#e$gfd-6e"ge#e$gfd.6e&ge#e$gfd/6Z(e&dk r¿e(j)ie&ge#gfd06e&ge$gfd16ƒne'dk rñe(j)ie'ge#e$gfd26ƒn["[&['[#[$[!e d3d4ƒZ*e d5d6ƒZ+e d3d4ƒZ,e d7d8ƒZ-e d9d:ƒZ.e d9d;ƒZ/e d<d=ƒZ0e d>d?ƒZ1e d@dAƒZ2e dBdCƒZ3e dDdEƒZ4e dFdGƒZ5e d<dHƒZ6e dIdHƒZ7e dJdKƒZ8e dLdMƒZ9e dNdOƒZ:dS(Ps*Common objects shared by all _ps* modules.iÿÿÿÿ(tdivisionN(t namedtupletlongtwrapscC sMy||d}Wntk r+d}nX|dk rEt||ƒS|SdS(s5Calculate percentage usage of 'used' against 'total'.idiN(tZeroDivisionErrortNonetround(tusedttotalt_roundtret((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt usage_percents    tconstantcB s5eZdZdd„Zd„Zd„Zd„ZRS(sFA constant type; overrides base int to provide a useful name on str().cC s@tt|ƒj||ƒ}||_|dk r<||_n|S(N(tsuperR t__new__t_nameRt__doc__(tclstvaluetnametdoctinst((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyR!s    cC s|jS(N(R(tself((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt__str__(scC s^t|tƒrt|ƒ|kSt|tƒr>t|ƒ|kSt|tƒrZ|j|kStS(N(t isinstancetintRtstrRtFalse(Rtother((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt__eq__+s cC s|j|ƒ S(N(R(RR((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt__ne__;sN(t__name__t __module__RRRRRR(((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyR s    c si‰‡‡fd†}|S(s)A simple memoize decorator for functions.c s'|ˆkrˆ|Œˆ|stcached_propertycB s&eZdZeZd„Zd„ZRS(s)A memoize decorator for class properties.cC s ||_dS(N(tfunc(RR'((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt__init__KscC s2|j|ƒ}|jr.||j|jjA decorator which can be used to mark functions as deprecated.c sgdˆj‰ˆdk r*ˆdˆ7‰nˆjdkrEˆˆ_ntˆƒ‡‡fd†ƒ}|S(Nspsutil.%s is deprecateds; use %s insteadc s&tjˆdtddƒˆ||ŽS(Ntcategoryt stackleveli(twarningstwarntDeprecationWarning(targstkwargs(tfuntmsg(sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pytinner^s(RRRR(R6R8(t replacement(R6R7sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pytouterWs   ((R9R:((R9sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt deprecatedUs cC smytj|ƒ}WnCtk rXtjƒd}|jtjtjfkrT‚ntSXtj |j ƒSdS(sœSame as os.path.isfile() but does not swallow EACCES / EPERM exceptions, see: http://mail.python.org/pipermail/python-dev/2012-June/120787.html iN( toststattOSErrortsystexc_infoterrnotEPERMtEACCESRtS_ISREGtst_mode(tpathtstterr((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyt isfile_strictgs itrunningitsleepingis disk sleepitstoppedis tracing stopitzombieitdeadis wake killitwakingi tidlei tlockedi twaiting(tAF_INETt SOCK_STREAMt SOCK_DGRAMtAF_INET6tAF_UNIXtallttcpttcp4tudptudp4tinettinet4tinet6ttcp6tudp6tunixtusagestotal used free percenttswaps total used free percent sin soutt partitionsdevice mountpoint fstype optstiostatsKbytes_sent bytes_recv packets_sent packets_recv errin errout dropin dropoutsBread_count write_count read_bytes write_bytes read_time write_timetusersname terminal host startedtmeminfosrss vmstcputimess user systemtopenfilespath fdt connections2fd family type local_address remote_address statustthreadsid user_time system_timesreal effective savedtgrouptios-read_count write_count read_bytes write_bytestionices ioclass valuetamountsvoluntary involuntary(;Rt __future__RR?R<R=RAR1tpsutil._compatRRRRR RR R%tobjectR&R;RItSTATUS_RUNNINGtSTATUS_SLEEPINGtSTATUS_DISK_SLEEPtSTATUS_STOPPEDtSTATUS_TRACING_STOPt STATUS_ZOMBIEt STATUS_DEADtSTATUS_WAKE_KILLt STATUS_WAKINGt STATUS_IDLEt STATUS_LOCKEDtSTATUS_WAITINGtsocketRSRTRUtgetattrRVRWt conn_tmaptupdatet nt_sysmeminfotnt_swapmeminfot nt_diskinfot nt_partitiont nt_net_iostattnt_disk_iostattnt_usert nt_meminfot nt_cputimest nt_openfilet nt_connectiont nt_threadtnt_uidstnt_gidstnt_iot nt_ionicetnt_ctxsw(((sA/opt/alt/python27/lib64/python2.7/site-packages/psutil/_common.pyts€