%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /lib64/python3.9/site-packages/psutil/__pycache__/
Upload File :
Create Path :
Current File : //lib64/python3.9/site-packages/psutil/__pycache__/_psosx.cpython-39.pyc

a

M�_VD�@s�dZddlZddlZddlZddlZddlmZddlmZddlm	Z	ddlm
ZddlmZ
dd	lmZdd
lmZddlmZddlmZdd
lmZddlmZddlmZddlmZddlmZddlmZddlmZgZe
��Ze
jZejejej ej!ej"ej#ej$ej%ej&ej'ej(ej)ej*ej+ej,ej-ej.ej/ej0ej1ej2ej3ej4ej5iZ6ej7ej8ej9ej:ej;ej<ej=ej>ej?ej@iZAeBdddddddddddd�ZCeBddddddddd�ZDedgd ��ZEed!gd"��ZFed#gd$��ZGed%eGjHd&�ZId'd(�ZJd)d*�ZKd+d,�ZLd-d.�ZMd/d0�ZNd1d2�ZOd3d4�ZPd5d6�ZQe	jRZRejSZSdOd8d9�ZTd:d;�ZUejVZVe
jWZWdPd=d>�ZXd?d@�ZYdAdB�ZZdCdD�Z[dEdF�Z\e	j]Z]dGdH�Z^dIdJ�Z_ej`dKdL��ZaGdMdN�dNeb�ZcdS)QzmacOS platform implementation.�N)�
namedtuple�)�_common)�_psposix)�_psutil_osx)�
_psutil_posix)�AccessDenied)�	conn_tmap)�conn_to_ntuple)�
isfile_strict)�memoize_when_activated)�
NoSuchProcess)�parse_environ_block)�
usage_percent)�
ZombieProcess)�PermissionError)�ProcessLookupError��������	�
)�ppid�ruid�euid�suid�rgid�egid�sgid�ttynr�ctime�status�name)�cpuutime�cpustime�rss�vms�pfaults�pageins�
numthreads�volctxsw�	scputimes��user�nice�system�idle�svmem)�totalZ	available�percent�used�free�active�inactive�wired�pmem)r)r*r+r,�pfullmem)�ussc		CsTt��\}}}}}}||}||}||8}t|||dd�}t||||||||�S)z&System virtual memory as a namedtuple.r�Zround_)�cextZvirtual_memrr5)	r6r:r;r<r9ZspeculativeZavailr8r7�rB�3/usr/lib64/python3.9/site-packages/psutil/_psosx.py�virtual_memoryps�rDcCs4t��\}}}}}t||dd�}t�||||||�S)z=Swap system memory as a (total, used, free, sin, sout) tuple.rr@)rAZswap_memrrZsswap)r6r8r9ZsinZsoutr7rBrBrC�swap_memory�srEcCst��\}}}}t||||�S)z(Return system CPU times as a namedtuple.)rA�	cpu_timesr/r0rBrBrCrF�srFcCs:g}t��D](}|\}}}}t||||�}|�|�q|S)z(Return system CPU times as a named tuple)rA�
per_cpu_timesr/�append)�retZcpu_tr1r2r3r4�itemrBrBrCrG�srGcCst��S)z0Return the number of logical CPUs in the system.)rA�cpu_count_logicalrBrBrBrCrK�srKcCst��S)z1Return the number of physical CPUs in the system.)rAZcpu_count_physrBrBrBrC�cpu_count_physical�srLcCs"t��\}}}}}t�||||�S�N)rA�	cpu_statsrZ	scpustats)Zctx_switchesZ
interruptsZsoft_interruptsZsyscallsZtrapsrBrBrCrN�s
��rNcCst��\}}}t�|||�gS)z�Return CPU frequency.
    On macOS per-cpu frequency is not supported.
    Also, the returned frequency never changes, see:
    https://arstechnica.com/civis/viewtopic.php?f=19&t=465002
    )rA�cpu_freqrZscpufreq)ZcurrZmin_Zmax_rBrBrCrO�srOFc	Csvg}t��}|D]`}|\}}}}|dkr,d}|sJtj�|�rtj�|�sJqd}}	t�||||||	�}
|�|
�q|S)z8Return mounted disk partitions as a list of namedtuples.Znone�N)	rA�disk_partitions�os�path�isabs�existsrZ	sdiskpartrH)�all�retlistZ
partitions�	partitionZdeviceZ
mountpointZfstypeZoptsZmaxfileZmaxpath�ntuplerBrBrCrQ�s�rQcCsbzt��\}}}Wnty&YdS0|dk}|r<tj}n|dkrLtj}n|d}t�|||�S)zReturn battery information.Nr����<)rA�sensors_battery�NotImplementedErrorrZPOWER_TIME_UNLIMITEDZPOWER_TIME_UNKNOWNZsbattery)r7ZminsleftZ
power_pluggedZsecsleftrBrBrCr\�sr\�inetc	Csjg}t�D]Z}zt|��|�}Wnty6Yq
Yq
0|r
|D]"}t|�|g}|�tj|��q@q
|S)z System-wide network connections.)�pids�Process�connectionsr
�listrHrZsconn)�kindrI�pidZcons�crBrBrC�net_connections�s

rfcCs�t���}i}|D]�}z&t�|�}t�|�}t�|�\}}Wn2tyn}z|jtjkrZ�WYd}~qd}~00t	t
d�r�t
�|�}t
�||||�||<q|S)z)Get NIC stats (isup, duplex, speed, mtu).N�	NicDuplex)
�net_io_counters�keys�
cext_posixZ
net_if_mtuZnet_if_is_runningZnet_if_duplex_speed�OSError�errnoZENODEV�hasattrrrgZ	snicstats)�namesrIr&ZmtuZisupZduplexZspeed�errrBrBrC�net_if_statss




rpcCst��S)z:The system boot time expressed in seconds since the epoch.)rA�	boot_timerBrBrBrCrqsrqc	Cs\g}t��}|D]F}|\}}}}}|dkr,q|s2qt�||p>d|pDd||�}|�|�q|S)z:Return currently connected users as a list of namedtuples.�~N)rA�usersrZsuserrH)	rW�rawlistrJr1Ztty�hostnameZtstamprd�ntrBrBrCrs"srscCs`t��}d|vr\ztd���|�dd�Wn.ty>YntyZ|�dd�Yn0|S�Nr)rAr_r`�create_time�insertr
r)ZlsrBrBrCr_6sr_cCs8zt�|�td}|tjkWSty2YdS0dS)Nr%F)rA�proc_kinfo_oneshot�kinfo_proc_map�SZOMB�	Exception)rd�strBrBrC�	is_zombieIs
rcst����fdd��}|S)z`Decorator which translates bare OSError exceptions into
    NoSuchProcess and AccessDenied.
    cs�z�|g|�Ri|��WStyVt|j�rDt|j|j|j��nt|j|j��YnDtytt|j|j��Yn&t	j
y�t|j|j|j��Yn0dSrM)rrrdr�_name�_ppidr
rrrAZZombieProcessError)�self�args�kwargs��funrBrC�wrapperUs
z wrap_exceptions.<locals>.wrapper)�	functools�wraps)r�r�rBr�rC�wrap_exceptionsQsr�ccs�z
dVWn�ttfy�}zvt|t�s4|jtjkr�z|��}WntyV|�Yq�0|tjkrvt	|j
|j|j��q�t
|j
|j��n�WYd}~n
d}~00dS)z�There are some poor C APIs which incorrectly raise ESRCH when
    the process is still alive or it's a zombie, or even RuntimeError
    (those who don't set errno). This is here in order to solve:
    https://github.com/giampaolo/psutil/issues/1044
    N)rk�RuntimeError�
isinstancerlZESRCHr%r
r�
STATUS_ZOMBIErrdr�r�r)�procror%rBrBrC�catch_zombiees


r�c@sheZdZdZgd�Zdd�Zeedd���Zeedd���Z	d	d
�Z
dd�Zed
d��Zedd��Z
edd��Zedd��Zedd��Zedd��Zedd��Zedd��Zedd��Zedd ��Zed!d"��Zed#d$��Zed%d&��Zed'd(��Zed)d*��Zed+d,��Zed=d.d/��Zed0d1��Zed>d3d4��Zed5d6��Zed7d8��Z ed9d:��Z!ed;d<��Z"d2S)?r`z1Wrapper class around underlying C implementation.)rdr�r��_cachecCs||_d|_d|_dSrM)rdr�r�)r�rdrBrBrC�__init__�szProcess.__init__cCs$t�|j�}t|�tt�ks J�|SrM)rArzrd�lenr{�r�rIrBrBrC�_get_kinfo_proc�szProcess._get_kinfo_proccCsLt|��t�|j�}Wd�n1s*0Yt|�tt�ksHJ�|SrM)r�rAZproc_pidtaskinfo_oneshotrdr��pidtaskinfo_mapr�rBrBrC�_get_pidtaskinfo�s
*zProcess._get_pidtaskinfocCs|j�|�|j�|�dSrM)r�Zcache_activater��r�rBrBrC�
oneshot_enter�szProcess.oneshot_entercCs|j�|�|j�|�dSrM)r�Zcache_deactivater�r�rBrBrC�oneshot_exit�szProcess.oneshot_exitcCs(|��td}|dur|St�|j�S)Nr&)r�r{rAZ	proc_namerd)r�r&rBrBrCr&�szProcess.namecCs8t|��t�|j�Wd�S1s*0YdSrM)r�rAZproc_exerdr�rBrBrC�exe�s
zProcess.execCs8t|��t�|j�Wd�S1s*0YdSrM)r�rAZproc_cmdlinerdr�rBrBrC�cmdline�s
zProcess.cmdlinecCs<t|�� tt�|j��Wd�S1s.0YdSrM)r�rrAZproc_environrdr�rBrBrC�environ�s
zProcess.environcCs|��td|_|jS)Nr)r�r{r�r�rBrBrCr�szProcess.ppidcCs8t|��t�|j�Wd�S1s*0YdSrM)r�rAZproc_cwdrdr�rBrBrC�cwd�s
zProcess.cwdcCs.|��}t�|td|td|td�S)Nrrr�r�rZpuidsr{�r�ZrawtuplerBrBrC�uids�s


�zProcess.uidscCs.|��}t�|td|td|td�S)Nr r!r"r�r�rBrBrC�gids�s


�zProcess.gidscCs<|��td}t��}z
||WSty6YdS0dS)Nr#)r�r{rZget_terminal_map�KeyError)r�Ztty_nrZtmaprBrBrC�terminal�s
zProcess.terminalcCs6|��}t|td|td|td|td�S)Nr)r*r+r,)r�r=r�r�rBrBrC�memory_info�s



�zProcess.memory_infocCs"|��}t�|j�}t||f�SrM)r�rAZproc_memory_ussrdr>)r�Z	basic_memr?rBrBrC�memory_full_info�szProcess.memory_full_infocCs(|��}t�|td|tddd�S)Nr'r(g)r�rZ	pcputimesr�r�rBrBrCrF�s

�zProcess.cpu_timescCs|��tdS)Nr$)r�r{r�rBrBrCrx�szProcess.create_timecCs|��td}t�|d�S)Nr.r)r�r�rZpctxsw)r�ZvolrBrBrC�num_ctx_switches�szProcess.num_ctx_switchescCs|��tdS)Nr-)r�r�r�rBrBrC�num_threads�szProcess.num_threadscCsv|jdkrgSg}t|��t�|j�}Wd�n1s<0Y|D]&\}}t|�rJt�||�}|�|�qJ|Srw)rdr�rAZproc_open_filesrrZ	popenfilerH)r��filesrtrS�fdrYrBrBrC�
open_filess

*zProcess.open_filesr^c	Cs�|tvr(td|d�dd�tD��f��t|\}}t|�� t�|j||�}Wd�n1sb0Yg}|D]2}|\}}}	}
}}t|||	|
||t�}
|�	|
�qt|S)Nz+invalid %r kind argument; choose between %sz, cSsg|]}t|��qSrB)�repr)�.0�xrBrBrC�
<listcomp>�z'Process.connections.<locals>.<listcomp>)
r	�
ValueError�joinr�rAZproc_connectionsrdr
�TCP_STATUSESrH)r�rcZfamilies�typesrtrIrJr�Zfam�typeZladdrZraddrr%rvrBrBrCras�
.�zProcess.connectionscCsF|jdkrdSt|��t�|j�Wd�S1s80YdSrw)rdr�rAZproc_num_fdsr�rBrBrC�num_fdss

zProcess.num_fdsNcCst�|j||j�SrM)rZwait_pidrdr�)r��timeoutrBrBrC�wait&szProcess.waitcCs8t|��t�|j�Wd�S1s*0YdSrM)r�rj�getpriorityrdr�rBrBrC�nice_get*s
zProcess.nice_getcCs:t|��t�|j|�Wd�S1s,0YdSrM)r�rj�setpriorityrd)r��valuerBrBrC�nice_set/s
zProcess.nice_setcCs|��td}t�|d�S)Nr%�?)r�r{�
PROC_STATUSES�get)r��coderBrBrCr%4szProcess.statuscCs<t�|j�}g}|D]"\}}}t�|||�}|�|�q|SrM)rAZproc_threadsrdrZpthreadrH)r�rtrWZ	thread_id�utimeZstimerYrBrBrC�threads:szProcess.threads)r^)N)#�__name__�
__module__�__qualname__�__doc__�	__slots__r�r�rr�r�r�r�r&r�r�r�rr�r�r�r�r�r�rFrxr�r�r�rar�r�r�r�r%r�rBrBrBrCr`sr









	









r`)F)r^)dr��
contextlibrlr�rR�collectionsrrPrrrrArrjrr	r
rrr
rrrZ_compatrrZ__extra__all__ZgetpagesizeZPAGESIZEZAF_LINKZTCPS_ESTABLISHEDZCONN_ESTABLISHEDZ
TCPS_SYN_SENTZ
CONN_SYN_SENTZTCPS_SYN_RECEIVEDZ
CONN_SYN_RECVZTCPS_FIN_WAIT_1ZCONN_FIN_WAIT1ZTCPS_FIN_WAIT_2ZCONN_FIN_WAIT2ZTCPS_TIME_WAITZCONN_TIME_WAITZTCPS_CLOSEDZ
CONN_CLOSEZTCPS_CLOSE_WAITZCONN_CLOSE_WAITZ
TCPS_LAST_ACKZ
CONN_LAST_ACKZTCPS_LISTENZCONN_LISTENZTCPS_CLOSINGZCONN_CLOSINGZPSUTIL_CONN_NONEZ	CONN_NONEr�ZSIDLZSTATUS_IDLEZSRUNZSTATUS_RUNNINGZSSLEEPZSTATUS_SLEEPINGZSSTOPZSTATUS_STOPPEDr|r�r��dictr{r�r/r5r=�_fieldsr>rDrErFrGrKrLrNrO�
disk_usageZdisk_io_countersrQr\rhZnet_if_addrsrfrprqrsr_Z
pid_existsrr��contextmanagerr��objectr`rBrBrBrC�<module>s������





Zerion Mini Shell 1.0