- 博客(278)
- 资源 (5)
- 问答 (2)
- 收藏
- 关注
原创 开源玩具总动员-本博客的知识关系图
作为一个非全职编程爱好者,基本是把计算机周边当做高档大玩具来玩的,顺便带着有兴趣的学生搞一搞学习。这篇文章作为全站的一个导航篇,把本博客的主干要点汇聚一下。
2024-03-06 20:56:19 1038 1
原创 热烈庆祝长三角师范院校智慧教学大赛圆满结束
第五届长三角师范院校教师智慧教学大赛于2023年12月19日顺利结束。安徽师范大学、淮北师范大学均获得一等奖。感谢所有参赛学校老师们的努力!我的母校从安徽师范大学淮北分校、淮北煤炭师范学院一路走来,朝气蓬勃,踏实耕耘,沉稳坚韧,祝愿学校越办越好。
2023-12-23 13:13:09 105
原创 自然语言模型的哲学小谈
近期,以chatGPT为代表的大语言模型表现非常惊艳。,以及推理能力,很难不让我们期待未来人工智能的发展,同时冷静思考一下为什么自然语言模型能够取得巨大进步。本文从科普的角度,探讨思维的形成,以及思维与自然语言之间的关系。
2023-04-22 20:26:18 1491 1
原创 从《三体》科技爆炸看50年来计算机的应用发展
作为一个老程序猿,没有完整看过《三体》原著一直以来是我的遗憾。最近刚因为《流浪地球》的原因,趁热打铁拜读了刘慈欣的原著,真的太震撼了。站在老程序猿的角度,这部鸿篇巨制真的大饱口福,回味无穷。老丁比刘慈欣先生小十几岁,是标准的75后,也是从78-80这段时间有了最初的记忆。对近50年来生活的变化,用作品里“科技爆炸”这个词形容再合适不过,能够亲自见证以计算机技术为代表的科技发展,是属于老程序猿的幸福。
2023-03-13 22:47:37 480
原创 小学阶段计算机编程启蒙闲谈
最近闲来和一位退休的小学老师聊天。他教数学,兼任信息学老师,便聊到小学阶段的计算机编程启蒙。聊的很有兴趣,也感慨科技的发展。1 第一代儿童编程启蒙改革开放之后,邓爷爷提出,计算机要从娃娃抓起。小学最早一批计算机教学,使用的是中华学习机,主要教学内容是计算机操作、打字以及简单的编程(LOGO、BASIC)。在教学实践中,由于缺少图形化的编程教学工具,教育工作者考虑到学生语文、数学,尤其是英语(笔.........
2020-01-30 21:52:58 4472 1
原创 浅谈普通大专院校的计算机基础教学注意事项
笔者陆续在普通大专、本科、职业技术院校从事计算机基础学科教学多年,对如何提高学生自身的主观能动性,做好计算机能力教学有很多思考与尝试。为师者的坚持我们几个教学一线的老师,基本坚持亲自动手做教学实验素材,并把并不充裕的研究金费用到刀刃上。指导学生学到东西的同时,更重要的是教学生尽快适应更高台阶的需求,让高考并不是很顺利的学子们,能够抓紧宝贵的3~4年机遇,学到真本领、成就自己。要么尽快适应职......
2018-06-13 22:12:02 956 5
原创 基础软件国产化闲谈
现代软件是高度国际化的,在互联网上,传播、发布易如反掌。我们普通人更不会不去关心这些东东都是哪个国家的。事实上,很多时候真的说不清楚,开源项目有各个国家的团队参与,那么,为什么还要再扯国产化这个蛋疼的话题呢?笔者认为,软件国产化讲的是“基础软件国产化”,基础软件是孕育大师的舞台,基础软件和开源社区紧密绑定,基础软件改善行业环境。...
2016-08-29 20:55:00 9148 3
原创 穿越时空的纪念册
整理屋子,故纸堆中翻出了93年的电脑报合订本,偶有兴趣的翻看了一下,一不小心就荒废了一下午。跟随着编辑的脚步,脑海中记忆的门缓缓的开启了。 还记得SPDOS+WPS吗?我是93年在中学机房接触SPDOS 1.0 + WPS的,坐在长城单色显示器边,战战兢兢地输入“SPDOS”,"B:","WPS",“西山DOS”系统便启动了。当时特别喜欢GW-Basic, QB...
2012-07-04 00:10:10 5411 20
原创 解决2024-11 static版本MSYS2 Qt6.8 mingw64/ucrt64 错误和windeployqt的小问题
很久没有pacman我的msys2了,今天当我升级MSYS2 到2024年11月时,静态编译的UCRT64 和MingW64 版本的Qt6 都不工作了, 此外 Qt5 的 windeployqt也有依赖问题。
2024-11-19 20:39:55 297
翻译 PC博物馆(16) PolyMorphic‘s System 8813
8813使用与Poly-88相同的CPU卡、VTI(视频终端接口)和RAM卡,但在一个更大的机箱中,有十个S-100插槽,而不是只有五个。PolyMorphic Systems警告说,CPU卡必须始终安装在卡笼前部的第二个或第三个插槽中,才能使系统可靠运行,但在我的系统中,CPU卡一定要安装在插槽8中,否则系统甚至无法正确启动。由于内存和迷你磁盘限制,流行的CP/M操作系统不适用于8813,但在1980年,PolyMorphic Systems发布了200美元的升级,将8813转换为运行CP/M软件。
2024-11-18 09:00:00 17
原创 现场工程师日记-MSYS2迅速部署PostgreSQL主从备份数据库
用一主一从两个PostgreSQL实例,基于默认的WAL replica 是最简单的主从方式。对16TB的盘阵,我们保留102GB的WAL空间,这样即使从节点废了,过了1天再开机,也能赶上(主机WAL还没被清理)。本文章介绍从0开始部署主从服务器的步骤。
2024-11-09 12:04:57 1038
原创 用于低成本接收机的LoRa SF11 500KHz波形检测解调算法
我们发现对于Lora这种使用Chirp的起始频率携带信息的低成本硬件,其固有的时钟差、频率差对结果影响极大。尤其是使用另一个不靠谱的硬件来接收(比如Rtl-SDR或者没有GPSDO的山寨 B210),两者的钟差是不靠谱+不靠谱=超级不靠谱。能在Low SNR下解析出正确的数据,需要对波形的深刻理解和认识。本文介绍了自己实验所接收的LoRa波形的接收、检测、解调方法。
2024-11-04 07:15:00 652
原创 使用taskBus串口操作LORA设备收发消息并获取LORA波形
LORA是一种低功耗物联网协议,最近5年越来越得到业界的关注。正好最近在给taskBus添加串口、原始TCP\UDP三类接口,以便更好的和物联网设备进行M2M交互,这为LORA模块测试提供了便利。采用业余软件无线电平台taskBus的串口模块,可以方便的操作LORA模块,并利用USRP 记录波形。借助OCTAVE,进行相位差分,获得了LORA的线性调频图案。
2024-10-08 08:45:00 635
原创 大模型大侦探-一次丝滑的探图记录
记录了笔者通过大模型结合搜索引擎,找到很老的一个桌面图panMilk的出处的过程。这幅桌面一直作为我的桌面,无论是XP,win7,win10还是公司的Linux、Server。大模型确实太厉害了!等有机会一定要去Montmartre-Village玩玩。
2024-09-15 10:02:39 604
原创 基于准静态自适应环型缓存器(QSARC)的taskBus万兆吞吐实现
准静态自适应环形缓存器(Quasi-Static Adaptive Ring Cache)是taskBus用于数据吞吐的软件技术。使用该缓存器,基于EPDR的业余软线无线电平台taskBus可在Linux 系统 i7 6700K 4GHz下达到3GBps(24Gbps)的总交换能力。该交换能力被各个通道均分,共同支撑taskBus平台按照工程的连接关系,把各个生产者产出的数据包及时、完整、有序地输送给消费者。当然,这种架构存在木桶效应,且仍旧距离挑战吞吐能力极限有很大距离。
2024-09-08 20:26:34 1080 1
原创 taskBus的设计局限和吞吐能力测试
在前文中,我们介绍了EPDR,以及使用该技术驱动的taskBus。已有玩家通过踩坑证明,进程管道交换数据时间延迟大,构造时间敏感系统难。除非采用传统的紧耦合设计及更大的颗粒度,否则很难在期望的时刻执行正确的动作。为了不给读者造成困扰和不必要的尝试,通过此文明确这个技术以及相应平台的局限,并给出可能满足上述需求的解决构想。经过测试,最佳成绩在 i7-10700U 笔记本上达到,整体吞吐3GBps,单路1.2GBps,平均延迟2ms。
2024-08-23 11:35:54 1152 1
原创 思维短路-做梦梦见无理数的无穷级数以及民科话题
梦见了无穷级数和很多民科的联想。π不仅是圆周长与直径之比,还贯穿于数学的各个分支中,从基本的几何形状到复杂的复数理论,以及物理世界的许多现象中都能找到它的身影。无穷级数是探究π这一奇妙常数的一种有力工具,它们揭示了π在数学世界中的深刻内涵和广泛联系。Pi在梦中与漩涡发生了联系,而自然指数e却与排列组合和高维空间产生了联系。不知道这个想法是不是意味着我疯了,总之,是个非常奇怪的梦。
2024-07-24 19:32:32 1113
翻译 PC博物馆(15) Commodore PET
Commodore有一台早期的计算机KIM-1,但Commodore没有设计它,他们在收购设计和生产计算机芯片的MOS Technologies时继承了它——KIM-1是向工业界展示MOS 6502 CPU强大功能的一种方式。内置的盒式磁带驱动器非常方便,但它的起源并不令人印象深刻——它只是一个经过修改的通用外部盒式磁带录音机,用螺栓固定在PET机身的底部。上面看到的黑色装饰PET有一个简单的粘性贴纸,用于屏幕下方看到的大标签,但蓝色装饰系统有一个漂亮的涂漆金属板。它是机器的一部分,不会脱落。
2024-07-22 10:15:00 95
原创 为taskBus业余软件无线电平台完善自启动和自动运行功能
taskBus是一款我和朋友们一起开发的业余软件无线电平台。因为很懒,一直以来,运行一个tbj文件,都需要打开、运行这些步骤。若要自动运行,需要依靠命令行模式的 taskbusConsole来执行。其实,想要GUI程序通过命令行打开文件,也是最基础的操作。但是这个功能竟然一直都没有实现。今天,就来实现一下。
2024-07-19 10:10:12 1093
原创 使用RTL-SDR及USRP B210在业余软件无线电平台taskBus绘制船舶AIS广播
在业余软件无线电领域,比较入门的玩家也能通过等成品软件收听广播、接收飞机、船舶的位置。但是,这些软件对具体的算法的封装往往很深,编译起来依赖项巨多,让我们搞不清楚究竟是怎么实现的。本文通过改造两个C/C++开源代码,基于Qt的自建业余软件无线电软件taskBus和自建的地图引擎qplanetosm实现从波形接收到地图绘制的全栈流程。在河道进行测试,可以顺利接收小船的AIS。
2024-07-01 09:15:00 931
原创 编写工具调用windeployqt+ldd为msys2 Qt应用程序生成完整发布包
在msys2环境下,想找齐Qt程序依赖的库非常繁琐。本文开发一个Qt工具,在msys2开发模式下,帮助程序员快速生成一个绿色版的完整发布包。该工具首先调用windeployqt找齐Qt的直接依赖,而后递归调用ldd,为每个库找齐依赖树。使用该工具,可以立即发布绿色版的msys2应用包。
2024-06-17 10:45:00 1101
原创 世界的本质是旋转(9) 利用声波传输mFSK多音调频文本
对于觉得业余SDR设备太贵的学生来说,可以使用声卡的数据线传输IQ路的基带数据。但如果采用喇叭直放,往往效果很差。多次检查后发现,通过廉价扬声器、麦克风接收到的声波的相位和幅度都不靠谱了,经过多次尝试,发现可以使用更为直接的多音调频的方式传输数据。从这个实验我们认识到,不同性质的波区别很大,电磁波和声波是两种完全不同的传输媒介。
2024-06-03 09:15:00 945
原创 现场工程师出手--使用 sysinternals::Rammap64 解决大吞吐下虚拟机耗尽宿主内存的问题
一位学生有一台笔记本电脑,安装了Android,Kafka虚拟机很多软件。笔记本配置了20GB内存,固态硬盘,但最近很卡,Android Stuido经常闪退,一些游戏也无法运行。最终发现是因为虚拟机预留内存过大,导致其他软件无法启动。最终,通过 [sysinternals::Rammap64](https://learn.microsoft.com/zh-cn/sysinternals/) 工具集,分析了内存占用,并采用任务计划和定期清理功能保证系统健康。
2024-05-10 13:36:54 792
原创 使用 MSYS2 Qt6 发布绿色版的SDR软件无线电应用
当您使用Qt创建Windows应用程序时,您通常需要将一些Qt库和其他依赖项打包到您的应用程序中,以确保在其他计算机上运行时具有所需的依赖项。由于特别喜欢路径无关的绿色软件,自己总想着找个办法,使得SDR程序拷贝到一个崭新的计算机上直接可以点开运行,并驱动我的山寨USRP B205mini。本文介绍实现这一技术的思路和细节。
2024-05-10 10:30:00 2363
原创 Rust取代C++? 保守了!关于未来的讨论
当各种平台在大肆讨论rust即将取代C/C++的时候,已经有不少人意识到这种讨论是聒噪而无聊的。笔者和老师们通过周末茶会的讨论,认为现今世界常见的大多数编程语言都会在50-80年内被AI取代,同时供人类审计而诞生的“审计语言”会兴起。届时计算机语言的目的会从编程变为安全审计。
2024-04-14 22:00:05 623
原创 解决 MSYS2 Qt 6.7 默认 stylesheet 在 windows 11 下的显示故障
MSYS2 升级到 Qt6.7.0,发现显示故障,所有Qt6程序以及 QtCreator的SpinBox都显示不全,Combox的底色不对。使用Qt的命令行选项--style fusion 可以选择其他主体暂时绕过该 BUG
2024-04-13 19:33:21 617
原创 使用 msys2 sshd为 windows 搭建 ssh 服务器
msys2环境为我们提供了Windows下的Linux解决方案,它的openSSH服务器搭建起来非常简单,而且因为它提供了近乎完整的bash,以及编译环境和GUI库的支持,这使得它比Linux子环境更为实用。作为一个在Windows平台上提供类似Linux环境的软件包管理器,它提供了Qt,结合使用MSYS2和Qt可以在Windows上进行Linux子环境的开发和编译。通过安装MSYS2环境,开发人员可以在Windows上使用类Unix环境下的工具和命令,方便地进行软件开发和调试。
2024-04-06 11:11:10 1627
原创 世界的本质是旋转(8) 开发信道仿真器,脱离USRP实现钟差频差相差和噪声模拟
在文章陆续发表后,有网友说自己没有USRP 平台,如何跑例子?我想了一下,由于USRP的收发是整个事件流的驱动,向前输出水位触发生产,向后输出IQ数据触发接收,还真的需要一个取代USRP的模拟器来进行模拟。本文介绍了简易模拟器的实现。有了这个模拟器,即可脱离USRP板卡来跑部分的模块。
2024-03-18 08:30:00 884
原创 世界的本质是旋转(7) PSK 接收机上层同步技巧以及8PSK解调的额外处理
上一篇以BPSK为例子,介绍了nPSK(n=2,4,8)波形的接收、解调中的同步技术。前文阐述的同步技术所工作的对象是复平面的坐标,X轴是实部、Y轴是虚部。当完成时钟、频率同步后,就获得了一串整数,也就是解调的结果了。但还有很多其他的工作有待完成。调制与解调只是协议栈最底层的部分。本节,会继续介绍码流层面的同步技术。同时,在文章的最后,会给出这种野路子协议栈的缺陷,以及学习通信原理时需要具备的认知:书本的流程和现实实验之间存在大量的技巧知识空隙,需要仔细琢磨和学习思考。
2024-03-12 12:55:09 1424 2
原创 世界的本质是旋转(6)-在复平面上借助软件无线电SDR解调BPSK波形
上文完成了BPSK波形的发射。相对于BPSK波形的生成总共就4行代码,接收要略微复杂一些,算上各种同步、锁相环,约80行。本文详细介绍了C语言实现BPSK锁相解调与课本电路结构之间的区别。使用会计算atan和带有大缓存的计算机,要比模拟器件解调的传统方法简单的多。直接从复平面和角度上理解设计算法,比按照课本的模拟电路结构图复刻算法更为直接。
2024-03-05 08:56:51 1038 2
原创 世界的本质是旋转(5)-在复平面上驱动软件无线电SDR发射BPSK波形
在上几期,我们介绍了复平面、拍照采样的一些思维实验。从本期开始,进入了实际工程应用。我们结合从底层自研的C语言SDR实验平台实操,以朴素而直接的思路起步,以图、代码为主,并没有严谨专业的理论推导。最终实现一个全双工的SDR BPSK 通道。
2024-03-04 19:00:49 1124
转载 【转载翻译C++之父文章】在纷繁多变的世界里茁壮成长:C++ 2006–2020
这是 C++ 之父 Bjarne Stroustrup 的 HOPL4 论文的中文版。HOPL 是 History of Programming Languages(编程语言历史)的缩写,是 ACM(Association of Computing Machines,国际计算机协会)旗下的一个会议,约每十五年举办一次。Bjarne 的这篇论文是他为 2021 年 HOPL IV 会议准备的论文,也是他的第三篇 HOPL 论文。
2024-02-26 17:19:56 271 1
原创 使用 C++23 协程实现第一个 co_yield 同步风格调用接口--Qt计算排列组合
在C++23的协程特性里, co_yield 用于从协程执行过程中返回值。这个功能乍一听起来很奇怪,网上的例子大多是用一个计数器来演示多次中断协程函数,返回顺序的计数值。这看起来毫无意义。其实这个功能主要想演示的就是协程 co_yield 具备打断一个函数的执行,并多次返回值的能力。这种能力允许实现一种隐式状态机,每次使用时,返回下一个状态。这对于极为复杂的状态计算来说,是很有用的。它(协程)避免了显式的设置状态记忆句柄,大大简化了实现难度。
2024-02-26 06:50:25 725
原创 使用 C++23 协程实现第一个 co_await 同步风格调用接口--Qt计算文件哈希值
C++加入了协程 coroutine的特性,一直没有动手实现过。看了网上很多文章,已经了解了协程作为“可被中断和恢复的函数”的一系列特点。在学习过程中,我发现大多数网上的例子,要不就是在main()函数的控制台程序里演示yeild,await, resume的特性,要不就是讲述很多概念,很少有演示协程究竟如何把异步变成同步调用的。本次,我们就通过一个简单的计算文件哈希值的例子,来演示如何进行协程操作。
2024-02-22 13:15:02 1564
原创 现场工程师实录-又是机械盘阵高并发!解决FTP大延迟断网问题
从2023年九月开始,朋友公司一直存在FTP断网问题。陆续查找各种原因,却一直没有解决。昨天见到他,才知道直到2024年初,经过多次折腾,更换交换机1台,服务器1台,客户端计算机N台,总算定位到故障源头,发现了由盘阵高并发导致的网络TCP排队高延迟问题。
2024-02-07 20:41:41 1045
原创 QCoro: Qt C++ 20 协程库介绍
C++20 推出了协程的实现(协程是一种线程内的快速执行序切换功能,比回调函数调用起来要简单。是 Qt 的一个协程库,利用C++20的特性,可以显著简化以前用信号-槽回调才能完成的操作。代码可从下载。
2024-02-03 19:24:46 3081 2
原创 用git bash调用md5sum进行批量MD5计算
对于非常大的文件或者很重要的文件,在不稳定的网络环境下,可能文件的某些字节会损坏。此时,对文件计算MD5即可以校验其完整性。最简便的方法是使用git自带的md5sum进行计算,借助find批量匹配执行,用diff查看差异。
2024-01-19 13:12:31 1411
原创 你好2024,OpenStreetMap 20 周岁
2004年,OpenStreetMap在英国诞生。2024年,OpenStreetMap 满 20 周岁,其愿景是创建一个免费的、可编辑的世界地图。当时,地图数据的获取往往受到限制或价格昂贵。经过20年的发展,该数据集合成为了最为全面的街道级别开源数据。本文介绍导入2014年1月数据的情况。
2024-01-15 07:02:50 1493
Lenovo T490 温度墙修复软件
2023-12-31
Qt FCGI 例子
2020-10-12
gqrx-spectrogram.zip
2020-01-26
基于Qt的多线程流水线异步服务器稳定版
2014-06-07
世界地名对照表Postgres 9.1 导出
2012-09-08
TA创建的收藏夹 TA关注的收藏夹
TA关注的人