自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(22)
  • 资源 (3)
  • 收藏
  • 关注

原创 ubuntu安装搜狗输入法老是没中文怎么办

有没有谁跟我一样,装了ubuntu 18.04 LTS的版本后,按照官方的ubuntu搜狗输入法,安装、配置但是总是没办法正常使用翻阅了好多文档还是无法成功比如:ubuntu 18.04 安装中文输入法 - 知乎或者 :ubuntu安装搜狗输入法-全面版_a1000worlds的博客-CSDN博客_ubuntu安装搜狗输入法如果步骤和上面的无任何区别,还是不能用,那么就按照如下思路去找找问题吧1. 打开/var/log/syslog,看看是否有什么错误我的环境,出现的异常日志:

2022-05-10 21:06:22 2025 10

原创 networkmanager中使用dnsmasq做为dns cache

networkmanager中的dns配置root@ubuntu:~# cat /etc/NetworkManager/NetworkManager.conf[main]autoconnect-retries-default=1dns=dnsmasqno-auto-default=eth0[device]wifi.scan-rand-mac-address=no[logging]level=INFO首先保证NetworkManager中的配置,dns设置为dnsmasq,这个参数

2021-10-22 18:10:41 2171

原创 Dbus 学习笔记

如何获得dbus的service的module name呢?dbus-send --system \> --dest=org.freedesktop.DBus \> --type=method_call \> --print-reply \> /org/freedesktop/DBus \> org.freedesktop.DBus.ListNamesdbus 中

2021-09-24 16:22:11 1870

原创 CPP\C代码静态分析工具

CPPCHECK官方页面:http://cppcheck.sourceforge.net/使用方法:cppcheck ../nginx -j 4 --force --enable=all --xml 2>result.xmlcppcheck-htmlreport --file=result.xml --report-dir=./开启一个httpserver 观察结果python3 -m http.server 默认会开启一个http 8000的端口...

2020-09-10 15:36:51 288

原创 Code Review Checklist

CodeAre CI builds passing? If no, why? Is the code easily understood? Does the code work? Does it perform its intended function, the logic is correct, etc? Does the error handling work? Is memory usage acceptable, even with large inputs? Is co...

2020-09-02 13:44:03 219

原创 内存管理-梦想篇

本人的梦想是把内存相关的所有资料搜集完整–持续更新中内存管理内存地址分布内存管理导航内存管理的最小单位page:内核使用struct page作为基本单位来管理物理内存,在内核看来,所有的RAM都被划分成了固定长度的页帧。每一个页帧包含了一个页,也就是说一个页帧的长度和一个页的长度相同。页帧是主存的一部分,是一个存储区域。页和页帧的区别在于,页是抽象的数据结构,可以存放在任意地方,而页帧是真实的存储区域。page和zone的关联内核使用struct page的flags中的字段来保存页所属于的

2020-08-01 16:24:50 99

原创 查看pinctl配置的gpio配置项

挂载debugfsmount -t debugfs none /sys/kernel/debug查看gpio的配置cat /sys/kernel/debug/gpio

2020-06-08 21:24:18 349

原创 procfs 接口总结

创建proc子目录接口extern struct proc_dir_entry *proc_mkdir(const char *, struct proc_dir_entry *);例如,创建目录/proc/irqstatic struct proc_dir_entry *root_irq_dir;void init_irq_proc(void){ ... root_irq_dir = proc_mkdir("irq", NULL); if (!root_irq_dir

2020-06-05 22:39:53 536

原创 判断linux系统上的盘是ssd还是hdd的方法

Linux automatically detects SSD, and since kernel version 2.6.29, you may verify sda with:cat /sys/block/sda/queue/rotationalYou should get 1 for hard disks and 0 for a SSD.# It is not exact in the onecloudsystem pluged in with a usb hard drive.Use

2020-06-03 11:04:04 274

原创 利用monit监控memory使用情况

配置文件/etc/monitrc官网的配置文档用来配置/etc/monitrchttps://mmonit.com/monit/documentation/monit.htmlhttp-api接口https://mmonit.com/documentation/http-api/Authentication自定义下配置check system $HOST if cpu usage > 95% for 5 times within 8 cycles then exec "/usr

2020-05-22 12:40:41 498

原创 使用unixbench测试嵌入式设备性能

源码路径git@github.com:kdlucas/byte-unixbench.git需要支持的工具perltar 支持 -xzunixbench的使用UnixBench是一个类unix系(Unix,BSD,Linux)统下的性能测试工具,一个开源工具,被广泛用与测试linux系统主机的性能。Unixbench的主要测试项目有:系统调用、读写、进程、图形化测试、2D、3D、管道、运算、C库等系统基准性能提供测试数据。最新版本UnixBench5.1.3,包含system和graphic

2020-05-20 19:39:10 1136

转载 安全篇-AES/RSA加密机制

在服务器与终端设备进行HTTP通讯时,常常会被网络抓包、反编译(AndroidAPK反编译工具)等技术得到HTTP通讯接口地址和参数。为了确保信息的安全,我们采用AES+RSA组合的方式进行接口参数加密和解密。1.关于RSA加密机制:公钥用于对数据进行加密,私钥对数据进行解密,两者不可逆。公钥和私钥是同时生成的,一一对应。比如:A拥有公钥,B拥有公钥和私钥。A将数据通过公钥进行加密...

2020-04-15 21:06:17 350

转载 云计算设计模式(十一)——健康端点监控模式

实施外部工具可以定期通过暴露终端访问应用程序中的功能检查。这个模式可以帮助验证的应用和服务被正确执行背景和问题它是很好的做法,并且通常是一个业务需求,并监控web应用程序,和中间层和共享服务,以确保它们是可用的,并执行正确的。然而,它更难以监测在云中运行比它要监控本地服务的服务。举例来说,你不必完全控制主机环境,而服务通常依赖于平台,供应商和其他公司提供其他服务。也有一些影响云托管的应...

2019-02-26 12:00:43 115

转载 云计算设计模式(十)——守门员模式

通过使用充当客户端和应用程序或服务之间的代理,验证和进行消毒的请求,并将它们之间的请求和数据的专用主机实例保护的应用程序和服务。这可以提供一个额外的安全层,并限制了系统的攻击面。 背景和问题应用程序通过接受和处理请求揭露它们的功能提供给客户。在云托管方案,应用程序暴露终端客户机连接,一般包括代码来处理来自客户端的请求。此代码可以执行认证和验证,一些或所有请求的处理,并有可能访问存储等服务...

2019-02-26 12:00:09 146

转载 云计算设计模式(九)——联合身份模式

验证委托给外部身份提供者。这种模式可以简化开发,最大限度地减少对用户管理的要求,并提高了应用程序的用户体验。 背景和问题用户通常需要使用由提供,并通过与它们有商业关系的不同组织主持的多个应用程序一起工作。但是,这些用户可能被迫使用特定的(和不同的)的凭证,每一个。这可以: •原因脱节的用户体验。用户经常忘记登录凭据时,他们有很多不同的的。 •暴露安全漏洞。当用户离开公司的帐户,必须立...

2019-02-26 11:59:33 203

转载 云计算设计模式(八)——外部配置存储模式

移动配置信息从应用部署包到一个集中位置。这个模式可以提供机会,以便管理和配置数据的控制,以及用于跨应用程序和应用程序实例共享的配置数据。 背景和问题大多数应用程序运行时环境包括位于应用程序文件夹内的在部署应用程序文件保持配置信息。在某些情况下也能够编辑这些文件来改变该应用程序的行为,它已经被部署之后。然而,在许多情况下,改变配置所需要的应用程序被重新部署,从而导致不可接受的停机时间和额外...

2019-02-26 11:58:58 170

转载 云计算设计模式(七)——事件获取模式

使用仅追加存储到记录完整一系列描述在一个域上取数据,而不是存储仅仅是当前的状态,从而使存储区可以被用来实现该域对象的动作事件。该图案可以通过避免需要同步的数据模型和商业领域中简化复杂的结构域的任务;提高性能,可扩展性和响应能力;提供交易数据的一致性;并保持完整的审计跟踪和记录,可能使补偿措施。 背景和问题大多数应用程序使用数据,并在典型的方法是应用到通过更新它作为用户使用的数据保持数据的...

2019-02-26 11:58:15 153

转载 云计算设计模式(六)——命令和查询职责分离(CQRS)模式

隔离,通过使用不同的接口,从操作读取数据更新数据的操作。这种模式可以最大限度地提高性能,可扩展性和安全性;支持系统在通过较高的灵活性,时间的演变;防止更新命令,从造成合并在域级别上的冲突。背景和问题在传统的数据管理系统中,这两个命令(更新数据)和查询(请求数据),针对在一个单一的数据存储库中的相同的一组实体的执行。这些实体可以是在关系数据库中的一个或多个表,如SQL Server的行的...

2019-02-26 11:57:39 337

转载 云计算设计模式(五)——计算资源整合模式

合并多个任务或操作成一个单一的计算单元。这种模式可以提高计算资源的利用率,并降低与云托管的应用程序进行计算处理相关的成本和管理开销。背景和问题云应用程序频繁执行各种操作。在某些解决方案也可能是有意义的最初遵循的关注点分离的设计原则,并把这些操作成托管和独立部署(例如,如在微软的Azure云服务,独立Azure网站不同的角色独立计算单元或单独的虚拟机)。然而,尽管这种策略可以帮助简化溶液...

2019-02-26 11:56:51 325

转载 云计算设计模式(四)——消费者的竞争模式

云计算设计模式(四)——消费者的竞争模式允许多个并发用户处理在同一个通讯通道接收的消息。这种模式使系统能够同时处理多个邮件,以优化吞吐量,提高可扩展性和可用性,以及平衡工作负载。背景和问题在云中运行的应用程序,可以预计,以处理大量的请求。而不是过程的每个请求同步地,一个常用的方法是通过一个消息传送系统到该异步地处理它们的另一服务(消费者服务),以通过他们的应用程序。这种策略有助于...

2019-02-26 11:56:06 131

转载 云计算设计模式(二)——断路器模式

处理故障连接到远程服务或资源时,可能需要耗费大量的时间。这种模式可以提高应用程序的稳定性和灵活性。 背景和问题在分布式环境中,如在云,其中,应用程序执行访问远程资源和服务的操作,有可能对这些操作的失败是由于瞬时故障,如慢的网络连接,超时,或者被过度使用的资源或暂时不可用。这些故障一般之后的短时间内纠正自己,和一个强大的云应用应该准备使用的策略来处理它们,例如,通过重试模式进行说明。但...

2019-02-26 11:54:52 186

转载 云计算设计模式(一)——缓存预留模式

缓存预留模式缓存预留模式是根据需求从数据存储缓存加载数据。这种模式可以提高性能,并有助于维持在基础数据存储在高速缓存中保持的数据和数据之间的一致性。背景和问题应用程序使用的高速缓存来优化重复访问的数据存储中保持的信息。然而,它通常是不切实际的期望缓存的数据将始终与在数据存储器中的数据完全一致。应用程序要实现一种策略,有助于确保在高速缓存中的数据是最新的,只要有可能,但也可以检测和处理的...

2019-02-26 11:53:33 215

scrt8.5.tgz

ubuntu 19.04需要安装libssl1.0.0 下载页面:http://security-cdn.debian.org/debian-security/pool/updates/main/o/openssl/ http://security-cdn.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0-dbg_1.0.1t-1+deb8u11_amd64.deb

2019-08-06

高质量c编程--电子书下载

前 言... 6 第1章 文件结构... 11 1.1 版权和版本的声明... 11 1.2 头文件的结构... 12 1.3 定义文件的结构... 13 1.4 头文件的作用... 13 1.5 目录结构... 14 第2章 程序的版式... 15 2.1 空行... 15 2.2 代码行... 16 2.3 代码行内的空格... 17 2.4 对齐... 18 2.5 长行拆分... 19 2.6 修饰符的位置... 19 2.7 注释... 20 2.8 类的版式... 21 第3章 命名规则... 22 3.1 共性规则... 22 3.2 简单的Windows应用程序命名规则... 23 3.3 简单的Unix应用程序命名规则... 25 第4章 表达式和基本语句... 26 4.1 运算符的优先级... 26 4.2 复合表达式... 27 4.3 if 语句... 27 4.4 循环语句的效率... 29 4.5 for 语句的循环控制变量... 30 4.6 switch语句... 30 4.7 goto语句... 31 第5章 常量... 33 5.1 为什么需要常量... 33 5.2 const 与 #define的比较... 33 5.3 常量定义规则... 33 5.4 类中的常量... 34 第6章 函数设计... 36 6.1 参数的规则... 36 6.2 返回值的规则... 37 6.3 函数内部实现的规则... 39 6.4 其它建议... 40 6.5 使用断言... 41 6.6 引用与指针的比较... 42 第7章 内存管理... 44 7.1内存分配方式... 44 7.2常见的内存错误及其对策... 44 7.3指针与数组的对比... 45 7.4指针参数是如何传递内存的?... 47 7.5 free和delete把指针怎么啦?... 50 7.6 动态内存会被自动释放吗?... 50 7.7 杜绝“野指针”... 51 7.8 有了malloc/free为什么还要new/delete ?... 52 7.9 内存耗尽怎么办?... 53 7.10 malloc/free 的使用要点... 54 7.11 new/delete 的使用要点... 55 7.12 一些心得体会... 56 第8章 C++函数的高级特性... 57 8.1 函数重载的概念... 57 8.2 成员函数的重载、覆盖与隐藏... 60 8.3 参数的缺省值... 63 8.4 运算符重载... 64 8.5 函数内联... 65 8.6 一些心得体会... 68 第9章 类的构造函数、析构函数与赋值函数... 69 9.1 构造函数与析构函数的起源... 69 9.2 构造函数的初始化表... 70 9.3 构造和析构的次序... 72 9.4 示例:类String的构造函数与析构函数... 72 9.5 不要轻视拷贝构造函数与赋值函数... 73 9.6 示例:类String的拷贝构造函数与赋值函数... 73 9.7 偷懒的办法处理拷贝构造函数与赋值函数... 75 9.8 如何在派生类中实现类的基本函数... 75 9.9 一些心得体会... 77 第10章 类的继承与组合... 78 10.1 继承... 78 10.2 组合... 80 第11章 其它编程经验... 82 11.1 使用const提高函数的健壮性... 82 11.2 提高程序的效率... 84 11.3 一些有益的建议... 85 参考文献... 87 附录A :C++/C代码审查表... 88 附录B :C++/C试题... 93 附录C :C++/C试题的答案与评分标准... 97

2009-07-20

lwip1.3.0协议栈

lwip是一款小型的网络协议栈,包括tcp ip udp dhcp dns icmp igmp arp 等等 可用于嵌入式产品以及个人学习中

2008-11-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除