
Linux编程
vincent-fan
Starry starry night
展开
-
[linux基础] crontab
格式:* * * * * command分 时 日 月 周 命令 第1列表示分钟1~59 (每分钟用*或者 */1表示,*/5 代表每5分钟)第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要运行的命令 使用绝对路径 cron来源于希腊单词chronos(意为“时间”转载 2013-06-21 09:24:27 · 297 阅读 · 0 评论 -
[linux基础] 通过进程id获取运行程序的程序名称
/*********************************************************经修改可用作 传入 进程id参数,判断是不是正在运行********************************************************/#include #include #define CFGMNG_TASK_NAME_LEN 256转载 2013-12-06 11:24:02 · 598 阅读 · 0 评论 -
[linux基础] 标准IO
简介l Unix/Linx系统经常用的文件I/O函数有,打开文件open,读文件read, 写文件write等。l 这些 函数经常被称为不带缓冲的I/O,每个read和write都调用内核中的一个系统调用。文件描述符l 对于内核而言,所有打开的文件都通过文件描述符引用。l 文件描述符是一个非负整数l 当打开一个列有文件或创建新文件时,内核向进程返回一个文原创 2013-12-29 13:12:02 · 319 阅读 · 0 评论 -
[linux基础] crontab 使用
crontab命令常见于Unix和Linux的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。通常,crontab储存的指令被守护进程激活。crond 常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。一、安装[root@CentOS ~]# yum转载 2013-12-21 23:04:57 · 261 阅读 · 0 评论 -
[linux 基础] UNIX简史
UNIX的诞生 1965年麻省理工学院通用电气公司贝尔实验室(后来加入)开发Mulitcs操作系统大访问团体,同时访问,计算,存储 1969年研究组认为需要更长时间贝尔实验室先退出Multics随之终止 贝原创 2014-01-02 23:28:06 · 379 阅读 · 0 评论 -
[linux基础] 信号
信号信号概念 信号是软件中断,信号提供一种处理异步事件的方法 那些建立在早期机制上的信号叫做"不可靠信号",信号值 小于SIGRTMIN(Red hat 7.2中,SIGRTMIN=32,SIGRTMAX=63)的信号都是不可靠信号 进程每次处理信号后,就将对信号的响应设置为默认动作,在某些情况下,将导致对信号的错误处理;因此,用户如果不希望这样的操作,原创 2013-12-25 11:10:11 · 297 阅读 · 0 评论 -
[linux基础] 进程管理
进程管理进程和程序l 进程就是运行中的程序。一个运行着的程序,可能有多个进程。进程在操作系统中执行特定的任务。l 程序是存储在磁盘上包含可执行机器指令和数据的静态实体。进程或者任务是处于活动状态的计算机程序。进程分类l 进程一般分为交互进程、批处理进程和守护进程三类。l 守护进程总是活跃的,一般是后台运行,守护进程一般是由系统在开机时通过脚本自动激活启动或超级管理用户roo原创 2013-12-27 13:41:19 · 275 阅读 · 0 评论 -
[linux基础] 进程间通信(IPC)
进程间通信(IPC)进程间通信(IPC)之前进程间交换信息的方法只能是由fork或exec传送文件IPC—进程 间通信管道消息队列信号量共享存储套接字........管道管道是Unix系统IPC最古老的形式历史上它是半双工的(数据只能在一个方向流动),现在很多系统都提供全双工管道有名管道mkfifo函数创建有名管道文件序号 进原创 2013-12-26 10:06:04 · 358 阅读 · 0 评论 -
[linux基础] 线程
POSIX线程什么是线程l 一个程序中的多个执行路线就叫线程,是一个进程内部的一个控制序列,是进程的一个子任务l 与进程的区别l 进程拥有自己的变量和自己的PID,时间高度独立,执行独立l 线程拥有自己的栈(因此也有自己的局部变量),但与它的创建者共享全局变量、文件描述符、信号处理函数和当前目录状态。l 所有的进程都至少有一个执行线程 多原创 2013-12-27 10:01:43 · 262 阅读 · 0 评论 -
[linux基础] makefile样例
1.firstLIBS= -L. ./libmyhello.aOBJS =hello.o libmyhello.a main.oCC=gccall:hello $(OBJS)hello:$(OBJS) $(CC) -o hello $(OBJS) $(LIBS)hello.o:hello.c $(CC) -wall -c hello.原创 2013-06-29 18:03:21 · 358 阅读 · 0 评论 -
[linux高级] 线程池
[python] view plaincopy#线程池配置文件filename:[thread_pool_config.conf] 其中‘#’为注释 不准以=开始 #线程池最小线程数 MIN_THREAD_NUM = 3 #线程池最大线程数 MAX_THREAD_NUM =50 #线程池默认线程数 DEF_THRE转载 2013-12-01 13:24:27 · 253 阅读 · 0 评论 -
[linux基础]高级I/O 之 epoll
epoll是Linux内核为处理大批量句柄而作了改进的poll,是Linux下多路复用IO接口select/poll的增强版本,它能显著减少程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。epoll是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率,因为它会复用文件描述符集合来传递结果而不用迫使开发转载 2013-06-20 23:52:08 · 320 阅读 · 0 评论 -
[Linux基础] 进程状态及相关信息
linux上进程有5种状态: 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生) 4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放) 5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIG转载 2013-06-20 18:30:31 · 264 阅读 · 0 评论 -
[linux基础] 物理内存管理4096
物理内存管理(页管理)Linux内核管理物理内存是通过分页机制实现的,它将整个内存划分成无数4k(在i386体系结构中)大小页,从而分配和回收内存的基本单位便是内存页了。利用分页管理有助于灵活分配内存地址,因为分配时不必要求必须有大块的连续内存,系统可以东一页、西一页的凑出所需要的内存供进程使用。虽然如此,但是实际上系统使用内存还是倾向于分配连续的内存块,因为分配连续内原创 2013-06-29 18:32:20 · 447 阅读 · 0 评论 -
[linux基础] 内存的管理内存的分配方式
从malloc/free到new/deleteC++是强类型语言,new/delete的主要成果也就是加强了类型观念,减少了强制类型转换的需求。但是从内存管理角度看,这个变革并没有多少的突破性从new/delete到内存配置器(allocator)allocator的引入也是C++内存管理一个突破。留意一下你就可以发现,整个STL所有组件的内存均从allocator分配。也就是说,ST原创 2013-06-29 18:36:04 · 376 阅读 · 0 评论 -
[linux基础] 系统底层的内存映射 mmap&mumma
系统底层的内存映射( mmap/munmap)#include void *mmap(void *start 首地址, size_t length大小, int prot选项,可读可写可执行, int flags, int fd文件描述符, off_t offset文件位置);int munmap(void *start, size_t length);参数start:指向欲映原创 2013-06-29 18:34:32 · 357 阅读 · 0 评论 -
[linux基础] 查看代码区进程号
查看代码区,进程号~>cd /procproc>lsproc>ps -ef | grep a.outsoft01 23642 23614 99 19:38 pts/4 00:01:45 ./a.outsoft01 23668 23648 0 19:39 pts/5 00:00:00 grep a.outproc>cd 2364223642>ls原创 2013-06-29 18:40:09 · 541 阅读 · 0 评论 -
[linux 基础] 线程之间的通信
线程之间的通信:1、 互斥量用的api函数有:pthread_mutex_init、pthread_mutex_lock、pthread_mutex_unlock、pthread_mutex_trylock示例:[cpp] view plaincopy//thread_mutex.cpp #include转载 2013-07-29 15:29:06 · 299 阅读 · 0 评论 -
[linux基础] 网络编程中的IP地址
在网络系统内核中 IP地址是32位,由4组十进制数组成,每组数值的范围为0~255,而平时我们使用的IP地址是16位字符串形式的IP地址,例如:“192.168.1.11”。在程序设计中经常要用到字符串表达方式的IP地址和二进制的IP地址之间的转换。 面对网络编程中众多的地址函数,你hold住了么,tiger哥没hold住,所以就写了此篇文章,希望大家能hold住网络编程。转载 2013-10-12 17:31:15 · 372 阅读 · 0 评论 -
[linux基础] 通过程序名字判断程序是否在运行
//守护进程,守护AlarmInterface进程#include #include #include #include #include #include #include //程序名字#define NAME "AlarmInterface"//要运行的程序#define RUN_NAME "DuiJiang &"#define READ_BUF_SIZE 1024转载 2013-12-06 11:16:32 · 458 阅读 · 0 评论