Sindbad~EG File Manager

Current Path : /usr/local/lib64/python3.6/site-packages/psutil/__pycache__/
Upload File :
Current File : //usr/local/lib64/python3.6/site-packages/psutil/__pycache__/_psbsd.cpython-36.pyc

3

�[g�}�@s�dZddlZddlZddlZddlZddlmZddlmZddlm	Z	ddl
mZddl
mZdd	l
m
Zdd
l
mZddlmZddlmZdd
lmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlm Z ddlm!Z!gZ"e�r�ej#ej$ej%ej&ej'ej(ej)ej*ej+ej,ej-ej.ej/ej0iZ1n~e�r�ej#ej$ej'ej(ej)ej*ej2ej,ej+ej,ej%ej3ej4ej&iZ1n:e�r�ej#ej$ej'ej(ej)ej*ej+ej,ej%ej3ej4ej&iZ1ej5ej6ej7ej8ej9ej:ej;ej<ej=ej>ej?ej@ejAejBejCejDejEejFejGejHejIejJejKejLiZMejN�ZOejPZPeQed�ZReQed�ZSeQed�ZTeQed�ZUeVdddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d6�ZWed7d8d9d:d;d<d=d>d?d@dAdBg�ZXedCdDdEdFdGdHg�ZYedIdJdKdLdMdNg�ZZeZZ[edOdDdFdPdQg�Z\edRdS�Z]edTdU�Z^e�rdedVdWdXdYdZd[d\d]g�Z_nedVdWdXdYdZg�Z_d^d_�Z`d`da�Zadbdc�ZbeR�r�ddd�Zcnded�Zcdfec_ddgdh�Zee�s�e�r�didj�Zfndkdj�Zfdldm�Zge�r�dndo�Zhne�r�dpdo�Zhd�dqdr�ZiejjZjejkZkejlZlejmZmdsdt�Zndudv�Zoe�r@dwdx�Zpdydz�Zqd{d|�Zrd}d~�Zsedd���Ztd�d��Zue�rtd�d��Zvne�r�d�d��ZvnejvZvd�d��Zwd�d��Zxejyd�d���ZzGd�d��d��Z{dS)�z5FreeBSD, OpenBSD and NetBSD platforms implementation.�N)�defaultdict)�
namedtuple)�ElementTree�)�_common)�_psposix)�_psutil_bsd)�
_psutil_posix)�FREEBSD)�NETBSD)�OPENBSD)�AccessDenied)�
NoSuchProcess)�
ZombieProcess)�	conn_tmap)�conn_to_ntuple)�debug)�memoize)�memoize_when_activated)�
usage_percent)�FileNotFoundError)�PermissionError)�ProcessLookupError)�which�
per_cpu_times�proc_num_threads�proc_open_files�proc_num_fds��������	�
���
�����������)�ppid�status�real_uid�
effective_uid�	saved_uid�real_gid�
effective_gid�	saved_gid�ttynr�create_time�ctx_switches_vol�ctx_switches_unvol�
read_io_count�write_io_count�	user_time�sys_time�ch_user_time�ch_sys_time�rss�vms�memtext�memdata�memstack�cpunum�name�svmem�total�	available�percent�used�free�active�inactive�buffers�cached�shared�wired�	scputimes�user�nice�system�idle�irq�pmemrGrH�text�data�stack�	pcputimes�
children_user�children_system�
pmmap_groupedz*path rss, private, ref_count, shadow_count�	pmmap_extz6addr, perms path rss, private, ref_count, shadow_count�sdiskio�
read_count�write_count�
read_bytes�write_bytes�	read_time�
write_timeZ	busy_timecCs�tj�}tr�|\}}}}}}tdd��R}xJ|D]B}|jd�rRt|j�d�d}	q.|jd�r.t|j�d�d}
q.WWdQRX||}||}n,|\}}}}}}}	}
|||}|||}t|||dd�}
t|||
|||||	||
|�S)Nz
/proc/meminfo�rbsBuffers:ris
MemShared:)�round_)	�cextZvirtual_memr�open�
startswith�int�splitrrN)ZmemrOrSrTrUrYrW�f�linerVrXrRZavailrQ�ry�9/usr/local/lib64/python3.6/site-packages/psutil/_psbsd.py�virtual_memory�s6


"
r{cCs4tj�\}}}}}t||dd�}tj||||||�S)z@System swap memory as (total, used, free, sin, sout) namedtuple.r)rq)rrZswap_memrr�sswap)rOrRrS�sin�soutrQryryrz�swap_memory�srcCs"tj�\}}}}}t|||||�S)z,Return system per-CPU times as a namedtuple.)rr�	cpu_timesrZ)r[r\r]r^r_ryryrzr��sr�cCsBg}x8tj�D],}|\}}}}}t|||||�}|j|�qW|S)z(Return system CPU times as a namedtuple.)rrrrZ�append)�retZcpu_tr[r\r]r^r_�itemryryrzr�scCs2t�dkrt�gStjr$d}t|��dt_t�gS)z(Return system CPU times as a namedtuple.rz&supported only starting from FreeBSD 8T)�cpu_count_logicalr�r�
__called__�NotImplementedError)�msgryryrzr
s
FcCstj�S)z0Return the number of logical CPUs in the system.)rrr�ryryryrzr�sr�cCst�dkrdSdS)Nr)r�ryryryrz�cpu_count_coressr�c
Csxd}tj�}|dk	rb|jd�}|dkrb|d|d�}tj|�}zt|jd��pRd}Wd|j�X|stt�dkrtdS|S)z-Return the number of CPU cores in the system.Nz	</groups>rr%zgroup/children/group/cpu���)	rrZcpu_topology�rfindr�
fromstring�len�findall�clearr�)r��s�index�rootryryrzr�$s



c	Cs�trtj�\}}}}}nttrrtj�\}}}}}}}tdd��.}x&|D]}|jd�rDt|j�d�}qDWWdQRXntr�tj�\}}}}}}}t	j
||||�S)z*Return various CPU stats as a named tuple.z
/proc/statrpsintrrN)r
rr�	cpu_statsrrsrtrurvrr�	scpustats)	ZctxswZintrsZ
soft_intrs�syscallsZ_trapsZ_faultsZ_forksrwrxryryrzr�?s

 r�cCs�g}t�}x�t|�D]�}ytj|�\}}Wntk
r@wYnX|r�y t|jd�djd�d�}Wnttfk
r�d}YnXy t|jd�djd�d�}Wnttfk
r�d}YnX|j	t
j|||��qW|S)z�Return frequency metrics for CPUs. As of Dec 2018 only
        CPU 0 appears to be supported by FreeBSD and all other cores
        match the frequency of CPU 0.
        � r�/rNr�)r��rangerr�cpu_freqr�rurv�
IndexError�
ValueErrorr�r�scpufreq)r��num_cpus�cpu�currentZavailable_freqZmin_freqZmax_freqryryrzr�as$ 
 
r�cCsttj��}tj|dd�gS)Ng)�floatrrr�rr�)�currryryrzr�{sc	CsDg}tj�}x2|D]*}|\}}}}tj||||�}|j|�qW|S)z�Return mounted disk partitions as a list of namedtuples.
    'all' argument is ignored, see:
    https://github.com/giampaolo/psutil/issues/906.
    )rr�disk_partitionsr�	sdiskpartr�)	�all�retlistZ
partitions�	partition�device�
mountpoint�fstype�opts�ntupleryryrzr��s
r�c
Cs�t�j�}i}x�|D]�}y&tj|�}tj|�}tj|�\}}Wn0tk
rn}z|jtjkr^�WYdd}~XqXt	t
d�r�t
j|�}dj|�}d|k}	t
j
|	||||�||<qW|S)z)Get NIC stats (isup, duplex, speed, mtu).N�	NicDuplex�,�running)�net_io_counters�keys�
cext_posixZ
net_if_mtuZnet_if_flagsZnet_if_duplex_speed�OSError�errnoZENODEV�hasattrrr��join�	snicstats)
�namesr�rM�mtu�flags�duplex�speed�errZoutput_flags�isupryryrz�net_if_stats�s"






r�c
Cs�|tjkr*td|djdd�tD��f��t|\}}t�}trPtjd||�}ntrbtjd|�}ntj||�}x>|D]6}|\}}}}	}
}}t	||||	|
|t
|�}
|j|
�qtWt|�S)z System-wide network connections.z+invalid %r kind argument; choose between %sz, cSsg|]}t|��qSry)�repr)�.0�xryryrz�
<listcomp>�sz#net_connections.<locals>.<listcomp>rr�r�)
rrr�r��setrrr�net_connectionsrr�TCP_STATUSES�add�list)�kind�families�typesr��rawlistr��fd�fam�type�laddr�raddrr6�pid�ntryryrzr��s"

r�cCsbytj�\}}}Wntk
r&dSX|dk}|r<tj}n|dkrLtj}n|d}tj|||�S)zReturn battery info.Nr�<r�)rr�sensors_batteryr�r�POWER_TIME_UNLIMITED�POWER_TIME_UNKNOWN�sbattery)rQZminsleft�
power_plugged�secsleftryryrzr��sr�c
Csztt�}t�}xft|�D]Z}y@tj|�\}}|dkr8d}d|}|djtj||||��Wqt	k
rpYqXqW|S)z?Return CPU cores temperatures if available, else an empty dict.rNzCore %sZcoretemp)
rr�r�r�rrZsensors_cpu_temperaturer�r�shwtempr�)r�r�r�r��highrMryryrz�sensors_temperatures�s
r�cCstj�S)z:The system boot time expressed in seconds since the epoch.)rr�	boot_timeryryryrzr�sr�c	Csjg}tj�}xX|D]P}|\}}}}}|dkr8ts4t�d}|dkrBqtj||pNd|||�}|j|�qW|S)z:Return currently connected users as a list of namedtuples.rN�~r�)rr�usersr�AssertionErrorr�suserr�)	r�r�r�r[�tty�hostnameZtstampr�r�ryryrzr�s
r�cCs@ytd�j�Wn&tk
r$dStk
r6dSXdSdS)NrFT)�ProcessrMrr
ryryryrz�
_pid_0_existssr�cCs*tj�}tr&d|kr&t�r&|jdd�|S)z7Returns a list of PIDs currently running on the system.r)rr�pidsrr��insert)r�ryryrzr�'sr�cCs tj|�}|s|t�kSdSdS)NT)r�
pid_existsr�)r��existsryryrzr�3s

r�cCs tj|�}|sdS|t�kSdS)NF)rr�r�)r�r�ryryrzr�>s
cCs<y"tj|�td}tj|�tjkStk
r6dSXdS)Nr6F)rr�proc_oneshot_info�kinfo_proc_map�
PROC_STATUSES�getr�
STATUS_ZOMBIEr�)r��stryryrz�	is_zombieLs
r�cstj���fdd��}|S)z`Decorator which translates bare OSError exceptions into
    NoSuchProcess and AccessDenied.
    cs�y�|f|�|�Stk
rPt|j�r>t|j|j|j��nt|j|j��Yn\tk
rpt|j|j��Yn<t	k
r�|jdkr�dt
�kr�t|j|j��n��YnXdS)Nr)rr�r�r�_name�_ppidrrr
r�r�)�self�args�kwargs)�funryrz�wrapperYs


z wrap_exceptions.<locals>.wrapper)�	functools�wraps)r�r�ry)r�rz�wrap_exceptionsTsr�ccsty
dVWndttfk
rNt|j�r<t|j|j|j��nt|j|j��Yn"tk
rnt	|j|j��YnXdS)z8Same as above, for routines relying on reading /proc fs.N)
rrr�r�rr�r�rrr
)�instryryrz�wrap_exceptions_procfsos

r�c@s�eZdZdZddddgZdd�Zdd	�Zeed
d���Z	dd
�Z
dd�Zedd��Zedd��Z
edd��Zedd��Zedd��Zedd��Zedd��Zedd��Zed d!��Zer�ed"d#��Zed$d%��ZeZed&d'��Zed(d)��Zed*d+��Zed,d-��ZedOd/d0��ZedPd2d3��Zed4d5��Zed6d7��Z ed8d9��Z!ed:d;��Z"ed<d=��Z#e$d>d?�Z%e$d>d@�Z&dAdB�Z'e(�r�edCdD��Z)ne'Z)e*�r�edEdF��Z+ne'Z+e�r�edGdH��Z,edIdJ��Z-edKdL��Z.edQdMdN��Z/d1S)Rr�z1Wrapper class around underlying C implementation.�_cacher�r�r�cCs||_d|_d|_dS)N)r�r�r�)r�r�ryryrz�__init__�szProcess.__init__cCstj|j�dS)z+Raise NSP if the process disappeared on us.N)rr�	proc_namer�)r�ryryrz�
_assert_alive�szProcess._assert_alivecCs$tj|j�}t|�tt�ks t�|S)z;Retrieves multiple process info in one shot as a raw tuple.)rrr�r�r�r�r�)r�r�ryryrz�oneshot�szProcess.oneshotcCs|jj|�dS)N)r�cache_activate)r�ryryrz�
oneshot_enter�szProcess.oneshot_entercCs|jj|�dS)N)r�cache_deactivate)r�ryryrz�oneshot_exit�szProcess.oneshot_exitcCs(|j�td}|dk	r|Stj|j�S)NrM)rr�rrr�r�)r�rMryryrzrM�szProcess.namec
Csvtr|jdkrdStj|j�StrR|jdkr0dSt|��tjd|j�SQRXn |j�}|rnt	|d�pldSdSdS)Nr�z/proc/%s/exe)
r
r�rrZproc_exerr��os�readlink�cmdliner)r�rryryrz�exe�s


zProcess.execCs�tr|jdkrgStr�ytj|j�Stk
r�}zb|jtjkr�t|j�r^t	|j|j
|j��q�t|j�s|t
|j|j
|j��q�td|�gSn�WYdd}~Xq�Xntj|j�SdS)Nrz'ignoring %r and returning an empty list)rr�rrrZproc_cmdliner�r��EINVALr�rr�r�r�rr)r�r�ryryrzr�s

zProcess.cmdlinecCstj|j�S)N)rrZproc_environr�)r�ryryrz�environ�szProcess.environcCs:|j�td}tj�}y||Stk
r4dSXdS)Nr=)rr�rZget_terminal_map�KeyError)r�Ztty_nrZtmapryryrz�terminal�szProcess.terminalcCs|j�td|_|jS)Nr5)rr�r�)r�ryryrzr5�szProcess.ppidcCs.|j�}tj|td|td|td�S)Nr7r8r9)rr�puidsr�)r��rawtupleryryrz�uids�s


zProcess.uidscCs.|j�}tj|td|td|td�S)Nr:r;r<)rr�pgidsr�)r�rryryrz�gids�s


zProcess.gidscCs8|j�}tj|td|td|td|td�S)NrCrDrErF)rrrdr�)r�rryryrzr��s


zProcess.cpu_timescCs|j�tdS)NrL)rr�)r�ryryrz�cpu_numszProcess.cpu_numcCs@|j�}t|td|td|td|td|td�S)NrGrHrIrJrK)rr`r�)r�rryryrz�memory_info
s



zProcess.memory_infocCs|j�tdS)Nr>)rr�)r�ryryrzr>szProcess.create_timecCs trtj|j�St|j��SdS)N)�HAS_PROC_NUM_THREADSrrrr�r��threads)r�ryryrz�num_threadsszProcess.num_threadscCs$|j�}tj|td|td�S)Nr?r@)rr�pctxswr�)r�rryryrz�num_ctx_switches#s
zProcess.num_ctx_switchescCsLtj|j�}g}x*|D]"\}}}tj|||�}|j|�qWtrH|j�|S)N)rrZproc_threadsr�r�pthreadr�rr�)r�r�r�Z	thread_id�utimeZstimer�ryryrzr+szProcess.threads�inetc	Cs�|tkr(td|djdd�tD��f��t|\}}g}trLtj|j|�}n&trbtj|j||�}ntj|j||�}xX|D]P}|dd�\}}}	}
}}t	r�||ksx|	|kr�qxt
|||	|
||t�}
|j|
�qxW|j
�|S)Nz+invalid %r kind argument; choose between %sz, cSsg|]}t|��qSry)r�)r�r�ryryrzr�<sz+Process.net_connections.<locals>.<listcomp>r")rr�r�rrrr�r�rZproc_net_connectionsr
rr�r�r�)r�r�r�r�r�r�r�r�r�r�r�r�r6r�ryryrzr�7s*
zProcess.net_connectionsNcCstj|j||j�S)N)rZwait_pidr�r�)r��timeoutryryrz�waitUszProcess.waitcCstj|j�S)N)r��getpriorityr�)r�ryryrz�nice_getYszProcess.nice_getcCstj|j|�S)N)r��setpriorityr�)r��valueryryrz�nice_set]szProcess.nice_setcCs|j�td}tj|d�S)Nr6�?)rr�r�r�)r��coderyryrzr6aszProcess.statuscCs(|j�}tj|td|tddd�S)NrArBrr�r�)rr�pior�)r�rryryrz�io_countersgs

zProcess.io_counterscCs:tr|jdkrdStstr&tj|j�Sttr0dnd��dS)z)Return process current working directory.rrz&supported only starting from FreeBSD 8N)rr�r�HAS_PROC_OPEN_FILESrrZproc_cwdr�r
)r�ryryrz�cwdqszProcess.cwdZmmapz*path rss, private, ref_count, shadow_countz6addr, perms path rss, private, ref_count, shadow_countcCst�dS)N)r�)r�ryryrz�_not_implemented�szProcess._not_implementedcCstj|j�}dd�|D�S)z8Return files opened by process as a list of namedtuples.cSsg|]\}}tj||��qSry)r�	popenfile)r��pathr�ryryrzr��sz&Process.open_files.<locals>.<listcomp>)rrrr�)r�r�ryryrz�
open_files�szProcess.open_filescCstj|j�}tr|j�|S)z=Return the number of file descriptors opened by this process.)rrrr�rr�)r�r�ryryrz�num_fds�szProcess.num_fdscCstj|j�S)N)rrZproc_cpu_affinity_getr�)r�ryryrz�cpu_affinity_get�szProcess.cpu_affinity_getcCs�tttt����}x$|D]}||krtd||f��qWytj|j|�Wn\tk
r�}z@|j	t	j
t	jfkr�x$|D]}||krttd||f��qtW�WYdd}~XnXdS)Nz#invalid CPU #%i (choose between %s))�tupler�r�rr�rrZproc_cpu_affinity_setr�r�r�r
ZEDEADLK)r�ZcpusZallcpusr�r�ryryrz�cpu_affinity_set�s

zProcess.cpu_affinity_setcCstj|j�S)N)rrZproc_memory_mapsr�)r�ryryrz�memory_maps�szProcess.memory_mapscCsP|dkrtj|j|�St|�dkr2tdt|���|\}}tj|j|||�SdS)Nrz4second argument must be a (soft, hard) tuple, got %s)rrZproc_getrlimitr�r�r�r�Zproc_setrlimit)r��resourceZlimitsZsoft�hardryryrz�rlimit�szProcess.rlimit)r)N)N)0�__name__�
__module__�__qualname__�__doc__�	__slots__r�r�r�rrrrrMr	rrr
r5rrr�r
rrZmemory_full_infor>rrrr�rr r#r6r'r)rZnt_mmap_groupedZnt_mmap_extr*r(r-�HAS_PROC_NUM_FDSr.r/r1r2r5ryryryrzr��sf			

	r�)F)|r9�
contextlibr�r�r�collectionsrrZ	xml.etreerrrrrrrr	r�r
rrr
rrrrrrrr�_compatrrrrZ__extra__all__ZSIDL�STATUS_IDLEZSRUN�STATUS_RUNNINGZSSLEEP�STATUS_SLEEPINGZSSTOP�STATUS_STOPPEDZSZOMBr�ZSWAIT�STATUS_WAITINGZSLOCK�
STATUS_LOCKEDr�ZSDEAD�
STATUS_WAKINGZSONPROCZTCPS_ESTABLISHED�CONN_ESTABLISHEDZ
TCPS_SYN_SENT�
CONN_SYN_SENTZTCPS_SYN_RECEIVED�
CONN_SYN_RECVZTCPS_FIN_WAIT_1�CONN_FIN_WAIT1ZTCPS_FIN_WAIT_2�CONN_FIN_WAIT2ZTCPS_TIME_WAIT�CONN_TIME_WAITZTCPS_CLOSED�
CONN_CLOSEZTCPS_CLOSE_WAIT�CONN_CLOSE_WAITZ
TCPS_LAST_ACK�
CONN_LAST_ACKZTCPS_LISTEN�CONN_LISTENZTCPS_CLOSING�CONN_CLOSINGZPSUTIL_CONN_NONE�	CONN_NONEr�ZgetpagesizeZPAGESIZEZAF_LINKr�ZHAS_PER_CPU_TIMESrr(r;�dictr�rNrZr`Zpfullmemrdrgrhrir{rr�rr�r�r�r�r�r��
disk_usageZdisk_io_countersr�Znet_if_addrsr�r�r�r�r�r�r�r�r�r�r��contextmanagerr�r�ryryryrz�<module>s4





	/


 




	


Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists