
Linux学习成长
局外人Lee
这个作者很懒,什么都没留下…
展开
-
Linux文件缓冲区
A)缓冲区机制根据应用程序对文件的访问方式,即是否存在缓冲区,对文件的访问可以分为带缓冲区的操作和非缓冲区的文件操作:a) 带缓冲区文件操作:高级标准文件I/O操作,将会在用户空间中自动为正在使用的文件开辟内存缓冲区。b) 非缓冲区文件操作:低级文件I/O操作,读写文件时,不会开辟对文件操作的缓冲区,直接通过系统调用对磁盘进行操作(读、写等),当然用于可以在自己的程序中为每个文件设定缓...转载 2018-07-13 13:37:47 · 696 阅读 · 0 评论 -
Linux终端个性化配置
使用linux系统将近一年了,今天在做项目时注意到命令终端的格式和颜色均是可以配置,故在网上学习了一番,并写下此博客作为学习笔记。简单分析终端颜色和格式的默认配置代码,然后展示了语法规则,最终给出了自己使用的配置方案。一般Linux中的配置文件大多以点开头,而且多以rc结尾。比如vim的配置文件 .vimrc,bash shell的配置文件.bashrc,等等。 像这样的配...原创 2018-08-25 23:58:11 · 8533 阅读 · 0 评论 -
用time(NULL)返回值手动计算当前时间 (要考虑时区)
/** 用time(NULL)返回值 计算当前时间* @author 李政 <1244109467@qq.com>*/#include<stdio.h>#include<time.h>#include<stdbool.h>int main(){原创 2018-08-26 21:25:25 · 6173 阅读 · 1 评论 -
linux下用time(NULL)函数和localtime()获取当前时间
time(); 函数函数原型: time_t time(time_t *timer)函数用途: 得到机器的日历时间或者设置日历时间头 文 件: time.h输入参数: timer=NULL时,得到机器日历时间, =时间数值时 用于设置日历时间;time_t是一个long类型 localtime();函数函数原型: struct t...原创 2018-08-26 21:14:53 · 21121 阅读 · 0 评论 -
linux动态获取终端窗口的大小方法(代码测试 )
通过函数signal();接受SIGWINCH信号 每次接收到信号,打印屏幕的大小/** 通过函数 ioctl(); 获得终端界面的参数* @author 李政 <1244109467@qq.com>*/#include <termios.h>#include <stdio.h>#include &原创 2018-08-26 15:26:41 · 1397 阅读 · 0 评论 -
linux获取终端窗口的大小方法(有代码测试)
一、获得终端窗口大小的方法1、在shell下可以直接用$LINES和$COLUMNS两个变量,$LINES是屏幕高,$COLUMNS是屏幕宽,单位都是字符数。2、大多数UNIX系统都提供了一种功能,可以对当前终端窗口的大小进行跟踪,在窗口大小发生变化时,使内核通知前台进程组。内核为每个终端和伪终端保存一个winsize结构://其中struct winsize位于termios.h头文...原创 2018-08-26 14:42:13 · 10501 阅读 · 0 评论 -
UNIX/Linux --进程间通信
一、基本概念 进程间通信(IPC):进程之间交换数据的过程叫进程间通信。 进程间通信的方式: 简单的进程间通信: 命令行:父进程通过exec函数创建子进程时可以附加一些数据。 环境变量:父进程通过exec函数创建子进程顺便传递一张环境变量表。 信号:父子进程之间可以根据进程号相互...原创 2018-07-26 19:23:22 · 304 阅读 · 1 评论 -
UNIX/Linux --信号捕获与处理
二、信号的捕获和处理 #include <signal.h> typedef void (*sighandler_t)(int); sighandler_t signal(int signum, sighandler_t handler); 功能:向内核注册一个信号处理函数 signum:信号的编号,可以直接写数字,也可以使用系统提供的...原创 2018-07-25 20:44:02 · 962 阅读 · 0 评论 -
UNIX/Linux --信号相关知识
一、基本的概念 1、中断 中断概念:中止、暂停当前正在执行的进程,转而去执行其它的任务。 硬中断:来自硬件设备的中断 软中断:来自其它程序的中断 2、信号 信号是一种软中断,可以把他看作是进程与进程、内核与进程通信的一种方式,它为进程的异步执行,提供了技术支持。 3、常见的信号 SIGINT(2) ...原创 2018-07-25 19:23:04 · 127 阅读 · 0 评论 -
僵尸进程解决办法(通过信号机制)
(1)通过信号机制 子进程退出时向父进程发送SIGCHILD信号,父进程处理SIGCHILD信号,在信号处理函数中调用wait进行处理僵尸进程。 测试程序如下所示:#include <stdio.h>#include <unistd.h>#include <errno.h>#include <stdlib.h>...原创 2018-07-24 20:32:46 · 666 阅读 · 0 评论 -
signal函数讲解
SIGABRT 进程停止运行 6SIGALRM 警告钟 SIGFPE 算述运算例外SIGHUP 系统挂断SIGILL 非法指令SIGINT 终端中断 2SIGKILL 停止进程(此信号不能被忽略或捕获)SIGPIPE ...原创 2018-07-24 19:24:55 · 409 阅读 · 0 评论 -
孤儿进程与僵尸进程的总结
1、前言 在学习进程管理的时候,大家经常会遇到僵尸进程,孤儿进程,今天就来总结一下。2、基本概念 我们知道在unix/linux中,正常情况下,子进程是通过父进程创建的,子进程在创建新的进程。子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束。 当一个 进程完成它的工作终止之后,它的父进程需要调用wait()或者waitpid()系统调...原创 2018-07-24 19:02:42 · 152 阅读 · 0 评论 -
计算机网络
四、计算机网络1、什么是计算机网络:把分布在不同地理位置的计算机与专门的网络设备用通信线路互相连成一个规模大、功能强的系统,从而使众多计算机可以方便地互相传递信息、共享软件、硬件、数据信息等。简单来说,计算机网络就是由通信线路互相连接的许多自主工作的计算机构成的的集合,它是计算机技术和通信技术相结合的产物。2、计算机网络的功能a、数据通信b、资源共享c、提高系统的可靠...原创 2018-09-12 00:00:11 · 1029 阅读 · 0 评论