购物网站怎么运营推广,wordpress使用七牛图像服务,全国网站制作前十名,金阳建设集团网站文章目录 6 调度策略6.1 调度策略常量6.2 访问和设置进程的调度策略 7 系统信息7.1 系统信息7.2 系统配置信息7.3 系统负载7.4 路径相关常量7.5 生成随机字节 os模块提供了各种操作系统接口。包括环境变量、进程管理、进程调度、文件操作等方面。
这里整理了进程调度和查看系统… 文章目录 6 调度策略6.1 调度策略常量6.2 访问和设置进程的调度策略 7 系统信息7.1 系统信息7.2 系统配置信息7.3 系统负载7.4 路径相关常量7.5 生成随机字节 os模块提供了各种操作系统接口。包括环境变量、进程管理、进程调度、文件操作等方面。
这里整理了进程调度和查看系统信息的方法。
参考os模块官方文档 6 调度策略
6.1 调度策略常量
调度策略常量说明os.SCHED_OTHER默认调度策略os.SCHED_BATCH用于CPU密集型进程的调度策略尽可能为计算机的其余任务保留交互性。os.SCHED_IDLE用于低优先级的后台任务的调度策略。os.SCHED_SPORADIC用于偶发型服务程序的调度策略。os.SCHED_FIFO先进先出的调度策略。os.SCHED_RR循环式的调度策略。os.SCHED_RESET_ON_FORK可与其他调度策略进行OR运算。进程设置分叉时子进程的调度策略和优先级会被重置为默认。
6.2 访问和设置进程的调度策略 os.sched_get_priority_min(policy) 获取调度策略的最低优先级数值。 os.sched_get_priority_max(policy) 获取调度策略的最高优先级数值。 os.sched_getscheduler(pid) 返回指定进程的调度策略。 os.sched_setscheduler(pid, policy, param) 设置pid对应的进程的调度策略。 pid为0表示当前进程。param是一个os.sched_param实例。 os.sched_getparam(pid) 获取指定进程的调度参数。 os.sched_getparam(0)
posix.sched_param(sched_priority0)os.sched_setparam(pid, param) 设置指定进程的调度参数。 class os.sched_param(sched_priority) 这个类是上述的方法中用到的调度形参是不可变对象。 sched_priority表示调度策略的优先级。 os.sched_rr_get_interval(pid) 返回指定进程在循环调度策略下的时间片长度单位为秒。 os.sched_rr_get_interval(0)
0.011000000000000001os.sched_yield() 主动让出CPU。 os.sched_setaffinity(pid, mask) 将指定进程限制到一组CPU上mask是整数的可迭代对象。 os.sched_getaffinity(pid) 返回指定进程被限制的那一组CPU。 pid为0时返回当前进程的调用方线程被限制到的那组CPU。 os.sched_getaffinity(0)
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31}os.sched_setaffinity(0, {0,1,2,3,4})os.sched_getaffinity(0)
{0, 1, 2, 3, 4}7 系统信息
7.1 系统信息 os.uname() 返回当前操作系统的识别信息。 返回值是一个对象它有五个属性sysname(操作系统名)、nodename(机器在网络上的名称)、release(操作系统发行信息)、version(操作系统版本信息)、machine(硬件标识符)。可以作为元组迭代这五个属性。 os.uname()
posix.uname_result(sysnameLinux, nodenamexxxx, release3.10.0-1062.9.1.el7.x86_64, version#1 SMP Fri Dec 6 15:49:49 UTC 2019, machinex86_64)os.uname().sysname
Linuxos.cpu_count() 返回系统中的逻辑CPU数量无法确定时返回None。 os.cpu_count()
32os.process_cpu_count() 获取当前进程的调用方法线程可以使用的逻辑CPU数量。
7.2 系统配置信息 os.confstr(name) 返回字符串格式的系统配置信息。仅Unix可用。 name指定要查找的配置名称可选值和所在系统相关当前系统已定义的名称可以在os.confstr_names查看。 name指定的配置值未定义时返回None。 name配置名称不在已定义名称中时出现ValueError。 os.confstr_names中存在的名称但系统不支持出现OSError。 os.confstr_names 字典系统定义的配置名称和配置值的映射。 os.confstr_names
{CS_GNU_LIBC_VERSION: 2, CS_GNU_LIBPTHREAD_VERSION: 3, ...}os.sysconf(name) 返回整数格式的系统配置信息。仅Unix可用。 name指定的配置值未定义时返回-1。 os.sysconf_names 系统配置名称对应的整数值。仅Unix可用。 os.sysconf_names
{SC_2_CHAR_TERM: 95, SC_2_C_BIND: 47, ...}7.3 系统负载
os.getloadavg() 返回系统运行队列中最近1、5和15分钟内的平均进程数。 无法获取平均负载时出现OSError错误。 os.getloadavg()
(0.0, 0.01, 0.05)7.4 路径相关常量
常量说明os.curdir操作系统用来表示当前目录的常量字符串os.pardir操作系统用来表示父目录的常量字符串os.sep操作系统用来分隔路径的字符os.altsep操作系统用来分隔路径的替代字符os.extsep分割基本文件名宇扩展名的字符os.pathsep操作系统用于分隔搜索路径(如环境变量PATH)中不同部分的字符串os.defpath在环境变量没有PATH的情况下默认的搜索路径os.linesep系统用于分割行的字符os.devnull空设备的文件路径
创建一个python文件
import os
print(os.curdir.ljust(11, ), os.curdir)
print(os.pardir.ljust(11, ), os.pardir)
print(os.sep.ljust(11, ), os.sep)
print(os.altsep.ljust(11, ), os.altsep)
print(os.extsep.ljust(11, ), os.extsep)
print(os.pathsep.ljust(11, ), os.pathsep)
print(os.defpath.ljust(11, ), os.defpath)
print(os.linesep.ljust(11, ), os.linesep)
print(os.devnull.ljust(11, ), os.devnull)在linux上运行
os.curdir .
os.pardir ..
os.sep /
os.altsep None
os.extsep .
os.pathsep :
os.defpath /bin:/usr/bin
os.linesep os.devnull /dev/null在Windows上运行
os.curdir .
os.pardir ..
os.sep \
os.altsep /
os.extsep .
os.pathsep ;
os.defpath .;C:\bin
os.linesepos.devnull nul7.5 生成随机字节 os.getrandom(size, flags0) 获取指定大小的随机字节。 用于为随机数生成器提供种子或用于加密。 需要Linux版本不低于3.17。 flags可以是os.GRND_NONBLOCK、os.GRND_RANDOM或它俩的或运算结果。 默认从/dev/urandom读取时熵池未初始化则os.getrandom()会阻塞从/dev/random读取随机字节没有可用的随机字节时也会阻塞。 设置os.GRND_NONBLOCK时os.getrandom()不会阻塞会抛出BlockingError异常。 设置os.GRND_RANDOM会从/dev/random而不是/dev/urandom提取随机字节。 os.urandom(size) 返回指定字节的随机字节。适合加密使用。 如果getrandom()系统调用可用就以阻塞模式运行直到系统的urandom熵池初始完毕。 以上是os模块关于进程管理的方法和常量整理。 该模块的其他内容参考 os模块环境变量、进程所属的用户和组 os模块进程管理