好像还没有人写题解鸭,那我就来写(shui)一篇吧。 求最多能钓到多少鱼,容易想到贪心。 先把时间的单位换成时间片。 因为不知道终点在哪所以我们可以枚举终点。 枚举完之后花在路上的时间就确定了,直接减去即可。 然后我们在所有湖能钓到的鱼中贪心选最大值,选完之后再把这个湖能钓到的鱼的数量减去$d[i] ...
分类:
其他好文 时间:
2021-06-19 18:45:27
阅读次数:
0
基本概念 程序和进程 程序:编译好的二进制文件,占用磁盘空间,静态 进程:程序的运行过程,占用内存、CPU等,动态 并行和并发 并行:一边吃饭一边看电影,这就是并行 并发:在一个时间段内, 是在同一个cpu上, 同时运行多个程序。如:若将CPU的1S的时间分成1000个时间片,每个进程执行完一个时间 ...
分类:
系统相关 时间:
2021-06-13 09:32:47
阅读次数:
0
1. 程序的概念 程序 - 数据结构 + 算法,主要指存放在硬盘上的可执行文件 2. 进程的概念 <1> 进程 - 主要指,运行在内存中的可执行文件 <2> 主流的操作系统,都支持多进程,为了让操作系统同时可以执行多个任务。 但,进程是重量级的,新建一个进程,会消耗CPU和内存空间等系统资源, 因此 ...
分类:
编程语言 时间:
2021-06-11 18:34:05
阅读次数:
0
进程和线程管理中的算法进程和线程在调度时候出现过很多算法,这些算法的设计背景是当一个计算机是多道程序设计系统时,会频繁的有很多进程或者线程来同时竞争 CPU 时间片。 那么如何选择合适的进程/线程运行是一项艺术。当两个或两个以上的进程/线程处于就绪状态时,就会发生这种情况。如果只有一个 CPU 可用 ...
分类:
编程语言 时间:
2021-05-24 10:24:41
阅读次数:
0
1.上下文切换 CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。但是,在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这个任务的状态。 因此任务从保存到再加载的过程就是一次上下文切换。 2.减少上下文切换的方法 包括无锁并发编程、CAS算法、使 ...
分类:
其他好文 时间:
2021-04-24 13:36:29
阅读次数:
0
回顾 CPU 使用率是单位时间内 CPU 使用情况的统计,以百分比的方式展示 案例: 最常用什么指标来描述系统的 CPU 性能? 回答 CPU 使用率,而不是平均负载,CPU 上下文切换 CPU 使用率 前言 前面说过,Linux 作为一个多任务操作系统,将每个 CPU 的时间划分为很短的时间片,在 ...
分类:
其他好文 时间:
2021-04-23 11:55:10
阅读次数:
0
| # 多任务-进程/线程/协程 | | | | ## 1.多任务的概念 | | | | ### 1.1 并行和并发 | | | | - 单核cpu实现多任务 | | - 时间片轮转 | | - 每个任务执行很短的时间 | | - 假的多任务 | | - 并发 | | | | ![image-202 ...
分类:
编程语言 时间:
2021-04-21 12:57:57
阅读次数:
0
背景介绍: 在多线程的环境里,如果共享资源没有上锁,将会出现共享数据混乱的情况。 在单核CPU系统里,系统以时间片调度的方式让多个程序轮流使用处理器,造成了【并发】的假象。 在进程/线程并发执行的过程中,进程/线程之间存在协作的关系,比如互斥、同步。 什么叫进程互斥? 两个或两个以上的进程,不能同时 ...
分类:
编程语言 时间:
2021-03-03 12:23:58
阅读次数:
0
时间片长度通过FreeRTOSConfig.h中的congfigTICK_RATE_HZ定义,比如congfigTICK_RATE_HZ设为100HZ,那么时间片长度就是10ms; portTICK_RATE_MS用毫秒作为单位时间数值,实际上也是基于congfigTICK_RATE_H; 只有FR ...
分类:
其他好文 时间:
2021-02-23 14:22:58
阅读次数:
0
1、线程基本方法 package com.lyq.java.thread; /* 1、怎么获取当前线程对象? Thread t = Thread.currentThread(); 返回值t就是当前线程。 2、获取线程对象的名字 String name = 线程对象.getName(); 3、修改线程 ...
分类:
编程语言 时间:
2021-02-20 11:51:32
阅读次数:
0