
linux应用编程和网络编程
我这个人很任性的
这个作者很懒,什么都没留下…
展开
-
linux中的文件IO
1.应用编程框架介绍 1.1什么是应用编程 (1)典型的嵌入式产品就是基于嵌入式linux操作系统来工作的。典型的嵌入式产品的研发过程就是;第一步让linux系统在硬件上跑起来(系统移植工作),第二步基于linux系统来开发应用程序实现产品功能。 (2)基于linux去做应用编程,其实就是通过调用linux的系统API来实现应用需要完成的任务。 1.2什么是文件IO (1)IO就是input/o...原创 2019-08-19 19:42:18 · 275 阅读 · 0 评论 -
soekct实践编程
1.IP地址格式转换函数 int inet_pton(int af, const char *src, void *dst); IP地址在“点分十进制”和“二进制整数”之间转换 #include <stdio.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/ine...原创 2019-08-26 11:11:33 · 247 阅读 · 0 评论 -
Linux的SOCKET编程
1. 网络中进程之间如何通信 进程通信的概念最初来源于单机系统。由于每个进程都在自己的地址范围内运行,为保证两个相互通信的进程之间既互不干扰又协调一致工作,操作系统为进程通信提供了相应设施,如 UNIX BSD有:管道(pipe)、命名管道(named pipe)软中断信号(signal) UNIX system V有:消息(message)、共享存储区(shared mem...原创 2019-08-26 10:39:19 · 752 阅读 · 0 评论 -
linux中的信号
1.什么是信号 1.1 信号是内容受限的一种异步通信机制 (1)信号的目的:用来通信 (2)信号是异步的(对比硬件中断) (3)信号本质上是int型数字编号(事先定义好的) 1.2 信号由谁发出 (1)用户在终端按下按键 (2)硬件异常后由操作系统内核发出信号 (3)用户使用kill命令向其他进程发出信号 (4)某种软件条件满足后也会发出信号,如alarm闹钟时间到会产生SIGALARM信号,向一...原创 2019-08-22 09:20:38 · 176 阅读 · 0 评论 -
linux进程全解
2.进程环境 2.2 进程运行的虚拟地址空间 (1)操作系统中每个进程在独立地址空间中运行 (2)每个进程的逻辑地址空间均为4GB(32位系统) (3)0-1G为OS,1-4G为应用 (4)虚拟地址到物理地址空间的映射 (5)意义。进程隔离,提供多进程同时运行 3.进程的正式引入 3.1 什么是进程 (1)动态过程而不是静态实物 (2)进程就是程序的一次运行过程,一个静态的可执行程序a.out...原创 2019-08-21 23:39:50 · 242 阅读 · 0 评论 -
TCP协议的三次握手和四次断开
通过前两次对话证明了乙能够听懂甲说的话,并且能做出正确的应答 通过第二次和第三次的对话证明了甲能够听懂乙说的话,并且能做出正确的应答 为了保证服务端能收接受到客户端的信息并能做出正确的应答而进行前两次(第一次和第二次)握手 为了保证客户端能够接收到服务端的信息并能做出正确的应答而进行后两次(第二次和第三次)握手。 1.TCP的三次握手与四次挥手 1、建...原创 2019-08-25 23:00:00 · 231 阅读 · 0 评论 -
TCP协议
一、TCP 协议的作用 TCP 是以太网协议和 IP 协议的上层协议,也是应用层协议的下层协议。 最底层的以太网协议(Ethernet)规定了电子信号如何组成数据包(packet),解决了子网内部的点对点通信。 以太网协议解决了局域网的点对点通信 但是,以太网协议不能解决多个局域网如何互通,这由 IP 协议解决。 IP 协议可以连接多个局域网 IP 协议定义了一套自己的地...原创 2019-08-25 20:24:50 · 473 阅读 · 0 评论 -
linux网络编程框架
1.linux网络编程框架 1.1 网络是分层的 (1)OSI 7层模型 (2)TCP/IP五层模型 我们每天使用互联网,你是否想过,它是如何实现的?全世界几十亿台电脑,连接在一起,两两通信。上海的某一块网卡送出信号,洛杉矶的另一块网卡居然就收到了,两者实际上根本不知道对方的物理位置,你不觉得这是很神奇的事情吗? 互联网的核心是一系列协议,总称为"互联网协议"(In...原创 2019-08-25 19:55:11 · 1040 阅读 · 0 评论 -
网络通信概述
1.网络通信概述 1.1 从进程间通信说起:网络域套接字socket,网络通信其实就是位于网络中不同主机上面的2个进程之间的通信。 1.2 网络通信的层次 (1)硬件部分:网卡 (2)操作系统底层:网卡驱动 (3)操作系统API:socket接口 (4)应用层:低级(直接基于socket接口编程) (5)应用层:高级(基于网络通信应用...原创 2019-08-25 16:58:47 · 1458 阅读 · 0 评论 -
获取系统信息
1.关于时间的概念 1.1 GMT时间 (1)GMT是格林尼治时间。 (2)GMT时间的意义?用格林尼治的当地时间作为全球国际时间,用以描述全球性的事件的时间,方便大家记忆。 (3)一般为了方便,一个国家都统一使用一个当地时间。 1.2 UTC时间 (1)GMT时间是以前使用的,近些年来越来越多的使用UTC时间。 (2)关于北京时间,可以参考:http://www.cnblogs.com/qiu...原创 2019-08-20 10:58:44 · 215 阅读 · 0 评论 -
文件属性
1.linux中各种文件类型 1.1 普通文件(- regular file) (1)文本文件。文件中的内容是由文本构成的,文本指的是ASCII码字符。文件里的内容本质上都是数字(不管什么文件内容 本质上都是数字,因为计算机中本身就只有1和0),而文本文件中的数字本身应该被理解为这个数字对应的ASCII码。常见的.c文件, .h文件 .txt文件等都是文本文件。文本文件的好处就是可以被人轻...原创 2019-08-20 09:35:16 · 256 阅读 · 0 评论 -
死锁
1.什么是死锁 死锁是指多个进程因竞争资源而造成的一种僵局(互相等待),若无外力作用,这些进程都将无法向前推进。 例如,在某一个计算机系统中只有一台打印机和一台输入设备,进程P1正占用输入设备,同时又提出使用打印机请求,但此时打印机正被进程P2所占用,在P2未释放打印机之前,又提出请求使用正被P1占用着的输入设备。这样两个进程相互无休止地等待下去,均无法继续执行,此时两个进程陷入死锁状态。 ...原创 2019-09-08 09:53:28 · 201 阅读 · 0 评论