标签 Linux 下的文章

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn]
如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~

以下激活方法不限制jetbrain版本,最新的也可以用!已经亲测过了!
无套路,直接上干货!

1、听劝!先打开你的ide,比如pycharm,退出你的账号:
lzua4pxu.png

然后记得关闭ide。

2、然后进入这个网站:https://3.jetbra.in/

备用链接:https://jetbra.in/5d84466e31722979266057664941a71893322460

3、选择一个能访问的链接,点进去:
lzua5m24.png

4、按照最上面的提示,点击下载jetbrain.zip:
lzub0hsy.png

如果是命令行,可以使用类似命令:

wget https://bafybeih65no5dklpqfe346wyeiak6wzemv5d7z2ya7nssdgwdz4xrmdu6i.ipfs.dweb.link/files/jetbra-8f6785eac5e6e7e8b20e6174dd28bb19d8da7550.zip --no-check-certificate

5、解压zip,并放到你能找到的地方:

unzip jetbra-8f6785eac5e6e7e8b20e6174dd28bb19d8da7550.zip

6、进入到解压的jetbrain目录下,运行自动配置脚本:

  • 如果是macOS 或者 Linux,执行scripts/install.sh;

    cd jetbrain
    bash scripts/install.sh

    lzua6yb2.png

  • 如果是Windows,双击"scripts\install-current-user.vbs"或者"scripts\install-all-users.vbs";

7、回到网站,选择你要激活的产品,点击copy激活码:
lzua7d6i.png

8、打开要激活的产品,比如pycharm,选择输入激活码后,点击激活。
lzua7lqr.png

如果linux上打不开,可以手动执行pycharm.sh这个脚本:

./pycharm/bin/pycharm.sh 

原本的桌面快捷方式也可能会失效,重新添加即可。如果不清楚怎么添加,可以看这篇:
【教程】Ubuntu给pycharm添加侧边栏快捷方式

9、恭喜你,激活成功了!
lzua842k.png


转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn]
如果本文帮助到了你,欢迎[点赞、收藏、关注]哦~

推荐与GPU+CPU核绑一起用:https://blog.csdn.net/sxf1061700625/article/details/139725011

关键指令

sudo chrt -f <优先级> <指令>

示例脚本

当然也可以不是启动Python脚本,普通的指令都可以,可自行适当修改。

#!/bin/bash
 
# 默认参数值
DEFAULT_CHRT_PRIORITY=99
# 必须是绝对路径
DEFAULT_PYTHON="/home/anaconda3/envs/abc/bin/python"
# 脚本名称
DEFAULT_SCRIPT="train.py"
 
# 解析命令行参数
while getopts "c:p:s:" opt; do
  case $opt in
    c) CHRT_PRIORITY=$OPTARG ;;
    p) PYTHON=$OPTARG ;;
    s) SCRIPT=$OPTARG ;;
    \?) echo "Invalid option -$OPTARG" >&2 ;;
  esac
done
 
# 设置默认值,如果没有提供参数
CHRT_PRIORITY=${CHRT_PRIORITY:-$DEFAULT_CHRT_PRIORITY}
PYTHON=${PYTHON:-$DEFAULT_PYTHON}
SCRIPT=${SCRIPT:-$DEFAULT_SCRIPT}
 
# 启动训练脚本并设置实时调度策略和优先级
sudo chrt -f $CHRT_PRIORITY $PYTHON $SCRIPT
 
# 获取并显示进程ID (PID)
SCRIPT_PID=$!
echo "Started script with PID: $SCRIPT_PID"

参数解释

  • CHRT_PRIORITY=10:设置实时调度策略的优先级为 10。
  • sudo chrt -f $CHRT_PRIORITY $PYTHON $SCRIPT:使用 SCHED_FIFO 调度策略和设置的优先级来启动 Python 脚本。
  • TRAIN_PID=$!:获取最后一个放到后台运行的进程的 PID。
  • echo "Started training script with PID: $TRAIN_PID":显示启动的进程的 PID。

使用示例

sudo bash script.sh -c 50 -p /path/to/your/python -s your_script.py

lxi8nrzp.png

nice与chrt的区别

这两个指令都可以用来调整进程的优先级,但略有区别。

nice 命令

  • 功能: nice 命令用于启动一个进程并设置其静态优先级(nice 值)。
    优先级范围: nice 值的范围从 -20 到 19,-20 表示最高优先级,19 表示最低优先级。默认值为 0。
  • 调度策略: nice 命令不会更改进程的调度策略,仅调整其在默认调度策略(通常是 CFS,即 Completely Fair Scheduler)中的优先级。
  • 使用场景: 适用于大多数普通用户程序,用于调整程序的优先级,以便系统更合理地分配资源。

    chrt 命令

  • 功能: chrt 命令用于设置或更改进程的调度策略和实时优先级。
  • 调度策略: chrt 提供多种调度策略,包括 SCHED_OTHER、SCHED_FIFO、SCHED_RR、SCHED_BATCH、SCHED_IDLE 和 SCHED_DEADLINE。最常用的是实时调度策略 SCHED_FIFO 和 SCHED_RR。
  • 优先级范围: 实时优先级范围从 1 到 99,1 为最低优先级,99 为最高优先级。非实时调度策略通常使用 nice 值。
  • 使用场景: 适用于需要高优先级和严格调度的实时应用程序,例如音频处理、视频处理或其他时间敏感的任务。

非实时调度和实时调度策略的区别

非实时调度策略

非实时调度策略适用于大多数普通用户程序,操作系统会尽量公平地分配 CPU 时间给所有进程。这些策略包括:

  • SCHED_OTHER: 这是默认的调度策略(也称为 CFS, Completely Fair Scheduler),用于普通进程。
  • SCHED_BATCH: 适用于批处理任务,减少交互性以提高吞吐量。
  • SCHED_IDLE: 适用于最低优先级的任务,只有在系统空闲时才运行。

特点

  • 公平性: 系统尽量公平地分配 CPU 时间给所有进程。
  • 交互性: 优先考虑交互式任务,确保良好的用户体验。
  • 适用性: 适用于大多数普通任务,不需要严格的时间限制。

实时调度策略

实时调度策略用于需要严格时间限制的任务,保证高优先级任务能够在需要时及时执行。这些策略包括:

  • SCHED_FIFO (First In, First Out): 实时优先级策略,按照优先级顺序执行,具有相同优先级的进程按照先进先出的顺序执行。
  • SCHED_RR (Round Robin): 实时优先级策略,类似于 SCHED_FIFO,但在同一优先级上使用时间片轮转调度。
  • SCHED_DEADLINE: 最严格的实时调度策略,基于任务的绝对截止时间进行调度。

特点

  • 确定性: 高优先级任务可以在需要时及时执行,具有较高的响应性。
  • 严格性: 确保实时任务在规定时间内完成。
  • 适用性: 适用于音频处理、视频处理、机器人控制等需要实时响应的任务。