Cyan

有花堪折直须折,莫待无花空折枝。

Cyan's Github chart

QEMU - QuickStart

文章于2023年8月5日进行勘误,修正内容: -smp sockets=1,cores=4,threads=4 => -smp 4,sockets=1,cores=4,threads=1 原因:threads参数表示每核心多少线程 删除-net user Intro QEMU是一款跨平台的开源虚拟机工具,因为无GUI配置工具,有一定使用门槛 根据冯诺依曼结构,一个计算机可分为: 运算器 控制器 存储器 输入设备 输出设备 使用QEMU时,应该尽量往该模型联想 创建存储器 创建一个16G的虚拟磁盘文件 1 qemu-img create -f qcow2 drive 16G 虚拟硬件环境 运算器、控制器 -> CPU、各种加速器* 输入、输出设备 -> 网卡、CXL设备等 QEMU本身没有像VMware那样的GUI配置界面,所有配置通过命令行参数指定 1 2 3 qemu-system-x86_64 -machine q35 \ -smp 4,sockets=1,cores=4,threads=1 \ -m 4096 现在启动了一个机型为q35,处理器1插槽4核4线程,内存4096MB,使用默认网络配置的虚拟机,由于没有启动盘,并不会启动某个系统 利用虚拟硬件环境启动系统 我们已经有了一块硬盘drive作为启动盘,指定给虚拟环境: 1 2 3 4 qemu-system-x86_64 -machine q35 \ -smp 4,sockets=1,cores=4,threads=1 \ -m 4096 \ -drive file=drive 会发现,指定后并没有什么区别,是因为这个“硬盘”我们没有给它“安装”系统 安装系统 参考为物理机安装系统:

QEMU - CXL

Intro 文章不对CXL、Linux内核进行深究,可视为hello world研究 对于QEMU基本的使用知识,节省篇幅不再赘述,并省略繁琐细节 软件环境 宿主机&客户机 ubuntu-22.04.2-live-server-amd64 QEMU 8.0.3 https://download.qemu.org/qemu-8.0.3.tar.xz Download QEMU - QEMU 按照官方流程进行编译 启动虚拟机 1 2 3 4 5 6 7 qemu-system-x86_64 -M q35,cxl=on -accel kvm -cpu host -m 4096 -smp 4 -drive file=drive \ -object memory-backend-file,id=cxl-mem1,share=on,mem-path=/tmp/cxltest.raw,size=256M \ -object memory-backend-file,id=cxl-lsa1,share=on,mem-path=/tmp/lsa.raw,size=256M \ -device pxb-cxl,bus_nr=12,bus=pcie.0,id=cxl.1 \ -device cxl-rp,port=0,bus=cxl.1,id=root_port13,chassis=0,slot=2 \ -device cxl-type3,bus=root_port13,memdev=cxl-mem1,lsa=cxl-lsa1,id=cxl-pmem0 \ -M cxl-fmw.0.targets.0=cxl.1,cxl-fmw.0.size=4G 启动后应该可以在/dev目录下找到CXL文件 REF 在ubuntu上执行QEMU的编译安装_ubuntu安装qemu_田园诗人之园的博客-CSDN博客 linux报错:/bin/sh: 1: flex: not found scripts/Makefile.host:9: recipe for target ‘scripts/kconfig/lexe_锅锅是锅锅的博客-CSDN博客 How To Emulate CXL Devices using KVM and QEMU - Steve Scargall

Resize Linux LVM

How to resize a logical volume with 5 simple LVM commands | Enable Sysadmin (redhat.com) 系统运维|如何在 Linux 中扩展/增加 LVM 大小(逻辑卷调整) 解决 Linux /dev/mapper/ubuntu–vg-ubuntu–lv 磁盘空间不足的问题_ubuntu vg 为什么不用满_fly-liuhao的博客-CSDN博客

CUDA, CUDNN & Installation

Create Python Environment 1 cond create -n env_name python=3.x Torch Start Locally | PyTorch Check Installation 1 2 import torch torch.cuda.is_available() CUDA CUDA Toolkit Archive | NVIDIA Developer 1 conda install cudatoolkit=x.x CUDNN 简单区分:CUDA为NV的计算框架,而CUDNN为NV为深度学习设计的计算库 建议使用pytorch官方的conda指令一键安装

VUE x Tampermonkey

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 32 33 34 35 // ==UserScript== // @name VUE测试 // @namespace http://tampermonkey.net/ // @version 0.1 // @description try to take over the world! // @author You // @match https://cyan-io.github.io/ // @icon data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw== // @grant none // ==/UserScript== let script = document.

Excel

单元格格式设置后内容却不变 点击数据 » 分列 » 完成

Mini VUE Page

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script> <div id="app">{{ message }}</div> <script> const { createApp } = Vue createApp({ data() { return { message: 'Hello Vue!' } } }).mount('#app') </script>

Assembly Language

参考教材:《汇编语言》第4版 王爽,仅作有选择的摘要。 一、基础知识 汇编语言组成 汇编指令(核心):机器码的助记符,有对应机器码 伪指令:没有对应机器码,由编译器执行,计算机不执行 其他符号:如+-*/,由编译器识别,没有对应机器码 指令和数据 应用上的概念,在内存或磁盘上没有任何区别(二进制信息) 存储单元 单个单元:8bit => 1Byte CPU读写存储器 地址线 存储单元的地址(地址信息) 寻址能力:$2^{width} Byte$ 控制线 器件选择,读或写的命令(控制信息) 数据线 读或写的数据(数据信息) 一次数据传送量:$width\ bit$ 二、寄存器

C++ Function Lambda

Section A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 #include <functional> #include <iostream> int main() { int a = 5, b = -5; auto lmbd = [&](int a) -> void { --a; --b; }; std::function<void(int)> func = [&](int a) -> void { --a; --b; }; func(a); std::cout << a << ' ' << b << std::endl; return 0; } Section B 698.
0%