Linux
文章平均质量分 74
Mr_sunp
一亩地,三分头,老婆孩子热炕头...
展开
-
线程绑核的简单操作
为了加快程序的运行速度和充分利用CPU资源,我们可以人为将不同线程绑定在不同的cup上,例如有两个线程A,B,其中A已经在CPU0上运行,并且CPU0上还有其他的任务,那么我们可以将线程B绑到CPU1上,这样就可以减轻CPU0的负担,从而充分利用多核CPU。说的明白点,原来是一个CPU作两件事,现在两个CPU同时做两个时,使效率更高。话不多说,直接上代码:#define _GNU_SOUR原创 2017-08-10 09:31:03 · 3825 阅读 · 0 评论 -
linux下将bmp图片的RGB数值打印到文件中,并另存。
前面我们可以获取到bmp文件头的信息,那么这里我们的思路就是根据获取到的文件头信息,将文件头中的各种变量赋值即可;例如我们获取时,得到height=600,那么我们在设置时,可以人为将其设置成height=600条件:1.用windows画图工具另存的一张BMP格式图片;2.linux 或 ubuntu下vim编译器;#include #include #inclu原创 2017-09-11 17:41:29 · 1514 阅读 · 0 评论 -
linux下读取bmp图片文件头
建议先了解下BMP图片格式.条件:1.用windows画图工具另存的一张BMP格式图片;2.linux或ubuntu下vim编译器#include #include #include #include #pragma pack(2) //对齐using namespace std; typedef struct BITMAPFILEHEADER {原创 2017-09-11 17:34:28 · 3726 阅读 · 0 评论 -
Ubuntu下配置IP地址的方法
配置IP地址主要有两种方法。1>通过命令来实现:sudo ifconfig eth0 IP地址 netmask 子网掩码------配置IP地 sudo route add default gw 网关------------添加默认路由vim /etc/resolv.conf 配置文件 添加nameserver DNS----配置DNSsudo /etc/init.d/netw原创 2017-09-11 15:31:36 · 27778 阅读 · 0 评论 -
直白解读网络编程第二节_进程(入门)
啊原创 2017-08-24 11:37:52 · 285 阅读 · 0 评论 -
直白解读网络编程第一节_文件I/O(入门)
(一) 库函数中针对文件操作的实现fopen() :打开fclose() :关闭fread() :读fwrite() :写fscanf() :输入fprintf() :输出fgets(); fputs();gets() puts():针对字符串的读写操作fgetc();fputc(); :针对字符的读写操作----------------------------原创 2017-08-23 11:34:04 · 389 阅读 · 0 评论 -
直白解读linux下pthread的简单操作
线程:他是轻量级的进程,他有系统的库函数提供,linux中的man 2中的函数,属于系统调用;线程的创建是在进程之中,在linux中用task_struct来描述一个线程,(进程和线程都参与统一的调度),一个进程可以有多个线程,他们可以共享相同地址空间的多个任务。一个进程中的多个线程共享以下资源:1:代码段/指令2:静态数据(全局变量,静态变量)3:进程中打开的文件描述符4:信原创 2017-08-22 14:51:08 · 678 阅读 · 0 评论 -
linux下的静态库和动态库
意义:为了避免代码的重写率,我们可以将已经写好的代码形成一个库,当我们再次用到的时候可以直接调用,而不是重新去写,即“站在巨人的肩膀上”。linux下有两种库:一、静态库:准备工作://swap.cint swap(int *x,int *y){ int temp; temp = *x; *x = *y; *y = temp; retur原创 2017-09-13 11:15:50 · 326 阅读 · 0 评论 -
直白解读linux下V4L2拍照
声明:环境:linux或ubunt下编辑器:vim编译工具:gcc设备:USB接口的摄像头难点理解:1.对于缓冲帧的解释:假设我们申请5个缓冲帧,那么这5个缓冲帧就相当于5个盘子,操作系统在内存中开辟5个缓存区队列来存放这5个盘子,当相机拍照后将数据放入盘子中,我们通过VIDIOC_DQBUF取数据可以理解为将盘子取出来,然后对数据操作,操作完成之后,要通过VIDIOC_Q原创 2017-08-22 11:53:00 · 3326 阅读 · 1 评论 -
关于mutex与cond的用法
锁的概念:在CPU运行过程中,不会单一的取执行一个事件,而是通过线程,或者进程来进行执行,这样CPU的利用率才得以提高,但是在不同的线程之间,由于互相独立,那么对于资源的访问来说,就可能同时进行,假如A进程获取一个临时变量temp的值,但是在获取的同时,B进程却将temp的值改变了,这时就会出现资源访问的冲突,为了更好的解决这个问题,就有了锁的概念,说的明白些,他就像现实中的锁一样,我们程序中所有原创 2017-08-08 11:12:06 · 3372 阅读 · 0 评论 -
assert()函数用法总结
程序一般分为Debug版本和Release版本,Debug版本用于内部调试,Release版本发行给用户使用。 断言assert是仅在Debug版本起作用的宏,它用于检查“不应该”发生的情况。以下是一个内存复制程序,在运行过程中,如果assert的参数为假,那么程序就会中止(一般地还会出现提示对话,说明在什么地方引发了assert)。 assert不是一个仓促拼凑起来的宏,为了翻译 2017-08-09 10:09:00 · 1332 阅读 · 0 评论 -
malloc();calloc();realloc()
1.malloc2.calloc3.ralloc4.new原创 2017-08-11 11:57:10 · 416 阅读 · 0 评论