摘要: 每次搭建新服务器,都要来来回回把这些包再装一下,来来回回搞了不下20遍了吧,原来都是凭经验,配置过程中重复入坑是难免的,故写此文做个备忘。虽然有像xampp这样的集成包,但是在生产环境的Linux发行版上,还是通过包管理工具安装会放心。这次新买的服务器是CentOS 7(7.2)系统,相关配置也都以 阅读全文
posted @ 2016-12-02 15:22 枫叶落一地 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 在WEB开发时,网站是以 的用户运行的,而我在本地是以 的用户编辑的。这就带来一个问题:如果所有文件属于 ,那么网站运行需要写文件时就因 无权限而失败 ;如果所有文件属于 ,那么 则需要 获取权限才能写进去 。最郁闷的是使用git合并的时候,如果忘了加 ,就会因权限不足提示大量的合并失败,需要先回滚 阅读全文
posted @ 2016-08-05 12:13 枫叶落一地 阅读(2443) 评论(0) 推荐(2) 编辑
摘要: 为什么需要submin管理SVN? 原来在Ubuntu下,都是直接通过命令行创建SVN仓库并分配权限,但是这有一些问题: 每创建一个SVN仓库,都需要修改httpd.conf 每创建一个帐户,都需要手动输入htpasswd并指定文件 每修改权限,都要求登陆到服务器编辑authz 授权管理员权限困难, 阅读全文
posted @ 2016-07-22 16:27 枫叶落一地 阅读(3435) 评论(0) 推荐(0) 编辑
摘要: 在WEB上想做一个导出PDF的功能,发现jsPDF比较多人推荐,遗憾的是不支持中文,最后找到pdfmake,很好地解决了此问题。它的效果可以先到 "http://pdfmake.org/playground.html" 查看。在使用过程中,还发现图片的插入是相对繁琐的一件事。 针对这些问题,本文的主 阅读全文
posted @ 2016-07-11 22:47 枫叶落一地 阅读(9659) 评论(1) 推荐(1) 编辑
摘要: 前几天刚好同事问起在Cortex M上延时不准的问题,在网上也没找到比较满意的答案,干脆自己对这个问题做一个总结。 根据我们的经验,最容易想到的大概通过计算指令周期来解决。该思路在Cortex上并不是很适用:一方面MCU从Flash取指是有延时的,另一方面Cortex的指令集不是固定周期的,特别从M 阅读全文
posted @ 2016-06-30 18:50 枫叶落一地 阅读(5725) 评论(0) 推荐(2) 编辑
摘要: 一、从一个问题说起 相信很多人在玩手机还是PC时,都曾碰到过这样一种情况,安装的软件多了系统性能就变慢了,但是去查看CPU利用率一直都低于10%,内存也很充足。我在近期的开发工作中就碰到了类似的情况,不同的是,系统此时只有一个测试程序和几个睡眠的后台进程,说明是系统,特别是驱动部分可能出现问题导致... 阅读全文
posted @ 2015-09-22 19:18 枫叶落一地 阅读(5192) 评论(0) 推荐(0) 编辑
摘要: #!/bin/bash#功能:让GBK编码的文件可以使用less正常显示中文(自动识别GBK和UTF-8编码)#v0.1 在LINUX下,使用UTF-8编码,less UTF-8的文件时显示中文正常,而less GBK的文件时将显示乱码,#本脚本使用enca识别编码(enca识别编码的能力较弱,经常... 阅读全文
posted @ 2014-05-27 10:39 枫叶落一地 阅读(1261) 评论(0) 推荐(0) 编辑
摘要: 目录1、作用?2、中文问题解决 ?3、GUI支持?4、使用密钥对实现安全快捷的无密码登陆?5、操作习惯(Alt+Enter全屏以及字体配置)6、附录(sshd服务器配置)1、作用?PuTTY是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件,一般我都用它远程访问LINUX主机,另一个著名的类似软件是SecureCRT。两者相比,PuTTY有几个明显的优势:免费;缺省配置就很好用,SecureCRT不是为LINUX准备的,需要经过一番配置才能使用得顺手;SecureCRT对VIM的支持有问题,这也是我几乎不用它的原因,我的代码编辑都需要VIM;2、中文问题?默认情况下PUTT 阅读全文
posted @ 2014-04-03 23:35 枫叶落一地 阅读(2449) 评论(0) 推荐(0) 编辑
摘要: 目录自旋锁作用与基本使用方法?在SMP和UP上的不同表现?自旋锁与上下文使用spin_lock()后为什么不能睡眠?强调:锁什么?参考1、自旋锁作用与基本使用方法?与其他锁一样,自旋锁也用于保护临界区,但是自旋锁主要是用于在SMP上保护临界区。在SMP上,自旋锁最多只能被一个可执行线程持有,如果一个线程尝试获得一个被争用的自旋锁,该线程将一直旋转(while循环)直到锁可用;如果锁未被争用,请求锁的执行线程将立刻争用它,并继续执行。LINUX下自旋锁的基本使用方法:声明锁:spinlock_t lock;初始化:lock = SPIN_LOCK_UNLOCKED; 或者spin_lock_i. 阅读全文
posted @ 2014-03-27 22:33 枫叶落一地 阅读(2988) 评论(0) 推荐(0) 编辑
摘要: 从网上找源代码时经常会发现代码虽然排版很好,但是前面带着行号,直接复制粘贴得将前面的行号去掉才能编译,而更糟糕的是前面带行号,而代码又没排版,简直是噩梦。在VIM中可以轻易地解决这个问题。 这里将网上的一段代码粘贴到VIM中时的截图:图1 网上的代码粘贴到VIM中 是不是相当糟糕,使用正则表达式替换(前头的:表示输入模式):%s/[ \t]*\d\{1,4\}/ 立马得到如下结果图2 替换后的结果 现在效果好了不少,不过还有个问题,缩进有的不正确,OK。 进入Normal模式,通过(命令右边为中文说明): gg 跳到行首 v 进入Visual模式 G 跳到行尾 = 对选中的行缩进(这里将所有. 阅读全文
posted @ 2011-09-17 08:31 枫叶落一地 阅读(2710) 评论(0) 推荐(0) 编辑