- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 Linux 之网络编程基础 一
OSI 模型应用层: 提供应用软件接口,用以设置与另一个软件通信表示层: 设备固有数据格式和网络标准数据格式化会话层: 负责在数据传输中设置和维护计算机网络中两个计算机之间的通讯连接传输层: 管理两个节点之间的数据传输,负责可靠传输(确保数据被可靠的传送到目的地址)网络层: 地址管理与路由选择 作用:在网络相互连接的环境中,将数据从发送端主机发送到接收端主机数据链路层: 互联设备之间传送和识别数据帧物理层: 以0、1 代表电压的高低,界定连接器和网络规格。TCP/IP 模型
2020-08-21 16:25:14 136
原创 Linux之 IO编程四
1. 什么是库1. 库是一种可执行的二进制形式文件2. 需要被操作系统载入内存运行3. 相比于可执行程序,它不可以直接运行4. window 和 linux 都有自己的库,但是不兼容5. 库有两种,1. 静态库 2. 共享库(又叫动态库)了解: 静态库 动态库window *.lib *.dlllinux *.a *.so$ gcc -E a.c -o a.i // 预编译 (预处理)$ gcc -s a.i -o a.s // 编译 C语法装换为
2020-08-13 19:43:27 126
原创 Linux之 IO编程三
一.文件 IO 介绍不带缓冲区直接调用内核(linux)提供的函数接口通过文件描述符来访问文件文件IO常见的函数open / closeread / writelseek注:这些函数都是由 linux内核提供的都在 man手册的卷2中常见函数:open $ man 2 open #include <sys/types.h> #include <sys/stat.h> #include <f
2020-08-11 14:59:10 126
原创 Linux之 IO编程二
一.缓冲区分类1. 全缓冲 通过fopen函数打开的流指针,这个流指针的缓冲区大小是 4*1024 4Kbyte 缓冲区刷新的条件有: 1. 缓存区满 2. 强制刷新 --> fflush(1) fflush #include <stdio.h> int fflush(FILE *stream); *************************/ * 功能: 刷新缓存区 * 参数:@stream 流指针 * 返回值: 成功返回 0, *
2020-08-10 20:35:28 107
原创 Linux之 IO编程 一
1.什么是IO?I: input 输入o: output 输出I/O操作其实就是对文件的读写2.I/O分类(1)标准IO POSIX 标准:规定 函数功能,返回值,函数的参数 POSIX 标准 统一了函数的接口 本质: 是对系统调用的再次封装 作用: 1. 增强了代码的可移植性,复用性 2. 提高了效率。 标准IO增加了一个【相当重要:缓冲机制】 标准IO printf scanf(2)文件IO(系统调用) 1. 不带缓冲区 2. 操作系统直接提供
2020-08-07 19:36:57 129
原创 Linux--四种I/O模型
IO 模型:在Linux下主要有四种I/O模型:1、阻塞IO套接字建立以后所处的模式就是阻塞IO模式,它是最常用最简单、最常用,但是效率最低的模式。阻塞读操作:read recv ; recvfrom写操作:write send其他操作:accept connect2、非阻塞IO、可以防止进程阻塞在IO操作上需要轮询,它是不普遍使用的一种模式,当应用程序使用非阻塞模式的套接字时,它需要使用一个循环不停的测试套接字是否可读(称为polling):应用程序不停的polling 内核来检查IO
2020-08-05 19:19:12 489
原创 Linux及C语言基础四 磁盘相关命令
【1】磁盘相关命令(1)、查看磁盘命令 sudo fdisk -l /dev/sda Ubuntu系统的盘 /dev/sda1 /dev/sda2 (2)、查看分区使用情况 sudo df -h (3)、挂载命令 sudo mount /dev/sdbl ~/udisk 将U盘挂载到 /home/linux/udisk下,以后再访问udisk,就相当于访问的是U盘 udisk被挂载入U盘之后,原来的文件不显示。取消挂在之后重新显示。 Ub
2020-08-04 19:11:52 209
原创 Linux及C语言基础三 Linux常用命令二
【1】通配符 1)*通配符匹配所有的内容ls *.c 表示查看当前目录下的所有的.c文件2)?通配符匹配单个的字符eg:touch name.c nama.c namc.cls nam?.c结果:nama.c namc.c name.c3)[字符1字符2字符3] 通配符 匹配[]中任意的一个字符ls nam[ac].c 结果: nama.c name.c4)[起始字符-结束字符] 按照区间来匹配 ls [0-9].c ls nam[a-z].c 结果:
2020-08-04 14:22:23 147
原创 Linux及C语言基础二 Linux 常用命令一
linux 常用命令一:【1】mkdir 命令功能:创建一个新的目录mkdir 目录名linux@ubuntu:~$ lsDC20031 Documents examples.desktop Music Public VideosDesktop Downloads man.txt Pictures Templates如果dir不存在,创建的时候需要加-p参数linux@ubuntu:~$ mkdir -p dir/dir1linux@ubu
2020-07-30 11:47:45 159
原创 Linux及C语言基础一 Linux简介
Linux系统及c高级一linux系统的由来 在1965年后,贝尔实验室Bell、麻省理工学院MIT、奇异公司GE,发起了Multics计划,让主机可以达成300个终端。后来因为资金不足、计划进度等问题,就退出研究了。贝尔研究室退出了Multics计划,但是原计划的人员中有一位Ken Thompson(汤姆森。肯),1969年8月,这哥们趁老婆不在家自己用4周时间写了一个核心程序,汤姆森将Multics计划话中的系统简化了,最后叫Unics(还不叫Unix)1973年:Unix正式诞生
2020-07-24 19:08:00 325
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人