dev

Linux 启动管理

妖精的绣舞 提交于 2020-02-14 20:47:40
一,CentOS6.x 启动管理   1,系统运行级别     1,运行级别            2,运行级别命令       runlevel         查看运行级别命令       init 运行级别         改变运行级别命令     3,系统默认运行级别       vim /etc/inittab         系统开机后直接进入哪个运行级别   2,系统启动过程     initramfs 内存文件系统     CentOS 6.x中使用initramfs内存文件系统,取代了CentOS 5.x中的initrd RAM Disk,他们的作用类似,可以通过启动引导程序加载到内存中,然后加载启动过程中所需要的内核模块,比如USB,SATA,SCSI硬盘的驱动和LVM,RAID文件系统的驱动     调用/etc/init/rcS.conf 配置文件     主要功能是两个:       1,先调用/etc/rc.d/rc.sysinit,然后由/etc/rc.d/rc.sysinit 配置文件进行Linux系统初始化       2,然后再调用/etc/inittab,然后由/etc/inittab配置文件确定系统的默认运行级别     调用/etc/rc.d/rc文件     运行级别参数传入/etc/rc.d/rc这个脚本之后

git删除历史commit

不想你离开。 提交于 2020-02-14 20:18:06
解决方案 克隆一个项目 git clone ssh://git@gitlab.demo.com/group/demo.git 切换目录 cd demo 添加所需要文件 git add -A 添加commit信息 git commit -m “clean project log” 删除master分支 git branch -D master tmp更名为master git branch -m master 提交分支 git push -f origin master 第一次使用 No tracked branch configured for branch dev or the branch doesn’t exist. To make your branch track a remote branch call, for example, git branch --set-upstream-to=origin/dev dev 方案 git branch --set-upstream-to=origin/dev dev 克隆一个项目 git clone ssh://git@gitlab.demo.com/group/demo.git 切换目录 cd demo 添加所需要文件 git add -A 添加commit信息 git commit -m “clean project

DPDK l2fwd源码学习

六月ゝ 毕业季﹏ 提交于 2020-02-14 18:35:41
1. 主函数分析 1 /* 命令行解析 2 * 参数输入 ./l2fwd -c 0x3 -n 4 -- -p 3 -q 1 3 * -c 为十六进制的分配的逻辑内核数量 4 * -n 为十进制的内存通道数量,EAL参数和程序参数用--分开 5 * -q 为分配给每个核心的收发队列数量(端口数量) 6 * -p为十六进制的分配的端口数 7 * -t 为可选默认10s打印时间间隔参数 8 */ 9 int main(int argc, char **argv) 10 { 11 struct lcore_queue_conf *qconf; 12 int ret; 13 uint16_t nb_ports; 14 uint16_t nb_ports_available = 0; 15 uint16_t portid, last_port; 16 unsigned lcore_id, rx_lcore_id; 17 unsigned nb_ports_in_mask = 0; 18 unsigned int nb_lcores = 0; 19 unsigned int nb_mbufs; 20 21 /* init EAL */ 22 /* 初始化EAL参数,并解析参数,系统函数getopt以及getopt_long, 23 * 这些处理命令行参数的函数,处理到“--”时就会停止,分割参

LVM技术

心已入冬 提交于 2020-02-14 01:49:10
流程: 1. 准备物理设备(硬盘分区) 2.创建pv pvcreate /dev/sdb1 /dev/sdb2 3. 创建vg vgcreate [VG名] /dev/sdb1 /dev/sdb2 4.创建lv lvcreate -L 2g -n [LV名字] [VG名字] 5.文件系统格式化 mkfs.ext4 /dev/[VG名]/[LV名] 6.挂载使用即可 mount /dev/[VG名]/[LV名] [挂载目录] 来源: https://www.cnblogs.com/heyaoxin666/p/12306112.html

Linux 任务计划,周期性任务执行

给你一囗甜甜゛ 提交于 2020-02-13 23:42:59
未来的某个时间点执行一次某任务的命令: at , batch 命令执行的结果,会发送到任务发起者的邮箱 周期性运行某任务: crontab 命令执行的结果,会发送到任务发起者的邮箱 本地邮件服务 发邮件的协议:smtp(simple mail transmission protocol) 收邮件的协议: pop3(post office protocol) imap4(Internet mail access protocol) 查看本地邮件服务是否启动: netstat -tnlp 如果25号端口处于监听状态,说明本地邮件服务是启动的。 # netstat -tnlp Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 4313/master tcp6 0 0 ::1:25 :::* LISTEN 4313/master mail命令 用来收发邮件的,centos6用mail;centos7用mailx命令 MUA:Mail user agent(用户收发邮件的工具程序) outlook就是mua。用网页收发邮件也是mua。 发邮件(邮件正文是交互式输入):mail -s 'subject hi' us1[

git入门五(分支合并冲突和衍合)

廉价感情. 提交于 2020-02-13 18:43:24
分支合并冲突的处理 合并分支的冲突时在不同的分支中修改了同一个文件的同一部分,程序无法把两份有差异的文件合并,这时候需要人为的干预解决冲突。当前处于master 分支,当dev 分支和master 分支对相当部分test1.txt 都做了修改,当合并dev 分支的时候,合并会出现分支冲突如下:查询当前工作区的状态可以显示那些文件发生合并冲突,任何包含未解决冲突的文件都会以未合并(ummerged)的状态列出,git 会加入标准冲突解决标记,可以通过手工定位来解决这些冲突。可以看大 =======隔开以上部分就是当前活动分支,也是合并的基准分支(head 指向的master分支),======分隔符以下的是dev分支中的内容。解决冲突的办法无非是二者选其一或者由你亲自整合到一起。比如你可以两部分内容合并成 一部分内容。 $ git branch dev * master testing $ git merge dev Auto-merging test1.txt CONFLICT (content): Merge conflict in test1.txt Automatic merge failed; fix conflicts and then commit the result. $ git status # On branch master # Unmerged paths:

git查日志命令

浪子不回头ぞ 提交于 2020-02-13 14:18:34
git常用命令 1.创建仓库 a.当前目录创建仓库,即把当前目录的文件开始用git管理,该命令会在当前目录下创建一个.git目录 git init b.指定目录创建仓库    git init 目录名 2.设置配置 a.全局配置 git config --global user.name woniu git config --global user.email woniu@163.com b.设置本地仓库配置 git config --local user.name woniu git config --local user.email woniu@163.com c.查看配置信息 git config --global --list 3.工作区文件新增到暂存区 a.提交指定文件      git add a.cpp b.提交当前目录所有文件      git add . c.把提交过暂存区,已经发生改变的文件再次提交到暂存区      git add -u 4.暂存区文件提交到版本库 git commit -m "初始版本" 5.查看git提交日志 a.全部日志 git log b.简化日志 git log —oneline 官网是git log —pretty=oneline 可以试下 git log —stat 简略日志 c.查看前5个日志 git log -n5 -

CentOS使用yum安装drbd

浪子不回头ぞ 提交于 2020-02-13 01:03:57
CentOS 6.x系统要升级到最新的内核才支持 CentOS 6.x rpm -ivh http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm yum -y install drbd83-utils kmod-drbd83 CentOS 7.x rpm -ivh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm yum install -y drbd84-utils kmod-drbd84 加载模块: modprobe drbdecho drbd >/etc/modules-load.d/drbd.conf 两台机器时间同步,并修改/etc/hosts文件 10.205.22.185 node1 10.205.22.187 node2 两台主机分别修改主机名 hostname node1 hostname node2 修改配置文件(两台机器配置一样) /etc/drbd.d/global_common.conf配置文件 global { usage-count yes; #是否参加DRBD使用者统计,默认是参加 } common { protocol C; #使用DRBD的第三种同步协议,表示收到远程主机的写入确认后认为写入完成

Linux驱动开发之中断编程

时光毁灭记忆、已成空白 提交于 2020-02-12 22:56:05
2020-02-12 关键字: 在 Linux 内核当中,处理一个中断事件需要知道两件事: 1、中断号码 2、中断处理函数 而在 ARM 中处理中断则需要知道以下四件事: 1、中断源号码 2、初始化中断控制器 3、初始化 CPU 中断功能 4、中断处理函数 获取中断号有以下两种方式: 1、宏定义 通过查询芯片手册上记载的相应中断编号,再经过系统预置的 IRQ_EINT(编号) 来得到中断号。 2、设备树文件 首先查询相应设备树头文件 dtsi,找到我们要用的那个中断组的描述,形如下所示: gpx1: gpx1{   gpio-controller;   #gpio-cells = <2>;   interrupt-controller;   interrupt-parent = <&gic>;   interrupts = <0 24 0>, <0 25 0>, <0 26 0>, <0 27 0>, <0 28 0>;   #interrupt-cells = <2> }; 上面的 interrupt-controller; 表示以下描述的是和中断控制器相关的信息。 interrupts 描述的是 gpx1 这个节点所要控制或者说使用的中断号列表。 #interrupt-cells 描述的是长度,记住是长度就好了。 其次再在我们自己的 dts 里添加上我们想要的中断信息节点:

基于halcon深度学习之公共场合检测是否戴口罩

你。 提交于 2020-02-12 20:44:40
2月10号从家赶往深圳的公司上班,被告知延长开工日期,很多在深圳的小伙伴也都是临近公司开工日期才得知又要延长的通知,不得不说这次疫情带来的影响非常大。回家的地铁上打开csdnAPP上的推文看到一标题为“用xxx实现检测是否戴口罩”的文章,顿时想法油然而生,我也要实现这么一功能。 其实通过视觉软件实现这一功能的方法有很多种。我这里稍微懒一点就使用halcon里面的深度学习框架来实现这一功能。 1、准备数据集 由于数据来源有限,我只好从百度图库里面找这么些图片。分别选好40张“戴了口罩”的图片和40张“没有戴口罩”的图片(想要识别效果更加精准可以选用更多不同人物、角度以及场景的图片进行训练) 戴了口罩的数据集: 没戴口罩的数据集: 2、halcon源代码 (这里的代码从我一个demo里面拷过来的没做过多修改) : read_dl_classifier ('pretrained_dl_classifier_compact.hdl', DLClassifierHandle) get_dl_classifier_param (DLClassifierHandle, 'image_width', DlImageWidth) get_dl_classifier_param (DLClassifierHandle, 'image_height', DlImageHeight) get_dl