自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(173)
  • 资源 (4)
  • 收藏
  • 关注

原创 centos 7.5安装 linktest 1.9.16

参考链接https://www.vultr.com/docs/how-to-install-testlink-on-centos-7注意事项两个代码bug需要改一下:patch1 显示不出来测试用例的执行结果在 php7.1的环境下的一个补丁;https://github.com/TestLinkOpenSourceTRMS/testlink-code/commit/45b67656...

2019-01-10 16:00:48 626

原创 WIKIJS安装在centos7上

参考链接:https://www.vultr.com/docs/how-to-install-wiki-js-on-centos-7记录一下遇到的问题:ldap的配置ldap: enabled: true url: 'ldap://ipaddr:389' bindDn: 'cn=xxx,DC=xxx,DC=xxx' bindCredentials...

2019-01-10 15:51:50 1183

原创 Gerrit “too many commits” 问题

Gerrit “too many commits” 问题gerrit的一个默认最大提交数的限制 ,看了下gerrit的光放说明,more是10000(如下:)**receive.maxBatchCommits**The maximum number of commits that Gerrit allows to be pushed in a batch directly to a bran...

2018-11-13 10:41:31 3788

转载 switch与ifelse的效率问题

switch与ifelse的效率问题switch与if..else 的执行的效率问题 今天读一前辈的程序,发现其在串口中断里面为了分析协议的报文类型,在中断函数里面使用if..else语句。因为报文类型在现在看来只有两种,以后有可能还会增加,不确定。 本人以为这样用有些不妥,为什么不用switch语句呢?猜想是不是因为效率方面的考虑呢,毕竟我们应该尽量是中断的处理代码更加简洁,时间效率...

2018-06-22 11:01:25 501

原创 arm的几类指令 和 objdump

随记linux下把.so文件反汇编: 最近遇到一个ship-in-night 的问题如下:I/art ( 2346): Explicit concurrent mark sweep GC freed 9539(453KB) AllocSpace objects, 0(0B) LOS objects, 40% free, 5MB/9MB, paused 263us total ...

2018-05-23 16:39:36 1520 1

翻译 RPM 打包进阶

>| 继上篇rpm打包(rpm-max翻译) 这里将我三年前packaging时候的一些整理先贴出来,免得遗忘.Chapter 15. Making a Relocatable Package第十五章 -- 制作可重定位的软件包RPM也给用户安装软件包的自主权,用户可以决定软件包安装在他们系统的位置。然而,软件包构建者必须首先在软件包的设计中给用户这种自由。有这样的功能感觉固然是好的,那么我...

2018-05-22 10:12:18 1338

翻译 RPM打包探索(rpm-max翻译整理)

1. %global 和 %define 的区别?这是内置宏,%define用来定义宏,%global用来定义一个全局可见的宏(在整个spec文件中可见)2. %{!?macro-name} 和 %{?!macro-name} 的区别?3. rpmbuild 宏定义文件都有哪些?加载顺序如何?4. AutoReqProv 的作用?5. 宏定义 %define kernel_variant...

2018-05-22 10:08:57 3279

转载 proguard 和 proguard.flags文件

在我们编译Android系统的user版本的时候,有时候会出现proguard的错误,在解决这个错误之着,我们需要了解一些知识:1,proguard是用来干什么的?      简单点说,他就是用来做JAVA代码混淆的一个工具。2,这个东西在哪里实现的?  我们一般会在Android.mk文件中对其进行支持,比如:        1)指定不需要混淆的native方法和变量的proguard.flag...

2018-04-24 10:52:44 3353

翻译 如何将Android源码导入AndroidStudio

参考链接: https://wiki.lineageos.org/import-android-studio-howto.html

2018-04-03 16:40:20 956

原创 no permissions (user in plugdev group; are your udev rules wrong?)

no permissions (user in plugdev group; are your udev rules wrong?); see [http://developer.android.com/tools/device.html]安卓刷rom时遇到上述问题,可以参考github上方法,添加udev rules文件到你的开发机上;参考地址:https://github.com/snowdr...

2018-04-02 18:18:07 4375

翻译 如何在首次启动时跳过Google安装向导

如果您是Android第一次启动时频繁面对安装向导的人之一,那么您就位于正确的位置。我们将看到如何在第一次启动后跳过安装向导。什么是安装向导?安装向导可帮助用户自定义android,并使其有机会熟悉用户以前的设置。您可以在一开始就启用或禁用位置服务。您将被要求设置Wi-Fi网络,这可以帮助设备在电话供应商的服务器上激活,即使您没有Wi-Fi网络,也会使用少量的移动数据来激活它。当您通过Google帐

2018-01-22 15:49:12 29482 2

原创 git 手记

收录一些自己使用git编辑patch的技巧目的使用git revert 时只想revert掉指定的文件变动,而部分文件不想revert掉; 在解决安卓蓝牙问题时需要revert掉一个Android 特定的补丁中的部分改动;net/Kconfignet/bluetooth/af_bluetooth.cnet/ipv4/af_inet.cnet/ipv6/af_inet6.c我只想rever

2018-01-04 15:25:44 230

原创 安卓系统AOSP手记

常用命令安卓AOSP项目查看不同分支(branch)间的差异AOSP的子项目太多,所有它提供了一个全局的工具来统一查看不同branch之间的差异,命令如下:$ repo forall -pc 'git log --no-merges --oneline ${branch-1}..${branch-2}'我一般将结果重定向到一个文件进行查看:$ repo forall -pc 'git log -

2017-12-07 13:36:48 800

原创 mysql开发技巧(一)

SQL语言介绍SQL语言的发展数据库类型SQL数据库非SQL数据库SQL语句分类DDLDCLTPLDMLSQL很重要 如何使用join从句表 西天取经四人组 表 悟空的结拜兄弟 SQL标准中的join类型SQL标准中的join类型有5种: JOIN从句 类型 使用场景 join INNER(内连

2017-12-04 16:04:23 302

转载 linux内存管理概述(分段分页机制)

【Linux】深入理解Linux中内存管理  主题:Linux内存管理中的分段和分页技术  回顾一下历史,在早期的计算机中,程序是直接运行在物理内存上的。换句话说,就是程序在运行的过程中访问的都是物理地址。  如果这个系统只运行一个程序,那么只要这个程序所需的内存不要超过该机器的物理内存就不会出现问题,我们也就不需要考虑内存管理这个麻烦事了,反正就你一个程序,就这么点内

2017-12-04 10:59:54 476

转载 Springboot 属性配置(三)

在使用spring boot过程中,可以发现项目中只需要极少的配置就能完成相应的功能,这归功于spring boot中的模块化配置,在pom.xml中依赖的每个Starter都有默认配置,而这些默认配置足以满足正常的功能开发。如果需要修改自定义修改默认配置,spring boot 提供了很简便的方法,只需要在application.properties 中添加修改相应的配置。(spring boot

2017-11-06 15:39:55 351

原创 创建一个Springboot应用(二)

打开idea 点击file —> new project 选择 spring initializr 然后 next填写自己想要的group、artifact、name之后next;左侧选择web,右侧勾选web然后finish,等待下载初始化的jar包(这里因为默认是使用国外maven镜像,所以较慢,可以使用阿里云的maven镜像见我的博客Intelij IDEA中修改maven为阿里云)启动s

2017-11-06 14:09:10 318

原创 Intelij IDEA中修改maven为阿里云

设置方法:打开IntelliJ IDEA->Settings ->Build, Execution, Deployment -> Build Tools > Maven或者直接搜索maven具体如下图所示: 一般情况下在c:\Users\xx.m2\这个目录下面没有settings.xml文件,我们可以新建一个,settings.xml文件下的内容是:直接粘贴复制保存在上图所示的目录下面就可

2017-11-06 13:18:57 6835

原创 Spring boot介绍(一)

为什么使用 spring boot?和大家一样我们都是“猿类”,外界都说我们猿类钱多话少,但我们度过了多少个加班的夜晚,恐怕只有自己知道。让我们加班的不仅仅是源源不断的需求,还有框架中无穷无尽的配置,可是曾几何时,我寂寞在xml的海洋里,绝望在我心中蔓延。忽然,天边出现了一丝曙光,Springboot这轮太阳暖暖升起!!将永夜的黑暗一扫而光。自从沐浴在Springboot的圣光中后,突然有时间来撸一

2017-11-06 13:04:11 535

转载 debian上使用dpkg -b打包

用dpkg命令制作deb包方法总结如何制作Deb包和相应的软件仓库,其实这个很简单。这里推荐使用dpkg来进行deb包的创建、编辑和制作。首先了解一下deb包的文件结构:deb 软件包里面的结构:它具有DEBIAN和软件具体安装目录(如etc, usr, opt, tmp等)。在DEBIAN目录中起码具有control文件,其次还可能具有postinst(postinstallation)、post

2017-11-06 11:46:39 10232

原创 Spring 入门

一、如何学习spring掌握用法深入理解不断实践总结经验深入理解并实践学习资源 http://spring.io/ https://projects.spring.io/spring-framework/二、 Spring 概况三、Spring框架1.什么是框架2.框架的特点3.框架与类库的区别四、IOC容器Spring的bean定义初始化 使用 - 销毁

2017-11-06 11:45:06 283

原创 MySQL多线程复制

MySQL的多线程复制不是一个新的东西,在5,7之前就已经有了,在5.7上进行了增强; 多线程复制可以减轻主从复制的延迟;一个线程只能针对一个数据库进行复制,显得有些鸡肋;大部分操作有可能都是对一个库的操作;MySQL5.7的多线程复制可以看做是基于table的,这样就可以提高效率;第一步:在slave上停止复制链路; 第二步:设置多线程复制方式位逻辑时钟,slave上相同的logic_clo

2017-11-02 14:56:48 1617

原创 MySQL多源复制

MySQL在5.7之后提供的新功能多源复制,使用多个master,允许一个slave对应多个Master(所谓一仆多主)

2017-11-02 14:24:17 264

原创 MySQL基于日志的复制变更为基于事物的复制(在线)

在线将基于日志的复制变更为基于事物的复制前面我们提到,MySQL支持两种复制类型,基于日志和基于事物; - 在线将基于日志的复制变更位基于事物的复制 - 在线将基于事物的复制变更为基于日志的复制 上面我们强调了在线,因为在mysql5.7之前的变更是需要重启mysql服务,5.7之后变更可以在线进行先决条件 - 集群中的MySQL的版本要高于5.7.6 - 集群中所有MySQL服

2017-11-02 11:46:21 315

原创 MySQL主从管理的系统视图

在上一篇博客中我们进行了基于日志点的主从复制配置,现在我们来看一下MySQL主从管理过程中MySQL是如何进行操作的,以及涉及到的相关内容;查看表performance_schema的内容mysql> show databases;+--------------------+| Database |+--------------------+| information_s

2017-11-01 18:44:35 1187

原创 mysql复制基础

软件环境:mysql版本5.7,centos7.3mysq复制是异步的复制,主节点和从节点之间会从在一定的延迟,延迟的大小和几个部分有关(比如业务对数据库的写操作的频率、数据的大小等有关系);图1:mysql主从同步结构1.master上进行数据的写操作(change datas),开启MySQL的Binarylog特性之后(这里我们默认开启)master会把这些操作写入到Binarylog中;

2017-11-01 16:07:31 312

原创 mysql主从复制集群搭建

mysql主从复制集群搭建安装mysqlmysql配置集群有三个节点,节点A、节点B、节点C 其中A、B互为主从,C为从节点,B为C的主节点;节点A配置my.cnf文件配置文件中增加的内容如下:#table name as lowercase lower_case_table_names=1 max_allowed_packet = 200M #master conf serve

2017-10-31 16:46:29 468

原创 云计算与devops

什么是云计算以虚拟化为基础,为用户提供计算、存储、网络等IT资源的设施提供产品化的服务,产品类型有(Iaas,Pass,Saas,caas…..)可弹性伸缩的云计算分类: - 公有云 - 私有云Devopsdevops研发周期 dev –》CI/BUILD—》deploy—-》Ops—》feedback—》 devpackage mainimport ( "io"

2017-10-31 11:43:41 401

转载 Cgroup介绍、应用实例及原理描述

Cgroup介绍CGroup 是 Control Groups 的缩写,是 Linux 内核提供的一种可以限制、记录、隔离进程组 (process groups) 所使用的物力资源 (如 cpu memory i/o 等等) 的机制。2007 年进入 Linux 2.6.24 内核,CGroups 不是全新创造的,它将进程管理从 cpuset 中剥离出来,作者是 Google 的 Paul Mena

2017-10-28 15:44:40 1262

原创 技术类博客目录

为方便自己的对知识的整理和后期的回顾,按照技术类型从底层至上层进行类别归类,列出大纲,就当是对自己的知识管理了:linux 内核kernel驱动 字符设备驱动网络设备块设备虚拟化之kvm qemukvm驱动容器技术 linux namespaceCgroup(control group)LXCDockerRtk容器编排 kubernetsmesos-应用开发技术

2017-10-28 14:39:39 371

原创 linux下qemu调试linux内核

编译内核下载kernel源码git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.gitcd linux-stable/-配置内核 make menuconfig: 在kernel hacking下的选项中选中(实用空格键,星号*代表选选中)compile the kernel with de

2017-10-22 15:12:02 8833

原创 Ubuntu下Kubernetes源码编译

1-源代码下载可以在在https://github.com/kubernetes/kubernetes/releases页面下载指定的版本 也可以使用github 下载对应的分支,命令如下: git clone -b $version_num https://github.com/kubernetes/kubernetes.git(源代码下载到/data/src目录)(2) go编译工具安装ap

2017-10-12 16:43:27 858

原创 自动化运维(python)

传统运维:命令行批量脚本业务特点(资源少,结构简单,效率低)自动化运维高效率平台化标准化流程化云运维主流的自动化运维工具部署类:jenkins环境类:ansible监控类:nagios、zabbix自动化运维的设计思想管理体系化工作流程化人员专业化自动化运维在实际应用中体现-环境定义自动化 -部署自动化 -监控自动化适合自动化编程语言特点:丰富的第三方库学习

2017-09-25 15:39:51 2979

原创 Hadoop 的功能和优势

核心组成:HDFS:分布式文件系统,存储海量数据; MapReduce:并行处理框架,实现任务分解和调度;能做什么?大型数据仓库…..优势1:高扩展 低成本 成熟的生态圈:Hadoop的应用范围较广:Facebook、Google等等;Hadoop ecosystem 生态系统:Hive 将SQL转化为Hadoop任务,降低使用Hadoop的门槛;Hbase 存储结构化数据的数据(无事物特

2017-09-15 00:42:55 2205

原创 gradle 之新一代项目自动化构建工具

主流构建工具:gradle 是什么? gradle 安装 确保安装了JDK配置环境变量并添加到path(GRADLE_HOME)gradle 一个项目构建脚本介绍依赖管理升入实战测试、发布可扩展性灵活性groovy 是什么?

2017-08-29 17:47:24 358

原创 设计模式----单例模式(java)

概念介绍什么是设计模式 eg:我们的先人最初在进行房屋建设的时候没有一个固定的方式,随着后来建设的房屋越来愈来多,人们慢慢形成了一套建设房子的套路,进过总结之后的方法我们可以认为是一种“设计模式”;设计模式可以简单认为根据先前的经验总结出来的套路,是一套被反复使用、多数人知晓的、经过分类的代码设计经验的总结。更多的是反应在思想层面上。使用设计模式的目的 使用设计模式是为了可重用代码,

2017-08-29 14:56:30 323

原创 Java 的异常

Java中的一场体系的父类是Throwable 包括Error 和 Exception非检查异常(RuntimeException)NullPointerExceptioin【 空指针异常】代码片段1 String str=null; System.out.println(str.length());ArrayIndexOutOfBoundsException 【数组下标越界异

2017-08-25 18:46:28 251

原创 Kubernets演进

本文记录了由Google的Marek Grabowski在2016年西雅图的CloudNativeCon&KubeCon上做演讲内容的分享,内容沿着Kubernetes的版本更迭,介绍如何一步步做到支持2000个节点的集群。Life of an API request V1.0V1.0 —100 Nodes 2015年7月kubernets发布了第一个版本 V1.0 只能支持100个Nodes(

2017-08-25 17:22:02 355

原创 Java的接口

Java 语言中的接口接口的概念接口可以理解为一种特殊的类,由全局常量和公共抽象方法组成;通俗理解: 类是一种具体的实现体,而接口定义了某一批类所需要遵守的规范,接口不关心这些类的内部数据,也不关心这些类里方法的实现细节,接口之规定这些类实现它的类里必须提供某些方法;也就是说,接口其实是一种规范,是用来约束类的。接口定义[修饰符] interface 接口名 [extends 父接口1,

2017-08-24 18:35:30 377

原创 Java的抽象类

语法定义 抽象类前面用 abstract 关键字来修饰应用场景 在某些情况下,父类只知道子类应该包含怎样的方法,但无法准确知道这些子类如何实现这些方法;从多个具有相同特征的类中抽象出一个类,以这个抽象类作为子类的模板,从而避免子类设计的随意性;作用(目的)限制或者规定子类必须实现某些方法,但不关注实现的细节;通俗的理解就是,抽象类不关注子类的实现,但是要约束子类必须有哪些特征;使用规则ab

2017-08-24 14:48:34 309

ckermit源码在redhat和ubuntu上测试过

再往上找了许多但是在我的redhat上都不能用 可能需要升级一些库文件 yum install 了glibc库 也只找到这个可以用的 现在分享出来供大家使用 压缩包里面已经附上了详细的说明文档

2014-10-11

多处理器编程的艺术中英文版两本

工业界称为多核的多处理器机器正迅速地渗入计算的各个领域。多处理器编程要求理解新型计算原理、算法及编程工具,至今很少有人能够精通这门编程艺术。 现今,大多数工程技术人员都是通过艰辛的反复实践、求助有经验的朋友来学习多处理器编程技巧。这本最新的权威著作致力于改变这种状况,作者全面阐述了多处理器编程的指导原则,介绍了编制高效的多处理器程序所必备的算法技术。了解本书所涵盖的多处理器编程关键问题将使在校学生以及相关技术人员受益匪浅。 循序渐进地讲述共享存储器多线程编程的基础知识。 详细解释当今多处理器硬件对并发程序设计的支持方式。 全面考察主流的并发数据结构及其关键设计要素。 从简单的锁机制到最新的事务内存系统,独立、完整地阐述了同步技术。

2014-09-29

精通linux设备驱动程序开发 pdf(中英文)

由宋宝华老师等人翻译的驱动经典书籍!

2014-09-05

linux 程序设计

很好的linux程序开发教程,linux程序设计的英文资料,循序渐进得看进去不久你就会柳暗花明又一村!!

2013-05-09

空空如也

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

TA关注的人

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