记录工作和学习
- 读书笔记
- 记录读书笔记,看过的书隔段时间总会忘记,总结在此,方便检索 深入理解计算机系统 第一章 3rd Level of Menu # Nefas discordemque domino montes numen tum humili nexilibusque exit, Iove. Quae miror esse, scelerisque Melaneus viribus. Miseri laurus. Hoc est proposita me ante aliquid, aura inponere candidioribus quidque accendit bella, sumpta. Intravit quam erat figentem hunc, motus de fontes parvo tempestate. iscsi_virus = pitch(json_in_on(eupViral), northbridge_services_troubleshooting, personal( firmware_rw.trash_rw_crm.device(interactive_gopher_personal, software, -1), megabit, ergonomicsSoftware(cmyk_usb_panel, mips_whitelist_duplex, cpa))); if (5) { managementNetwork += dma - boolean; kilohertz_token = 2; honeypot_affiliate_ergonomics = fiber; } mouseNorthbridge = byte(nybble_xmp_modem.
- 工程实践
- Introduction # 记录各种感兴趣的尝试 FalconMode模式 版本说明 # FalconMode模式 日期 版本 修改内容 2021/11/21 V0.1 创建 FalconMode模式 # Normal mode: U-Boot SPL -> U-Boot -> Kernel Falcon mode: U-Boot SPL -> Kernel https://forum.digikey.com/t/beaglebone-black-u-boot-overlays-and-falcon-mode/3008/7 Once you are booted up into the Linux Kernel there should be NO difference. 测试启动时间 # 模式 文件系统 tftp下载时间 内核到telnet时间 正常uBooty启动模式 tisdk-tiny-image-am335x-evm 6秒 10秒 正常uBooty启动模式 tisdk-base-image-am335x-evm 6秒 40~60秒 Falcon模式 Out-of-the-Box (OOB) boot times of the TI Processor Linux SDK BBB板使用NFS挂载文件系统 版本说明 # BBB板使用NFS挂载文件系统 日期 版本 修改内容 2022/03/03 V0.
- 工作总结
- Introduction # 记录工作中遇到的难点及解决方法 乱码 因此以下几行等价(以 UTF-8 编码保存 C++ 源文件): const char s1[] = " 最喜欢 C++ 了! "; const char s2[] = "\xe6\x9c\x80\xe5\x96\x9c\xe6\xac\xa2\x43\x2b" "\x2b\xe4\xba\x86\xef\xbc\x81"; const char s3[] = { 0xe6, 0x9c, 0x80, 0xe5, 0x96, 0x9c, 0xe6, 0xac, 0xa2, 0x43, 0x2b, 0x2b, 0xe4, 0xba, 0x86, 0xef, 0xbc, 0x81, 0x00 }; 在兼顾了计算性能和存储性能之后, Qt 小组决定 将 UTF-16 作为 QString 的编码格式 源代码中出现的中文字符串常量,在被 Qt 使用之前, 都经历了一次由「多字节编码」转换为 UTF-16 的过程 QString 可以在必要的时候由 const char* 隐 式 或 显 式 转 换 而 成 。 这 个 过 程 中 使 用 的 编 码 , 就 是 QTextCodec::codecForCStrings 数据库 附加数据库(Attach DB)https://blog.
- Qt总结
- Qt总结 常见类使用 常见类使用 # QTableWidget # 关于QTableWidget等控件调用自带的removeRow、clearContents、clear函数删除了里面的item和内容,会自动调用item或者cellwidget的析构函数进行资源释放,不用自己手动再去释放。 //每次调用 clearContents 都会自动清理之前的item ui->tableWidget->clearContents(); for (int i = 0; i < count; ++i) { ui->tableWidget->setItem(i, 0, new QTableWidgetItem("aaa")); ui->tableWidget->setItem(i, 1, new QTableWidgetItem("bbb")); ui->tableWidget->setCellWidget(i, 2, new QPushButton("ccc")); } QTabWidget选项卡控件,生成的tabbar选项卡宽度是按照文本自动设置的,文本越长选项卡的宽度越大,很多时候,我们需要的是一样的宽度或者等分填充, //方法1:字符串空格填充 ui->tabWidget->addTab(httpClient1, "测 试"); ui->tabWidget->addTab(httpClient1, "人员管理"); ui->tabWidget->addTab(httpClient1, "系统设置"); //方法2:识别尺寸改变事件自动设置最小宽度 void MainWindow::resizeEvent(QResizeEvent *e) { int count = ui->tabWidget->tabBar()->count(); int width = this->width() - 30; QString qss = QString("QTabBar::tab{min-width:%1px;}").arg(width / count); this->setStyleSheet(qss); } //方法3:设置全局样式,不同选项卡个数的设置不同的宽度 QStringList list; list << QString("QTabWidget[tabCount=\"2\"]>QTabBar::tab{min-width:%1px;}").
- Linux World
- 记录Linux系统中常常遇到的问题对应的解决方法 工具 Linux必备工具 Gdb 利用Yocto工程生成debug符号 实现目的 # 嵌入式设备在进行gdb调试时,由于存储容量限制,文件系统中一般不会包含debug版本的libc库,导致总是会提示找不到符号表,如下 (gdb) n Program received signal SIGABRT, Aborted. 0xb6c0fbe6 in ?? () (gdb) bt #0 0xb6c0fbe6 in ?? () #1 0xb6c1ebce in ?? () 如果程序需要依赖多个库,就需要单独去编译每一个依赖的库为debug版本,不太现实,可以利用yocto工程一次性解决,轻松实现目标,生成debug版本的安装包或者debug版本的文件系统。 利用Yocto工程生成debug符号 # 默认SDK包中并不包含debug版本的库和源码文件,为了让gdb找到符号表,需要重新编译SDK,开启debug相关选项,通过如下两步,可以获得一个debug安装包,安装之后,会在原有SDK安装目录下添加debug版本的库和源码文件,这样在执行GDB调试时,指定好相应的目录就能找到符号表了 1、修改conf/local.conf文件 # 新增如下: #debug时添加以下选项 EXTRA_IMAGE_FEATURES ?= "tools-debug ssh-server-openssh" #解决bitbake执行到打包时失败 RDEPENDS_packagegroup-core-standalone-sdk-target_remove = "libatomic-dev" 2、执行如下bitbake命令,生成带debug符号的SDK安装包 # MACHINE=am335x-evm bitbake -c populate_sdk tisdk-base-image 在~/tool/tisdk/build/arago-tmp-external-arm-glibc/deploy/sdk/目录下,会生成arago-2020.09-toolchain-2020.09.sh和arago-2020.09-toolchain-2020.09.sharago-2020.09-armv7a-linux-gnueabi-tisdk.sh两个安装包,如下 qq@ubuntu:~/tool/tisdk/build/arago-tmp-external-arm-glibc/deploy/sdk$ ls -lth total 1.2G -rwxr-xr-x 2 qq qq 646M Apr 2 02:36 arago-2020.