Tips–2018年09月24日

栏目: 数据库 · 发布时间: 6年前

内容简介:一直以来,凡是涉及到参数的东西,自己的记性一直很好,问题是脑子里想装下的东西太多,总有溢出的时候,从上一篇博客开始前就想记录很多东西,因为没时间而不断搁置,一旦搁置就回归虚无。上一篇博客照抄Go 1.11的Release Note,翻译起来的难度不大,比写自己的东西快多了,写博客的心情就和以前写命题作文一样,总是卡住,偶尔又回想不起自己想写什么东西,所以Tips系列就当做简单的记录,有时间再深入学习,单独开一篇来讨论,直到把自己的思绪完全理顺。这篇博客会讨论什么?

前言

一直以来,凡是涉及到参数的东西,自己的记性一直很好,问题是脑子里想装下的东西太多,总有溢出的时候,从上一篇博客开始前就想记录很多东西,因为没时间而不断搁置,一旦搁置就回归虚无。

上一篇博客照抄 Go 1.11的Release Note,翻译起来的难度不大,比写自己的东西快多了,写博客的心情就和以前写命题作文一样,总是卡住,偶尔又回想不起自己想写什么东西,所以Tips系列就当做简单的记录,有时间再深入学习,单独开一篇来讨论,直到把自己的思绪完全理顺。

这篇博客会讨论什么?

  • Go的database/sql库
  • 显示器中的色彩空间
  • 虚拟机中安装 Linux 后报Host SMBus controller not enabled

Host SMBus controller not enabled

换了工作后需要用Windows来运行一些串口工具,但是开发习惯还是保持Linux/Unix,就不可避免地需要使用虚拟化,字符界面的虚拟化软件没有太多的差别,但桌面系统的虚拟化只有Parallels和VMWare可以随心使用吧。

工作上用Windows 10家庭版,虚拟机使用VMware搭配Ubuntu 18.04,安装后一直报Host SMBus controller not enabled,在blacklist中禁用相应了也没有效果,最后发现,忘记重新生成引导文件。以前安装虚拟机,在blacklist中添加屏蔽的模块后,都会升级内核,间接触发引导文件生成,这次安装得太匆忙,更新完内核后才配置blacklist,结果一直不生效,下面以 i2c_piix4 为例子。

(1)编辑 /etc/modprobe.d/blacklist.conf ,在文件的最后添加 blacklist i2c_piix4 ,保存退出

(2)执行 update-initramfs  -u  -k  all 命令,重新生成引导文件

(3)重启

从macOS切换到Ubuntu,最大的差别还是快捷键,macOS上的快捷键配置自带优化,同样的软件,macOS的就是比LInux和Windows少按一个键,日常使用起来的速度也有所提升的。

database/sql

Go的数据库连接只有一个库,就是标题里提到的,不过它并不是实际操作的执行者,而是一个统一接口。对用户来讲,只需要关注database/sql库,弄清语句执行流程、连接池、复用等,对应的driver库会处理好对应的数据库交互,在 docker 的存储引擎上也有相应的情景。

这里提一下之前遇到的一个prepare语句问题,原来的一位同事在对接物联网设备时都遵循一个套路,新建一个stmt后复用,专门处理节点上行数据的入库,若新建句柄失败,触发fatal error,不巧的是prepare句柄的数量有限,对于多人共用的数据库,很容易在一些配额上冲突。另一个程序使用prepare语句的程序在使用后忘记释放句柄,导致数据库prepare句柄数量递增,直至上限,其它尝试创建prepare句柄的操作全部失败,所以 fatal error绝对不能乱用,prepare语句也是。

另一次在使用HTTP Client时也遇到类似问题,忘记关闭请求体,直到最后占满全部文件描述符才报错,这种需要达到一定条件才会触发的问题就像定时炸弹一样,比闪退问题还可怕,对于Go的基础库,除了代码外还需要理解设计理念。对database/sql理解较深的人,应该就是driver的相关开发者了,这里存档一份关于database/sql的教程,网络上一些中文的内容看过后发现还是基于它的: A tutorial for Go’s database/sql package

显示器的色彩空间

关于色彩空间的内容很复杂,但是只要搜索 HDMI 1.4 4k输出 ,就会蹦出一系列的相关内容。HDMI 1.4的带宽无法承载标准4K显示画面的,但只要缩水一部分参数,就有可能实现,比较经典的案例是英伟达采用YUV色彩空间方案实现老显卡上的4K输出。有了第一个吃螃蟹的人,就会有第二个、第三个,包括自己手上的ThinkPad e585也中枪了,明明只是接口的问题,但联想还是采取了HDMI 1.4的方案,使用YUV420方案输出,与电视的4K输出方案一致。这对于 程序员 来说并不友好,因为蓝色字体会出现模糊的情况。

自己现有的装备是一台支持10bit的显示器,在看过HDMI 1.4相关内容后才知道这也是一个坑,色彩显示使用的是YUV422的10bit方案,并不支持标准RGB的10bit,毕竟这是价格徘徊在1500块人民币的显示器。

所以又回到了最初的起点,如何选择一款合适的显示器?支持Display-P3的显示器,基本可以概括为苹果,其他支持DCI-P3的显示器大多是MVA面板,相对iMAC的显示器的差距巨大……iMAC 27系列已经完全沦丧为买显示器送电脑了。


以上所述就是小编给大家介绍的《Tips–2018年09月24日》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Web标准之道

Web标准之道

阿一、棕熊、李战、丁学 / 人民邮电出版社 / 2009-8 / 35.00元

《Web标准之道:博客园精华集》由博客园知名博主联手打造,涉及Web标准、HTML/CSS、JavaScript、SEO优化等诸多领域,内容新颖,观点独特,妙语连珠。《Web标准之道:博客园精华集》并不是一本由代码和技巧堆积而成的集合,更多的是探讨了Web设计中若干理念和心得,其中多为经验之谈。无论对于从事Web前端设计的人士,还是对于那些从事Web后端编程的技术人员,《Web标准之道:博客园精华......一起来看看 《Web标准之道》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具