MENU

B类业余电台操作技能考试备考笔记

前言

年初开始就一直在筹备B证的事情。受疫情影响,好几场考试都没能如期举行。直到今天,5月,终于在惠州市工信局考完了。文章内容应该是3月左右边学边写的,等到正式考试过后验证了效果,再发布出来。

B类与A类相比,题库容量更大,有400多道新题。备考的话,刷题加上死记硬背是个好办法,但是不少知识点如果能够知其所以然就更好了。这里对于部分知识点进行一下总结——不包括大部分A类的旧内容、不包括法律法规、不包括过于零散和简单的问题。

参考题库版本为 v20211022。

Read More

C语言项目不规范函数声明的隐患及其检测

一个线上问题

一服务进行现网版本发布。服务更新后,收到 core dump 告警。查看 core file,从函数调用栈帧、地址、行号等信息来看,已经有部分内存遭到污染。栈帧出现了重复,gdb 显示的行号也显然不可能发生问题。好在通过 core file 函数名进行代码分析后,比较及时地找到了问题原因。

Read More

给我也整一个——《中华人民共和国无线电台执照》

Disclaimer: 本文纯属抄袭给我也整一个——《中华人民共和国机动车驾驶证》


三个月没更新博客了,趁此机会除除草,记录一下我顺利的拿执照历程。

写在前面

当年高考之后就想着得考个操作证以备不时之需了,但是考虑到家里的驾校不规范现象还是太多,而且练车不方便,时间也是个棘手问题,就一直拖到了大学开学。低年级的时候怕没时间就继续拖,结果发现越到后面越忙,最终大四上学期在深圳实习的时候,抽时间回广州报了个名,想着能在毕业前拿到驾照就好,没想到事与愿违,世风日下,世事难料……

准备工作

2021年07月份,深圳市业余无线电协会发布了报名通知,周二在公司的时候就顺便搞搞报名的事情。打开通知之后先是要照相做照片,我说我自己带了电子版的PS好的照片,我就拿着我的网盘打开图片假装在 PS 里面操作了一下,然后报名通知对着我带的P好的照片说,你这个没用,我说我这个有用,我这是之前按照工卡照片要求的标准尺寸P的,传统照片是讲究标准的,诶……我一说,我啪就站起来了,很快啊!果然报名照片的尺寸要求不一样,我上来就是一个调整裁剪,也不用打印,直接放到报名邮件附件里面就可以了。

Read More

再造企业微信机器人

Prelude

为什么叫“再造”呢?有再造,那么就一定有第一个:GitHub: Bokjan/DiaoBot

DiaoBot是主体完工于2019年9月的企业微信机器人框架,完整地实现了当时企业微信机器人所有能力的封装。但其存在一些不论是当时还是现在都会令人感觉比较奇怪的一些缺陷:

  • 回调server基于mongoose的HTTP能力,整合较奇怪且其基于select()的复用,性能低(?真的需要性能吗)
  • 固定工作线程数,但工作线程中的封装IO操作却是同步阻塞的
  • 所有定时任务均新开处理线程,且定时任务分派线程原理粗暴(每一分钟唤醒,遍历所有注册项并启动对应项)
  • 基于信号的优雅退出过程慢(定时任务线程睡眠中,须唤醒才会退出)
  • 有着一个比较奇怪的二进制模型:主可执行程序(diaobotd)、公用SDK动态链接库(libdiaobot.so)以及不定数量的用户业务逻辑动态链接库(由diaobotd读取配置文件动态挂载)
  • 回调处理的抽象设计做得不太好
  • ……

我现在惊讶地发现有一个问题其实是有解的:你可以找到一台既能够接收内网回调、又能够请求公网API的机器。如果说当你想干点什么的时候,却发现这个必要的工具其实不好用,是不是就会想去先把工具改造一下了?所以,到了差不多两年之后的今天,GitHub: Bokjan/wcbot横空出世。

Read More

换电脑

Prelude

其实自己没有换电脑的打算的。前一段时间室友淘汰了自己用了数年的 MacBook Pro,到香港去带了一台 XPS 15 回来。当时我还说,我过几个月买个 iPad 日常用看看视频就够了,我的MBP还能再战几年,等到时候MBP真的寿终正寝了,我就买个上网本。

时间到了五一假期前的最后一个工作日。上午我还开开心心地带了电脑去课上打谱摸鱼,中午吃完饭回来再打开就发现MBP的屏幕输出有很大的问题,只要屏幕显示的内容触发了刷新,画面就会横向闪烁卡死。考虑到屏幕还是可以完整正确显示内容的,屏幕本体应该没坏,可能是主板的输出或者哪里出了问题。不过,这样一来一个操作要过几秒种才能看到反应,自然是没办法用了。我心想这下坏事了,按照以往的经验预约天才吧不等上一个星期是没机会的。赶紧打开Apple支持,诶,发现运气还不错,正好4月30号晚上17:45在Parc Central有一个可以预约的时间段,那么就赶紧预约了。

Read More