linux
文章平均质量分 69
Aimer_N
这个作者很懒,什么都没留下…
展开
-
vim配置
map <F9> :call SaveInputData()<CR>func! SaveInputData() exec "tabnew" exec 'normal "+gP' exec "w! /tmp/input_data"endfunccolorscheme torte"colorscheme murphy"colorscheme desert "colorscheme desert "colorscheme elflord"colorscheme原创 2021-09-08 17:20:02 · 421 阅读 · 0 评论 -
IO进程笔记---Linux
标准IO 流和流指针 缓存区分类 标准io操作函数直接IO 文件指针偏移函数 文件IO stat目录文件操作函数 库进程 exec线程 同步 互斥 条件变量进程间通信 管道 信号共享内存 信号灯集 消息队列...原创 2021-09-01 10:16:20 · 181 阅读 · 0 评论 -
线程 同步 互斥 条件变量
【1】线程–》 进程是资源分配的最小单位,线程是cpu调度的最小单位概念:线程指的是共享相同地址空间的多个任务特点:由于进程的地址空间是私有的,因此在进程间上下文切换时,系统开销比较大为了提高系统的性能,许多操作系统规范里引入了轻量级进程的概念,也被称为线程在同一个进程中创建的线程共享该进程的地址空间Linux里同样用task_struct来描述一个线程。线程和进程都参与统一的调度优点:使用多线程的好处大大提高了任务切换的效率多线程通信简单,可以通过全局变量原创 2021-09-01 10:07:03 · 216 阅读 · 0 评论 -
标准IO 流和流指针 缓存区分类 标准io操作函数
【1】I/Oi:input 输入 从文件中输入内容到内存中o:output 输出 从内存中将内容写道文件中内存:掉电数据会丢失 RAM 实际磁盘内存(物理内存空间):掉电数据不会丢失 ROM linux中文件类型七种:bcd-lspb: 块设备c: 字符设备d:目录文件-:普通文件l:链接文件s:套接字文件p:管道文件【2】标准IO标准IO是指在C库中提供的一组专门用于输入输出的函数标准I/O由ANSI C标准定义不仅在UNIX系统,在很多操作系统上都实现了标准原创 2021-08-14 18:18:07 · 677 阅读 · 0 评论 -
Linux下的网络编程--笔记
交换机与路由器:交换机:用于局域网内网的数据转发路由器:用于连接局域网和外网IP地址:IP地址是Internet中主机的标识Internet中的主机要与别的机器通信必须具有一个IP地址IP地址为32位(IPv4)或者128位(IPv6)每个数据包都必须携带目的IP地址和源IP地址,路由器依靠此信息为数据包选择路由表示形式:常用点分形式,如202.38.64.10,最后都会转换为一个32位的无符号整数。 192.168.1.31 C类 , 点分十进制IPC0A8011F 4*8原创 2021-08-27 14:06:51 · 386 阅读 · 0 评论 -
共享内存 信号灯集 消息队列
【1】信号:概念:信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式信号可以直接进行用户空间进程和内核进程之间的交互,内核进程也可以利用它来通知用户空间进程发生了哪些系统事件。如果该进程当前并未处于执行态,则该信号就由内核保存起来,直到该进程恢复执行再传递给它;如果一个信号被进程设置为阻塞,则该信号的传递被延迟,直到其阻塞被取消时才被传递给进程。2.用户进程对信号的响应方式:1)忽略信号:对信号不做任何处理,但是有两个信号不能忽略:即SIGKILL及SIGSTOP。2原创 2021-08-23 08:47:04 · 342 阅读 · 0 评论 -
进程间通信 管道 信号
【1】条件变量一般与互斥锁搭配使用,可以实现同步机制int pthread_cond_init(pthread_cond_t *restrict cond,const pthread_condattr_t *restrict attr);功能:初始化条件变量参数:cond:是一个指向结构pthread_cond_t的指针restrict attr:是一个指向结构pthread_condattr_t的指针,一般设为NULL返回值:成功:0 失败:非0pthread_cond_t cond原创 2021-08-21 08:39:08 · 235 阅读 · 0 评论 -
进程 exec
【1】退出进程的函数exit/_exit#include <stdlib.h>void exit(int status);功能:退出进程参数:status:退出进程的状态返回值:无#include <unistd.h>void _exit(int status);功能:退出进程参数:status:退出进程的状态返回值:无exit退出进程会刷新缓存区,_exit退出进程不刷新缓存区【2】获取进程pid和父进程pid的函数getpid/getppi原创 2021-08-19 18:39:23 · 426 阅读 · 0 评论 -
目录文件操作函数 库(静态库动态库)
【1】目录文件操作函数opendir 、 closedir、readdirDIR *opendir(const char *name);功能:打开目录参数:name:目录名返回值:成功:目录流指针失败:NULL 更新errnoint closedir(DIR *dirp);功能:关闭目录参数:dirp:目录流指针返回值:成功:0失败:-1 更新errnostruct dirent *readdir(DIR *dirp);功能:读目录文件参数:dirp:目录流原创 2021-08-18 14:09:22 · 290 阅读 · 0 评论 -
Linux的一些小命令(非基础)
diff filename1 filename2用以比较两个文件是否相同gedit filename用gedit打开文件uname -r cat /proc/version查看内核版本cat /etc/issue查看Ubuntu版本原创 2021-08-17 16:24:42 · 137 阅读 · 0 评论 -
直接IO 文件指针偏移函数 文件IO stat
补充函数:1.fprintfint fprintf(FILE *stream, const char *format, ...);功能:以指定的格式向文件中输出sprintfint sprintf(char *str, const char *format, ...);功能:以指定的格式将内容存放到数组中 str3.time#include <time.h>time_t time(time_t *t);功能:获取系统从1970-01-01 00:00:00到当前时间的秒原创 2021-08-17 14:11:41 · 661 阅读 · 0 评论 -
LinuxC高级错题
答案为C 注意压缩后的名字写在前面答案为D static这个首先应该是把4-7位置0,也就是num & ~(15 << 4),然后置1010的时候应该是num | 10 << 4,注意不要顺手写成15。。。。错的都挺傻,注意要认真些。...原创 2021-08-03 16:49:55 · 134 阅读 · 0 评论 -
LinuxC高级_day5
LinuxC高级_day5【1】shell函数1. 函数的定义方式 1)函数名() { 命令 } 2)function 函数名() { }注意 : 1. function是函数的声明2. shell函数没有参数列表 参数列表是在调用函数的时候使用位置变量3. 大括号包裹起来 成对出现4. 函数内部可以有return语句 但是声明没有返回值5. 函数内部变量默认是全局变量 如果想要声明局部变量要使用loca原创 2021-08-02 19:18:07 · 144 阅读 · 0 评论 -
LinuxC高级_day4
LinuxC高级_day4【1】结构性语句if..then..fi1)基本结构 if 表达式 then 命令表 fi2)分层结构 if 表达式 then 命令表1 else 命令表2 fi3)嵌套结构 if 表达式 then 命令表 else if 表达式 then 命令表 fi fi原创 2021-08-01 09:32:33 · 154 阅读 · 0 评论 -
LinuxC高级_day3
LinuxC高级_day3【1】shell脚本本质: 命令的有序集合1)说明性语句 # 不会被解释执行2)功能性语句 shell命令 shell程序3)结构性语句 条件测试 多路分支 循环控制怎么创建一个shell脚本1) touch test.sh2) chmod 777 test.sh 给权限3)vim test.sh#! /bin/bash — 告诉系统我要使用bash解析4)./test.sh 执行脚本执行脚本的方式./脚本名 文件执行必须需要可执行权限ba原创 2021-07-29 18:52:40 · 158 阅读 · 0 评论 -
LinuxC高级_day2
LinuxC高级_day2main.c文件书写#include <stdio.h> --系统给的也可以用"stdio.h"#include "../student.h" – 自定义指针的类型 和 指针指向的类型sizeof(*cls)-Y sizeof(cls)-X sizeof(class_t)-Y1)先++再判满2)初始人数-1 表示班级是空3)班级满的时候加上的人数要减回来4)getchar()吃掉字符while(getchar() != '\原创 2021-07-29 10:17:27 · 460 阅读 · 0 评论 -
07-12 linux文件类型 - cd的一些用法
linux特点:免费,开源,可裁剪,移植性好和windows的区别:开源,安装软件方式Windows为按转包,linux为apt-get或直接下载源码进行编译linux的文件系统标准:FHS标准,是以倒置树系统来原创 2021-07-13 09:19:00 · 141 阅读 · 0 评论 -
LinuxC高级_day1
LinuxC高级_day1【1】 什么是嵌入式?以计算机应用为中心,软硬件可裁剪的专用计算机系统(通用计算机系统windows 系统OS),对功耗体积成本都有特定的要求。软件可裁剪:网络方面驱动程序可以删除硬件可裁剪: 画PCB删掉 网口范围: 小到周边大到航天专用计算机系统: 京东仓库-智能分拣 北京无人公交车 上海送餐机器人小爱同学 小度小度操作系统 – 内核windows – NT内核Ubuntu – linuxmacOS – UnixAndroid –原创 2021-07-28 09:08:50 · 645 阅读 · 0 评论 -
07-15 shell命令 man ps linux各个文件夹的含义
man [name] 获取联机帮助NAME:命令(函数)的名称SYNOPSIS:命令的语法格式DESCRIPTION:命令的一般描述及用途OPTIONS:描述命令所有的参数或选项SEE ALSO:列出联机帮助页中与该命令直接相关或功能接近的其他命令BUGS:解释命令或其输出中存在的任何已知的相关问题和缺陷EXAMPLES:普通的用法示例AUTHORS:联机帮助页以及命令的作者ehcoehco “string a”加上双引号,双引号内的内容原样输出去掉双引号后只保留一个空格原创 2021-07-15 16:29:22 · 401 阅读 · 0 评论 -
07-16 shell编程,基本语句
基本过程创建shell文件后缀为.sh赋予shell文件执行权限执行shell文件两种方式./文件名bash 文件名创建第一行为#!/bin/bash,换行切回命令行模式用o换行shell变量shell允许用户简历变量存储数据,但不支持数据类型,将任何赋给变量的值都解释为一串字符shell变量赋值时=前后不允许有空格ehco用于打印$用于取值命令置换时的命令用``括起来(esc下面的小点)...原创 2021-07-16 09:27:03 · 150 阅读 · 0 评论