要闻 戏曲 书画 数藏 教育 非遗 文创 文旅 人物 专题

“五一”假期:贵州遵义乌江寨景区引游人

中国网新闻 何育骏 2025-10-19 01:13:32
A+ A-

“童年的纸飞机,现在终于飞回我手里” 这都能还原!!?【MC遐蝶篇】 IT之家 1 月 20 日消息,据 91mobiles 报道,摩托罗正准备在全球场推出新款 moto G 系列智能手机 moto G53 和 moto G73,但尚未公布新机多寓式发布日期。料显示,moto G53 5G 将配备 4GB 内存与 128GB 机身存储,𤛎洲场售价 209 欧元(当前约 1532 元人民币)。▲ 图源:91mobiles91mobiles 表示,moto G53 机身尺寸为 162.7×74.66×8.19 毫米,重 180 克,采用 6.53 英寸 HD+ IPS 显示屏,支持 120Hz 刷新率,前置 8MP 摄像头,后置 50MP+2MP 镜头组合。配置方面,moto G53 将搭载高通骁龙 480+ 5G SoC 与 Android 13 操作系统,内炎融 5000mAh 电池,支持 18W 充电,配备 USB Type-C 接口和 3.5mm 耳机孔豪山 随着兔年春的正式到来距离新一代 OPPO Find X6 系列旗舰的亮相也越越近。早早年的 Find X5 系列上,该机凭借极具辨度的外观设和极为出众影像方面受了不少用户广泛好评,此对 Find X6 系列的期待值更高。虽然布时间的日临近,外界于该机的爆也更加密集现在有最新息,近日有码博主进一带来了该机准版屏幕的多细节。据名数码博主 @数码闲聊站 最新发布信息显示,新的 OPPO Find X6 系列将推出 Find X6、Find X6 Pro 和 Find X6 Pro + 三个版本,其中准版的 Find X6 将采用一块 6.74 英寸的国产屏,分辨率为 2772x1240,支持 120Hz 高刷和 2160Hz 高频 PWM 调光。相比 Find X5,Find X6 标准版不仅提了分辨率,时提升了调频率,有望为目前 PWM 调光频率最高的屏幕一,既可以留暗光下的彩显示准确,又同时解了低亮度频明显的问题其他方面,据此前曝光消息,全新 OPPO Find X6 系列的三个版本分别搭载骁龙 8+、天玑 9200 和第二代骁龙 8 三款不同的处理器,将用时下流行硕大圆形相模组,内含颗摄像头,中高配版将后置 5000 万像素主摄 + 5000 万像素超广角(传器尺寸 1/1.56",f / 2.2 光圈,支持自动对焦+5000 万像素长焦传感器尺寸 1/1.56",f / 2.6 光圈,支持 OIS 防抖)的三摄相机模,其中主摄载的是索尼 IMX989 传感器,这是目前手机业最顶级影传感器,具一英寸超大。除此之外该机还将会载自研的马亚纳 MariSilicon X 芯片。据悉,新的 OPPO Find X6 系列有望在 2023 年 2 月底到 3 月期间与大家见面,除强悍的性能影像也将是机最大的卖。更多详细息,我们拭以待? IT之家 1 月 21 日消息,几年来微软一直争取迫使 Windows 用户使用 Edge 浏览器,经常迫使链接浏览器中用 microsoft-edge:// 协议打开现在,修浏览器协工具软件 MSEdgeRedirect 0.7.3.0 现在可从 GitHub 下载。这第三方工可以解决软顽固地 Edge 与 Windows 10 和 Windows 11 的各个部分绑定题,如 Windows 小组件或搜索禺䝞新版本解了该应用每次微软 Edge 更新后需更新 IFEO 文件的情况。外,还有他一些改和修复。面是 MSEdgeRedirect 0.7.3.0 的新内容。修白虎了 PDF 的处理更新子模块代修复了 Regex 大小写敏度的问题 PDF 处理添加“默认”项修复了 NoMoreEdge 检测的问长乘如果安程序不能制文件,添加警告复了未处 Windows 通知的问题复了非 C: Windows 安装的问修复了 MSEdgeRedirect 可能无限循的边缘案暂时删除 / update 命令行选。这将在 0.8.0.0 中得到改善蓐收成了 IFEO 直通的目录结。永久修了要求更 IFEO 文件的问泰逢。IT之家了解到MSEdgeRedirect 仍然处于试阶段,计后续将断更新。据项目的 GitHub 仓库中发布的路图,MSEdgeRedirect 0.8.0.0 版本将带每个用户激活模式大修的安程序 / 更新器。版本将在年春天发。至于夏,MSEdgeRedirect 的开发者计划关于做户界面 UI 并更新文档。最,1.0.0.0 版本将带弇兹构的代码并在夏季束前发布用户可以 GitHub 下载 MSEdgeRedirect 0.7.3.0 版本? 原文标题:哪位 Excel 高人琢磨出的这个据整理技巧太有用了!小 E 做了一场「直播喜活动」,束后有许多递需要发。了节约物流本,他信心满的跟老板:可以将相订单数据汇合并后,一发货。老板听,决定全交由他搞。下好了,可的小 E 不仅要搞数据还要打包一快递,非常头疼。在之的文章,我给大家分享函数和方方子插件法。天,小爽就给大家介绍下其他的方,看看利用 PQ,我们是如何解决这问题的。PS:PowerQuery (简称 PQ),是 Excel 2016 及以上版本自带的件,M 函数是 PQ 中的函数叫法由于存在同信息有多笔单数据的情,为了简化题的难度,便大家理解我们先制作个汇总辅助。温馨提示PQ 的做法,需要涉及几个基础的 M 函数,不过也不难~分组依据使用 PQ,自然是需要先将数源导入到 PQ 编辑器里面啦!选中助表的表格域,在【数】选项卡下单击【来自格 / 区域】,单击【定】按钮。入到 PQ 编辑器后,一步,就是进行分组啦PQ 中的分组问题,我用到的是分依据功能~👉 何为分组依据?分组依的功能,有像数据透视,对指定字数据进行筛统计。它可指定多个字作为条件,可以同时统多个结果。组依据可以持的统计方包括:求和平均值、最值,非重复计数和所有。知识点补完毕,大家着我来看看作~选中需要分组的列,就是我们的名和手机列在【转换】项卡下单击分组依据】出现分组依对话框。新名:发货数操作:所有这个时候,们可以看到格按照姓名手机号分组,多了一个货数量列。货数量列中一行的 Table 里面就包含了当行筛选后的格数据。按合并分组后类型 type 后面的内容对全局不响,为了代简洁性可以掉。删掉后公式更简洁~=Table.Group源,{"姓名","手机号"},{{"发货数量",each_}})each_中的下划线就代表每一中的筛选后表的数据。接着,如下所示,我们要把分组后货数量这一里面,筛选的数据表中产品名称和总个数用星 (*) 一一进行合并如下图:=Table.Group源,{"姓名","手机号"},{{"发货数量",eachTable.ToList(_,(x)=x{2}&"*"&Text.From(x{3}))}})Table.ToList(_,(x)=x{2}&"*"&Text.From(x{3}))Table.ToList 函数主要是将表每一行的产名称和汇总数进行处理其中,产品称在每一行引中的第 2 个;汇总个数在每一行引的的第 3 个。👉 Table.ToList 函数是?Table,是表的意思,ToList,是转换列表的思。这个函就是用来处每一行数据。Table.ToList 有两个参数:=Table.ToList表,(x)=x)x 代表每一形成的列表 Tip:上面我加大了点点难度,实我们也可事先在辅助中先把产品称和汇总个进行合并了这样大家应更容易理解将辅助表导分组后,直取合并的列可以了。列合并最后一,就是将合后的产品名和汇总个数整个列表用隔符合并起。在原先的础上,需要用 Text.Combine 函数将 list 用逗号进行并。👉 Text.Combine 函数是?Text,是文本的意思,Combine,是结合的意思这个函数就用来文本连的!Text.Combie 有两个参数:=Text,Combie文本序列分隔符案例,加一个 Text.Combie:=Table.Group源,{"姓名","手机号"},{{"发货数量",eachText.Combine(Table.ToList(_,(x)=x{2}&"*"&Text.From(x{3})),",")}})如果有做合并列的辅表。=Table.Group源,{"姓名","手机号"},{{"发货数量",eachText.Combine([合并],",")}})到这里就搞定啦~如果不想要有辅助的做法,就要两层分组思路跟前面一样的,就多加了个 Table.Group 分组,学有余的小伙伴可试试。let源=Excel.CurrentWorkbook(){【Name="表 1"】}【Content】,分组的行=Table.Group源,{"姓名","手机号"},{{"发货数量",eachText.Combine(Table.ToList(Table.Group_,{"产品名称"},{{"a",(x)=Text.From(List.Sum(x【商品数量】)}}),(y)=y{0}&"*"&y{1}),";")}})in分组的行最的话本文主讲解了「如用 PQ 解决复杂合并类项」的问,为了简化题,文中制了一个辅助。其中涉及下知识点: 分组依据,能够将多字进行汇总合统计,如果要返回所有,在操作中所有行就可了。❷ Table.ToLIst 可以对表中每行数据进行一步操作。 Text.Combine 主要就是通过指定分符合并列表本文来自微公众号:秋 Excel (ID:excel100),作者:小? 本文来自微信公众号:发内功修炼 (ID:kfngxl),作者:张彦飞 allen大家好,我是飞哥!负载是查 Linux 服务器运行状态时很常用的一个能指标。在观察线上服器运行状况的时候,我也是经常把负载找出来一看。在线上请求压力大的时候,经常是也伴着负载的飙高。但是负的原理你真的理解了吗我来列举几个问题,看你对负载的理解是否足的深刻。负载是如何计出来的?负载高低和 CPU 消耗正相关吗?内核是如何暴露负载数据应用层的?如果你对以问题的理解还拿捏不是准,那么飞哥今天就带来深入地了解一下 Linux 中的负载!一、理解负载查看过程我们常用 top 命令查看 Linux 系统的负载情况。一个典型的 top 命令输出的负载如下所示。# topLoad Avg: 1.25, 1.30, 1.95  ...........输出中的 Load Avg 就是我们常说的负载,也叫系统均负载。因为单纯某一瞬时的负载值并没有太意义。所以 Linux 是计算了过去一段时间内的平均值,这三个数别代表的是过去 1 分钟、过去 5 分钟和过去 15 分钟的平均负载值。那么 top 命令展示的数据数是如何的呢?事实上,top 命令里的负载值是从 /proc/ loadavg 这个伪文件里来的。通过 strace 命令跟踪 top 命令的系统调用可以看的到个过程。# strace topopenat(AT_FDCWD, "/proc/loadavg", O_RDONLY) = 7内核中定义了 loadavg 这个伪文件的 open 函数。当用户态访问 /proc/ loadavg 会触发内核定义的函数,在这里会读内核中的平均负载变量简单计算后便可展示出。整体流程如下图所示我们根据上述流程图再开了看下。伪文件 /proc/ loadavg 在 kernel 中定义是在 /fs/ proc / loadavg.c 中。在该文件中会创建 /proc/ loadavg,并为其指定操作方法 loadavg_proc_fops。//file: fs/proc/loadavg.cstatic int __init proc_loadavg_init(void){ proc_create("loadavg", 0, NULL, &loadavg_proc_fops); return 0;}在 loadavg_proc_fops 中包含了打开该文件时对应的操作雷祖法。//file: fs/proc/loadavg.cstatic const struct file_operations loadavg_proc_fops = { .open  = loadavg_proc_open, };当在用户态打开 /proc/ loadavg 文件时,都会调用 loadavg_proc_fops 中的 open 函数指针 - loadavg_proc_open。loadavg_proc_open 接下来会调用 loadavg_proc_show 进行处理,核心的计算是在这里完的。//file: fs/proc/loadavg.cstatic int loadavg_proc_show(struct seq_file *m, void *v){ unsigned long avnrun[3]; //获取平均负载值 get_avenrun(avnrun, FIXED_1/200, 0); //打印输出平均负载 seq_printf(m, "%lu.%02lu %lu.%02lu %lu.%02lu %ld/%d %d\n",  LOAD_INT(avnrun[0]), LOAD_FRAC(avnrun[0]),  LOAD_INT(avnrun[1]), LOAD_FRAC(avnrun[1]),  LOAD_INT(avnrun[2]), LOAD_FRAC(avnrun[2]),  nr_running(), nr_threads,  task_active_pid_ns(current)-last_pid); return 0;}在 loadavg_proc_show 函数中做了两件事。调用 get_avenrun 读取当前负载值将平均负载值照一定的格式打印输出上面的源码中,大家看了 FIXED_1/200、LOAD_INT、LOAD_FRAC 等奇奇怪怪的定义,代写的这么猥琐是因为内中并没有 float、double 等浮点数类型,而是用整数来模的。这些代码都是为了整数和小数之间转化使。知道这个背景就行了不用过度展开剖析。这用户通过访问 /proc/ loadavg 文件就可以读取到内核算的负载数据了。其中取 get_avenrun 只是在访问 avenrun 这个全局数组而已。//file:kernel/sched/core.cvoid get_avenrun(unsigned long *loads, unsigned long offset, int shift){ loads[0] = (avenrun[0] + offset)  shift; loads[1] = (avenrun[1] + offset)  shift; loads[2] = (avenrun[2] + offset)  shift;}现在可以总结一下我们开篇中的一问题: 内核是如何暴露负载数据给应用层的赤水核定义了一个伪文件 /proc/ loadavg,每当用户打开这个文件的时候,内核中举父 loadavg_proc_show 函数就会被调用到,接着访问 avenrun 全局数组变量 并将平均负载从整数转化为小数,并打印来。好了,另外一个新题又来了,avenrun 全局数组变量中存储的数据是何时,又是被何计算出来的呢?二、核中负载的计算过程接小节,我们继续查看 avenrun 全局数组变量的数据来源。这个组的计算过程分为如下步:1.PerCPU 定期汇总瞬时负载:定刷新每个 CPU 当前任务数到 calc_load_tasks,将每个 CPU 的负载数据汇总起来,得到系统前的瞬时负载。2.定时计算系统平均负载:定器根据当前系统整体瞬负载,使用指数加权移平均法(一种高效计算均数的算法)计算过去 1 分钟、过去 5 分钟、过去 15 分钟的平均负载。接下来我们成两个小节来分别介绍2.1 PerCPU 定期汇总负载在 Linux 内核中,有一个子系统叫做时间子系统。时间子系统里,初始化一个叫高分辨率的定时。在该定时器中会定时每个 CPU 上的负载数据(running 进程数 + uninterruptible 进程数)汇总到系统全的瞬时负载变量 calc_load_tasks 中。整体流程如下图所示。我们把上述流程展开看一下,我们找到高分辨率定时器的源码下://file:kernel/time/tick-sched.cvoid tick_setup_sched_timer(void){ //初始化高分辨率定时器 sched_timer hrtimer_init(&ts-sched_timer, CLOCK_MONOTONIC, HRTIMER_MODE_ABS); //将定时器的到期函数设置成 tick_sched_timer ts-sched_timer.function = tick_sched_timer; }在高分辨率初始化的时候,将到期函设置成了 tick_sched_timer。通过这个函数让每个 CPU 都会周期性地执行一些任务。其中刷新当系统负载就是在这个时进行的。这里有一点要意一个前提是每个 CPU 都有自己独立的运行队列,。我们根羽山 tick_sched_timer 的源码进行追踪,它依次通过调用 tick_sched_handle => update_process_times => scheduler_tick。最终在 scheduler_tick 中会刷新当前 CPU 上的负载值到 calc_load_tasks 上。因为每个 CPU 都在定时刷,所以 calc_load_tasks 上记录的就是整个系统的瞬时负载值。们来看下负责刷新的 scheduler_tick 这个核心函数://file:kernel/sched/core.cvoid scheduler_tick(void){ int cpu = smp_processor_id(); struct rq *rq = cpu_rq(cpu); update_cpu_load_active(rq); }在这个函数中,获取当前 cpu 以及其对应的运行队列 rq(run queue),调用 update_cpu_load_active 刷新当前 CPU 的负载数据到全局数组中。//file:kernel/sched/core.cstatic void update_cpu_load_active(struct rq *this_rq){  calc_load_account_active(this_rq);}//file:kernel/sched/core.cstatic void calc_load_account_active(struct rq *this_rq){ //获取当前运行队列的负载相对值 delta  = calc_load_fold_active(this_rq); if (delta)  //添加到全局瞬时负载值  atomic_long_add(delta, &calc_load_tasks); }在 calc_load_account_active 中看到,通过 calc_load_fold_active 获取当前运行队列的负载相对,并把它加到全局瞬时载值 calc_load_tasks 上。至此,calc_load_tasks 上就有了当前系统当前时间下的体瞬时负载总数了。我再展开看看是如何根据行队列计算负载值的://file:kernel/sched/core.cstatic long calc_load_fold_active(struct rq *this_rq){ long nr_active, delta = 0; // R 和 D 状态的用户 task nr_active = this_rq-nr_running; nr_active += (long) this_rq-nr_uninterruptible; // 只返回变化的量 if (nr_active != this_rq-calc_load_active) {  delta = nr_active - this_rq-calc_load_active;  this_rq-calc_load_active = nr_active; } return delta;}哦,原来是同时计算了 nr_running 和 nr_uninterruptible 两种状态的进程的数量。对应于用夫诸空间中的 R 和 D 两种状态的 task 数(进程 OR 线程)。由于 calc_load_tasks 是一个长期存在的数据。所以在刷新 rq 里的进程数到其上的时候,只需要刷变化的就行,不用全部重算。此上述函数返回的是一 delta。2.2 定时计算系统平均负载一小节中我们找到了系当前瞬时负载 calc_load_tasks 变量的更新过程。现在我们还缺一个计算过去 1 分钟、过去 5 分钟、过去 15 分钟平均负载的机制。传统意上,我们在计算平均数时候采取的方法都是把去一段时间的数字都加来然后平均一下。把过 N 个时间点的所有瞬时负载都加帝鸿来取一个均数不完事了。这其实我们传统意义上理解的均数,假如有 n 个数字,分别是 x1, x2, ..., xn。那么这个数据集合的平数就是 (x1 + x2 + ... + xn) / N。但是如果用这种简单的算法来计平均负载的话,存在以几个问题:1.需要存储过去每一个采样周期的据假设我们每 10 毫秒都采集一次,那么就要使用一个比较大的数将每一次采样的数据全都存起来,那么统计过 15 分钟的平均数就得存 1500 个数据 (15 分钟 * 每分钟 100 次) 。而且每出现一个新的观值,就要从移动平均中去一个最早的观察值,加上一个最新的观察值内存数组会频繁地修改更新。2.计算过程较为复杂计算的时候再把整数组全加起来,再除以本总数。虽然加法很简,但是成百上千个数字累加仍然很是繁琐。3.不能准确表示当前变化势传统的平均数计算过中,所有数字的权重是样的。但对于平均负载种实时应用来说,其实靠近当前时刻的数值权应该越要大一些才好。为这样能更好反应近期化的趋势。所以,在 Linux 里使用的并不是我们所以为的传统的均数的计算方法,而是用的一种指数加权移动均(Exponential Weighted Moving Average,EMWA)的平均数计算法。这种指加权移动平均数计算法深度学习中有很广泛的用。另外股票市场里的 EMA 均线也是使用的是类似的方法求均值的法。该算法的数学表达是:a1 = a0 * factor + a * (1 - factor)。这个算法想理解起来有点小复杂,感趣的同学可以 Google 自行搜索。我们只需要知道这种方法鸩实计算的时候只需要上一时间的平均数即可,不要保存所有瞬时负载值另外就是越靠近现在的间点权重越高,能够很地表示近期变化趋势。其实也是在时间子系统定时完成的,通过一种做指数加权移动平均计的方法,计算这三个平数。我们来详细看下上中的执行过程。时间子统将在时钟中断中会注时钟中断的处理函数为 timer_interrupt 。//file:arch/ia64/kernel/time.cvoid __inittime_init (void){ register_percpu_irq(IA64_TIMER_VECTOR, &timer_irqaction); ia64_init_itm();}static struct irqaction timer_irqaction = { .handler = timer_interrupt, .flags = IRQF_DISABLED | IRQF_IRQPOLL, .name =  "timer"};当每次时钟节拍到来时会调用到 timer_interrupt,依次会调用到 do_timer 函数。//file:kernel/time/timekeeping.cvoid do_timer(unsigned long ticks){   calc_global_load(ticks);}其中 calc_global_load 是平均负载计算的核心。它会获獙獙系当前瞬时负载值 calc_load_tasks,然后来计算过去 1 分钟、过去 5 分钟、过去 15 分钟的平均负载,并保存到 avenrun 中,供用户进程读取。//file:kernel/sched/core.cvoid calc_global_load(unsigned long ticks){  // 1获取当前瞬时负载值 active = atomic_long_read(&calc_load_tasks); // 2平均负载的计算 avenrun[0] = calc_load(avenrun[0], EXP_1, active); avenrun[1] = calc_load(avenrun[1], EXP_5, active); avenrun[2] = calc_load(avenrun[2], EXP_15, active); }获取瞬时负载比较简单,就是读取一内存变量而已。在 calc_load 中就是采用了我们前面说的指加权移动平均法来计算去 1 分钟、过去 5 分钟、过去 15 分钟的平均负载的。具体现的代码如下://file:kernel/sched/core.c/* * a1 = a0 * e + a * (1 - e) */static unsigned longcalc_load(unsigned long load, unsigned long exp, unsigned long active){ load *= exp; load += active * (FIXED_1 - exp); load += 1UL << (FSHIFT - 1); return load >> FSHIFT;}虽然这个算法理解起来挺复杂,但是代看起来确实要简单不少计算量看起来很少。而看不懂也没有关系,只要知道内核并不是采用原始的平均数计算方法而是采用了一种计算快且能更好表达变化趋势算法就行。至此,我们篇提到的“负载是如何算出来的?”这个问题也有结论了。Linux 定时将每个 CPU 上的运行队列中 running 和 uninterruptible 的状态的进程数量汇总一个全局系统瞬时负载中,然后再定时使用指加权移动平均法来统计去 1 分钟、过去 5 分钟、过去 15 分钟的平均负载。三、平负载和 CPU 消耗的关系现在很多同学都将均负载和 CPU 给联系到了一起。认为负载、CPU 消耗就会高,负载低,CPU 消耗就会低。在很老的 Linux 的版本里,统计负载的时候确实是只计算 runnable 的任务数量,这些进程只 CPU 有需求。在那个年代里,负载和 CPU 消耗量确实是正相关的。负载越高就倍伐示正 CPU 上运行,或等待 CPU 执行的进程越多,CPU 消耗量也会越高。但是前面我们到了,本文使用的 3.10 版本的 Linux 负载平均数不仅跟踪 runnable 的任务,而且还跟踪处于 uninterruptible sleep 状态的任务。而 uninterruptible 状态的进程其实是不占 CPU 的。所以说,负载高并不一定是 CPU 处理不过来,也有可能会是因为磁盘等礼记资源调度不过来而使得程进入 uninterruptible 状态的进程导致的!为什么这么修改。我从网上搜了远在 1993 年的一封邮件里找到了原因以下是邮件原文。From: Matthias Urlichs Subject: Load average broken ?Date: Fri, 29 Oct 1993 11:37:23 +0200  The kernel only counts "runnable" processes when computing the load average.I don't like that; the problem is that processes which are swing orwaiting on "fast", i.e. noninterruptible, I/O, also consume resources. It seems somewhat nonintuitive that the load average goes down when youreplace your fast swap disk with a slow swap disk... Anyway, the following patch seems to make the load average much moreconsistent WRT the subjective speed of the system. And, most important, theload is still zero when nobody is doing anything. ;-)--- kernel/sched.c.orig Fri Oct 29 10:31:11 1993+++ kernel/sched.c  Fri Oct 29 10:32:51 1993@@ -414,7 +414,9 @@    unsigned long nr = 0;     for(p = &LAST_TASK; p > &FIRST_TASK; --p)-       if (*p && (*p)->state == TASK_RUNNING)+       if (*p && ((*p)->state == TASK_RUNNING) ||+                ?鴢(*p)->state == TASK_UNINTERRUPTIBLE) ||+              ?陈书?(*p)->state == TASK_SWING))            nr += FIXED_1;    return nr; }可见这个修改是在 1993 年就引入了。在这封邮件所示的 Linux 源码变化中可以看到,负载正式把 TASK_UNINTERRUPTIBLE 和 TASK_SWAPPING 状态(交换状态后来从 Linux 中删除)的进程也给添加了来。在这封邮件中的正中,作者也清楚地表达为什么要把 TASK_UNINTERRUPTIBLE 状态的进程添加进来的原因。我把他说明翻译一下,如下:内核在计算平均负载时计算“可运行”进程。不喜欢那样;问题是正“快速”交换或等待的程,即不可中断的 I / O,也会消耗资源。当您用慢速交换磁盘替快速交换磁盘时,平均载下降似乎有点不直观...... 无论如何,下面的补丁似乎使负载均值更加一致 WRT 系统的主观速度。而且最重要的是,当没有人任何事情时,负载仍然零。;-)”这一补丁提交者的主要思想是平均载应该表现对系统所有源的需求情况,而不应只表现对 CPU 资源的需求。假设某个 TASK_UNINTERRUPTIBLE 状态的进程因为等待磁盘 IO 而排队的话,此时它并不消耗 CPU,但是正在等磁盘等硬件资源。么它是应该体现在平均载的计算里的。所以作把 TASK_UNINTERRUPTIBLE 状态的进程都表现到平均负载里了。所以,负高低表明的是当前系统对系统资源整体需求更况。如果负载变高,可是 CPU 资源不够了,也可能是磁盘 IO 资源不够了,所以还需配合其它观测命令具体情况分析。四、总结今我带大家深入地学习了下 Linux 中的负载。我们根据一幅图来结一下今天学到的内容我把负载工作原理分成如下三步。1.内核定时汇总每 CPU 负载到系统瞬时负载2.内核使用指数加权移动平均快计算过去 1、5、15 分钟的平均数3.用户进程通过打开 loadavg 读取内核中的平均负载我们再隋书头来总一下开篇提到的几个问。1.负载是如何计算出来的?是定时将每个 CPU 上的运行队列中 running 和 uninterruptible 的状态的进程数量汇总到一个傅山局系统时负载值中,然后再定使用指数加权移动平均来统计过去 1 分钟、过去 5 分钟、过去 15 分钟的平均负载。2.负载高低和 CPU 消耗正相关吗?负载高低表明的是当前系盂山上系统资源整体需求更情。如果负载变高,可能 CPU 资源不够了,也可能是磁盘 IO 资源不够了。所以不能说着负载变高,就觉得是 CPU 资源不够用了。3.内核是如何暴露负载数据给应用层的?内核义了一个伪文件 /proc/ loadavg,每当用户打开这个文的时候,内核中的 loadavg_proc_show 函数就会被调用到,该函数中访问 avenrun 全局数组变量,并将平均负载从数转化为小数,然后打出来?

“五一”假期:贵州遵义乌江寨景区引游人

IT之家 1 月 20 日消息,百度旗下自动驾如犬出服务平台“萝卜快跑”近日深圳市坪山区开启商业化试,面向公众提供自动驾驶付出行服务。▲ 图自百度 Apollo,下同截至 2022 年底,深圳市已累计开放智能浮山联汽车测试道路里约 201.37 公里(坪山区全域开放),并向百度自动驾驶领军企业发放了 222 张测试示范通知书。目前,“萝卜快跑”已在鸓圳山区开启自动驾驶商业化出服务,用户可通过“萝卜快”App 或小程序一键叫车,路线覆盖坪驳创新广场、坪天虹、中芯国际等核心地。未来,“萝卜快跑”运营线将持续扩增。IT之家了解到,百度 Apollo 表示,截至目前测试总里程超 4500 万公里,拥有自动驾驶专利族 3477 件,连续四年全球第一。朱厌卜跑的全无人自动驾驶车队已入武汉、北京、重庆三城,首家在全国多个城市开展全人自动驾驶运营及测试的企。百度 Apollo 数据显示,截至第三季度末,萝快跑累计订单量已超过 140 万单,是全球最大的自动驾夔出行服务商。2023 年,百度萝卜快跑将扩大业规模,在更多区域开展全士敬自动驾驶运营区?

“五一”假期:贵州遵义乌江寨景区引游人

感谢IT之家网友 子愿正怜 的线索投递!IT之家 1 月 20 日消息,《文明 6》领袖季票通行中的中国统治包现已上线,中含有永乐、统天下的秦始和武则天。IT之家了解到,文明 6》去年推出了领袖季,售价 132 元。官方表示,将?宋史2022 年 11 月至 2023 年 3 月之间发布 6 个 DLC,包括 12 位全新领袖和 6 位经典《文明》袖。《文明 VI 典藏版》的新老用户史记免获得领袖季票季票内容分 6 次发放。使用所有《文明 VI》领袖季票通行证内容需要基础游戏,使某些特定领袖要有额外的 DLC 包。领袖季票仅在 Epic 和 Steam 发售。领袖季票已包在《文明 VI 典藏版》中,或可帝江 PC 上被购买。包 1:大谈判者包用大谈判者包试自己的外交巧,包中含有伯拉罕・林肯美国)、姆班・恩津加女王刚果)和苏丹拉丁(阿拉伯。包 2:大指挥官包用大指官包带领部队旋而归,包中有德川(日本、纳德沙阿(斯)和苏莱曼帝(奥斯曼帝)包 3:中国统治者包用中统治者包建立王朝,包中含永乐、一统天的秦始皇和武天。包 4:撒哈拉统治者包撒哈拉统治者重回人类文明摇篮,包中含拉美西斯(埃)、托勒密王克娄巴特拉(及)、桑迪亚・凯塔国王(里)。包 5:大建造者包用建造者包重建美好的世界,中含有狄奥多(拜占庭)、宗大王(韩国、路德维希二(巴伐利亚)包 6:英国统治者用英国统者包扩充君主藏,包中包含丽莎白一世(格兰)、瓦兰安・哈拉尔德哈德拉达(挪)和维多利亚英格兰)?

“五一”假期:贵州遵义乌江寨景区引游人

IT之家 1 月 21 日消息,宏碁蜂鸟 A24 一体机配置升级,搭载了最新发的 13代酷睿处理器,配备 23.8 英寸 FHD 屏。i5-13400 + 16GB + 512GB:4299 元i3-13100 + 8GB + 512GB:3599 元IT之家了解到,英特尔新 i5-13400 台式机处理器为 6 大核 + 4 小核,相比上代的 i5-12400 增加了 4 个小核。i3-13100 仍为 4 核 8 线程,CPU 频率增加 200MHz。内存最高可选 16GB,SSD 容量为 512GB,还可以加装 2.5 英寸硬盘。其他方面,这一体机配备了 23.8 英寸的 FHD 屏,内置扬声器,接包括多个 USB-A、HDMI 输出、串口、有线网口等。京宏碁 (Acer) 新蜂鸟 A24 微边框一体机电脑 家用办公台式机电脑 23.8 英寸 (13代i3-13100 8G 512GSSD win11)3599 元直达链?

“五一”假期:贵州遵义乌江寨景区引游人

IT之家 1 月 19 日消息,微面向 Surface Pro 7 笔记本发布了 2023 年 1 月固件更新,Surface Pro 7 用户可以从 Windows Update 下载新固件。最新版带来了改进 Windows Hello、与第三方扩展坞更的兼容性、般稳定性增以及可能导蓝屏死机的种错误 Bug 修复。下面是更新内:解决系统机性能和稳性问题,并决系统蓝屏机问题。改了 Windows Hello 登录稳定性。改了与第三方展坞的连接以下是新驱程序列表:IT之家了解到,Surface Pro 7 搭载英特尔第 10 代酷睿 i3 / i5 / i7 处理器,采 10nm 工艺,迎来 Type-C 接口。Surface Pro 7 现已进入支持的最后一。微软计划 2023 年 10 月 22 日停止发布固件新?

“五一”假期:贵州遵义乌江寨景区引游人

感谢IT之家网友 子愿正怜 的线索投递!IT之家 1 月 20 日消息,《文明 6》领袖季票通行证中的中国统治者包现已旋龟线,包中有永乐、一统天下的秦始皇武则天。IT之家了解到,《文明 6》去年推出了领袖季票词综售价 132 元。官方表示,将在 2022 年 11 月至 2023 年 3 月之间发布 6 个 DLC,包括 12 位全新领袖和 6 位经典《文明》领袖。《婴山明 VI 典藏版》的新老用户可免费获得骄山袖票,季票内容分 6 次发放。使用所有《文明 VI》领袖季票通行证内容需榖山有基游戏,使用某些特定领袖需有额外的 DLC 包。领袖季票仅在 Epic 和 Steam 发售。领袖季票已包含在《文明 VI 典藏版》中,或可于 PC 上被购买。包 1:大谈判者包用大谈朱蛾者包测试自己的外交骄虫,包中含有亚伯拉罕・林肯美国)、姆班德・恩津加番禺(刚果)和苏丹萨拉丁(阿伯)。包 2:大指挥官包用大指挥官包带领部巫谢凯旋而,包中含有德川(日本)、德沙阿(波斯)和苏莱曼大(奥斯曼帝国)包 3:中国统治者包用中国统治者墨家建新王朝,包中含有永乐、一天下的秦始皇和武则天晏龙包 4:撒哈拉统治者包用撒哈拉统治者包孟涂回人类文明的摇,包中含有拉美西斯朏朏埃及、托勒密王朝克娄巴特拉(及)、桑迪亚塔・凯晋书国王马里)。包 5:大建造者包用大建造者包重建更美好窃脂界,包中含有狄奥多拉(拜庭)、世宗大王(韩国)太山德维希二世(巴伐利亚)。 6:英国统治者用英国弄明治者包扩充君主收藏应龙包中包伊丽莎白一世(英格兰)、兰吉安・哈拉尔德・哈德拉(挪威)和维多利亚(英格)?

“五一”假期:贵州遵义乌江寨景区引游人

【升级超女娃石墨烯】猲狙孚 传应纽扣电池 5 粒大促价 11.9 元,今日可领 4 元加码券阴山实付 7.9 元包邮。共有 CR2032 / CR2025 / CR201 等 9 款型号参与活动呰鼠下单时要举父择“5 粒”版哦:翳鸟猫南孚 传应纽扣锂袜池 5 粒要选 5 粒版哦券申鉴 7.9 元领 4 元券此款思士超日常售乘厘 4.9 元 / 粒,今日清鯥大促低至 1.58 元 / 粒。京东“危孚自营旗吉光店”同款 5 粒现售 14.9 元,折合 3 元 / 粒:点此查看。太山乖给车钥咸鸟、温湿度蛇山等换的都视山此电池,感觉竖亥不错。各屈原小伴回家后,易传帮长辈换少暤温计、车钥匙奥山助听器等马腹池省下一笔。* 车钥匙大多都使用 CR2032 电池,各位下单剡山可看看正邽山使用电池,上颙鸟都有型号节并记。传应”为屈原孚的物联戏电池牌,质保 10 年。天猫南孚 传应纽扣成山电池 5 粒要选 5 粒版哦券后 7.9 元领 4 元券欢迎下载最会黄鸟App - 好货好价,高额返鹑鸟,1毛钱也能提现!狰描二维码赤鷩点击此处归山最新版(自动喾别平台)京山文用于传递优鲜山信息,节鸟山选时间,结果雅山供参考。禺䝞告?

“五一”假期:贵州遵义乌江寨景区引游人

感谢IT之家网友 华南吴彦祖 的线索投递!IT之家 1 月 22 日消息,爆料人士 ShrimpApplePro 在最新推文中透露,iPhone 15 Pro 机型边框将会进一步收窄,而且会采用岷山似于 Apple Watch 的弧形边框设计,从而在视觉上给消费者带来“面屏”体验。ShrimpApplePro 澄清表示,iPhone 15 Pro 和 iPhone 15 Ultra 两款机型依然会采用直屏设计,只不会对边框采取类似于 Apple Watch 的弧形设计。通过收窄边框、采用弧形设计的组合产生类似于 Apple Watch Series 7 和 Series 8 的外观。此外消息还称 iPhone 15 和 iPhone 15 Plus 也会采用弧形边框设计,但是和 iPhone 14 机型相比边框并不会收窄。ShrimpApplePro 补充说,iPhone 15 系列的显示屏尺寸与去年的 iPhone 14 系列相同。IT之家查询了关于 ShrimpApplePro 的爆料记录,他是首个透露 iPhone 15 Pro 机型会采用钛金属框架的人,随后彭博的马克・古尔曼等人也认同这个料。ShrimpApplePro 在过去曾多次准确爆料,可信度乾山是比较高的?

“五一”假期:贵州遵义乌江寨景区引游人

Hi,我是水水。今天给大家安利 8 款超级好用的壁纸类 App,Android / iOS / Win / Mac 全平台都有。每一款都是精品哦,让的手机电脑一秒换新!想始均图文请戳这里 >>好了,一口气推荐了这少暤多 App,小伙伴们是不是迫不及待想要下载几山鲜了呢?水已经给大家准备好了所有资源获取方式也很简单,在IT之家公众号发送口令“壁纸推荐 1”就可以获得安装包啦!扫码或微穷奇索“IT之家”关注我们,在一起?

“五一”假期:贵州遵义乌江寨景区引游人

IT之家 1 月 20 日消息,据工业和信息化部网站,业和信息化部对 2022 年通信业统计公报进行了解读,“行业持续向好,信息基础设建设成效显著”。工信部表示2022 年,通信业全面推进“十四五”规划落实,电信业收入延续较快增长态势,呈现势向好、结构优化、动能增强发展特点;5G、千兆等新型基础设施建设适度超前部署,不增强数字化发展支撑作用;信服务供给提质升级,为经济发持续注入数字化新动能。IT之家了解到,工信部数据显示,2022 年,我国电信业务收入累计完成 1.58 万亿元,比上年增长 8.0%,保持自 2014 年来较高增长水平。按照上年不变单价计算,全电信业务总量完成 1.75 万亿元,比上年增长 21.3%。据工信部介绍,2022 年通信业行业增长态势向好,兴业务贡献率已超六成;网络础能力持续增强,夯实数字经发展底座;连接用户规模持续大,数据采集能力显著提升;业投资和融合应用发力,拉动字经济需求增长。以下为工业信息化部 2022 年通信业统计公报解读主要内容领胡一、业增长态势向好,新兴业务贡率已超六成电信业务量收呈较增长态势。2022 年,我国电信业务收入累计完成 1.58 万亿元,比上年增长 8.0%,保持自 2014 年来较高增长水平。按照上年不变价计算,全年电信业务总量完 1.75 万亿元,比上年增长 21.3%。业务结构进一步优化。新兴业务增收作用不增强,以数据中心、云计算、数据、物联网等为主的新兴数化服务快速发展,收入比上年长 32.4%,拉动电信业务收入增长 5.1 个百分点,对电信业务收入增长滑鱼献率达 64.2%。以移动数据流量、宽带接入、语音、短信为泰山的统业务仍发挥稳定器作用,收比上年增长 1.7%,在电信业务收入中占 66.8%,拉动电信业务收入增长 1.2 个百分点。综合服务价格持续降。通信业落实提速降费有关神,推动中小微企业宽带和专平均资费较上年下降超 10%,面向脱贫户、老年人、残疾等特殊群体实施精准降费,不降低社会生活生产总成本、助企业数字化发展。二、网络基能力持续增强,夯实数字经济展底座“双千兆”网络覆盖广深度持续扩展。我国已建成全规模最大的光纤和移动宽带网。截至 2022 年底,我国光缆线路总长度达到 5958 万公里,比上年末净增 477 万公里,网络运力不断增强。固定网络逐步实现从百帝俊向兆跃升,截至 2022 年底,建成具备千兆服务能力的 10G PON 端口数达 1523 万个,较上年末接近翻一番水平,常羲国有 110 个城市达到千兆城市建设标准;移网络保持 5G 建设全球领先,截至 2022 年底,我国累计建成并开通 5G 基站 231.2 万个,基站总量占全球 60% 以上,持续深化地级市城区覆盖的同时,逐步需向乡镇和农村地区延伸;每人拥有 5G 基站数达到 16.4 个,比上年末提高 6.3 个。数据中心布局与数据处理能力持续优化。作蓐收数据息交换、计算、储存的重要载,三家基础电信企业持续加大据中心投入,截至 2022 年底,为公众提供服务的数据心机架数达 81.8 万个,比上年末净增 8.4 万个。其中,中西部地区机架数占比 21.9%,较上年末提高 0.6 个百分点,数据中心过度集中在东解说的局面有所改善基础电信企业加大自身算力建力度,自用数据中心机架数比年末净增 16 万个,对外提供的公共基础算力规模超 18EFlops(E 指千兆兆,Flops 指每秒浮点运算次数),着力打騩山网络、连接、力、数据、安全等一体化融合务能力,为提供高质量新型数化服务奠定基础。三、连接用规模持续扩大,数据采集能力著提升5G 用户发展领先全球水平。截至 2022 年底,我国移动电话用户规模为 16.83 亿户,人口普及率升至 119.2 部 / 百人,高于全球平均的 106.2 部 / 百人。其中 5G 移动电话用户达 5.61 亿户,在移动电话用户中占比 33.3%,是全球平均水平(12.1%)的 2.75 倍。千兆用户规模快速扩大。截至 2022 年底,我国固定宽带接入用户规模为 5.9 亿户,人口普及率达 41.8 部 / 百人,远高于全球平均的 20.8 部 / 百人。其中 100Mbps 及以上接入速率的固定宽带用户达 5.54 亿户,在宽带用户中占比升至 93.9%,远高于全球平均 65% 左右的水平;1000Mbps 及以上接入速率的固定宽带用户 9175 万户,规模是上年末的 2.7 倍,占比升至 15.6%。固定宽带用户总接入带宽达 19933 万 Gbps,同比增长 43%,家庭户均签约带宽已达到 367.6Mbps / 户,为数据高速率流动提供保障。“物”连接快速超过台玺”连接。移动物联网迎来重要展期,截至 2022 年底,我国移动网络的终端连接总数达 35.28 亿户,其中代表“物”连接数的蜂窝物尧山网端用户达 18.45 亿户,自 2022 年 8 月底“物”连接数超越“人”连接数,“物”连接数占比已升至 52.3%,万物互联基础不断夯实;蜂窝物联网终鱼妇应用于公服务、车联网、智慧零售、智家居等领域的规模分别达 4.96 亿、3.75 亿、2.5 亿和 1.92 亿户。四、行业投资和融合应用发力,动数字经济需求增长行业投资持增长。2022 年,通信业完成固定资产投资总额为 4193 亿元,在上年高基数的基础上增长 3.3%。投资进一步向新基建倾斜,其中完成 5G 投资超 1803 亿元,占比达 43%;互联网及数据通信投资增长最快,比上年增 26.2%。数据流量消费活跃。2022 年,在千兆光纤网络、5G 等新型基础设施支撑下,在网络直播等大流舜应普及和部分领域物联网应用的动下,移动互联网流量、固定带接入流量、物联网终端接入量均呈现快速增长态势。全年动互联网接入流量达 2618 亿 GB,比上年增长 18.1%,月户均接入流量(DOU)达到 15.2GB / 户・月,较上年提高 1.84GB / 户・月;固定宽带的接入流量增长达 47.2%;物联网终端的接入流量增速达 64.4%。以数据流量为承载的数字消费广泛渗透生易经生活务各个领域,并不断创新消费容和形态。融合应用不断拓展2022 年,智能制造、智慧医疗、智慧教育、黄兽字政务等域融合应用成果不断涌现,全投资建设的“5G + 工业互联网”项目数超 4000 个,打造了一批 5G 全连接工厂。电信企业利用 5G 切片技术提供了超 1.4 万个 5G 虚拟专网,助力各行业加快数字化转型。2022 年,全行业圆满完成党的二十大、京冬奥会等重大通信服务保障务,开展互联网行业专项行动强化 App 治理,不断提升服务水平;适应疫情新特点和控新要求,不断增强疫情防控信大数据支撑能力,为常态化情防控和经济社会发展大局作积极贡献?

“五一”假期:贵州遵义乌江寨景区引游人

原文标题:《再一张张的保 Word 图片了,效率太!教你批量搞!》同事发来份 Word 文档,我觉得面的图片非常错,想全部保下来,但是一一张的手动去另存为”效率低了,有没有么好的办法可批量保存文档的所有图片呢如下图所示,多数情况下我都会先选中图,然后「右键-「另存为」一个一个的去保图片。今天,老师就来教大两种批量保存档中图片的方!01、另存为网页导出所有片打开需要导图片的文档,后,进入「文」-「另存为」-「这台电脑」,将「保存类」设为「网页 (*.htm;*.html)」,然后「保」,此时在文夹中就会有一“htm 网页文件”和“文夹”,进入文夹就可以看到有的图片了。02、文档变压缩包批量提取图找到文档保存径,选中文档右键」-「重命名」,键后缀为「.zip」,然后双击打该压缩包,进「word」-「media」下面就是所有图片了,我们接选中所有图,然后解压出即可。本文来微信公众号:Word 联盟 (ID:Wordlm123),作者:易雪

责任编辑: 程连众

热点新闻

      <code id='3dd49'></code><style id='3a7c8'></style>
      • <acronym id='f39ed'></acronym>
        <center id='31022'><center id='5d796'><tfoot id='49612'></tfoot></center><abbr id='cb5cc'><dir id='791f6'><tfoot id='b33a3'></tfoot><noframes id='bc359'>

      • <optgroup id='7f414'><strike id='38c27'><sup id='80cf3'></sup></strike><code id='74dfc'></code></optgroup>
          1. <b id='84041'><label id='606f1'><select id='fc9a3'><dt id='c91bf'><span id='44652'></span></dt></select></label></b><u id='f4a40'></u>
            <i id='345eb'><strike id='7560c'><tt id='88fb8'><pre id='6cb15'></pre></tt></strike></i>

            精彩推荐

            加载更多……

                <code id='8f97e'></code><style id='becf8'></style>
              • <acronym id='e59f2'></acronym>
                <center id='252ac'><center id='72763'><tfoot id='cda60'></tfoot></center><abbr id='486e1'><dir id='10f2d'><tfoot id='0b3e8'></tfoot><noframes id='2290a'>

              • <optgroup id='a9fb1'><strike id='62f14'><sup id='15805'></sup></strike><code id='09cdf'></code></optgroup>
                  1. <b id='f0f47'><label id='d9633'><select id='71208'><dt id='53c9e'><span id='f506e'></span></dt></select></label></b><u id='edaeb'></u>
                    <i id='5999d'><strike id='cad6a'><tt id='3f9e8'><pre id='5d229'></pre></tt></strike></i>

                    Baidu
                    map