
Linux
cyy_0802
狂奔的菜鸟
展开
-
编译链接运行原理---函数堆栈调用
首先先提出下面五个问题:(1)形参开辟内存吗?由谁开辟?(2)形参的入栈顺序?(3)返回值如何带出?(4)被调用方结束后如何知道回退到调用方栈帧上?(5)函数调用完成如何知道执行下一行指令?举例:进入Debug版本查看该程序的InterX86反汇编代码如下: 有反汇编代码解释可以回答问题(1)形参开辟内存吗?由谁开辟? 形参开辟内存...原创 2020-08-11 17:34:35 · 278 阅读 · 0 评论 -
Linux---TCP协议的编程流程
TCP协议的编程是基于C/S模型(客户服务器模式):客户端:主动通讯方,数据获取方 服务器:被动通讯方,数据提供方TCP服务器端编程流程(socket编程)1、int listenfd = socket();//listenfd是一种socket文件描述符2、bind();//将listenfd与服务器的IP地址和选用端口号绑定,服务器的IP地址和服务程序选用的...原创 2020-08-11 17:32:19 · 296 阅读 · 0 评论 -
Linux---一些简单命令
1、grep:在一个字符集合中找到符合条件的行输出,也就是可以起到一个过滤的作用。用法:grep hello file 在file文件中查找hello2、find:在系统中查找一个文件用法:find 路径 -name 文件名find /home -name file 在home路径下查找一个file文件3、管道:| 进程间通信的工具,可以用“|”将一个进程的输出信息...原创 2020-08-11 17:31:27 · 211 阅读 · 0 评论 -
Linux---I/O复用系统调用select、poll和epoll
select系统调用用途:在一段指定时间内,监听用户感兴趣的文件描述符上的看可读、可写、异常等事件。select系统调用的原型:#include<sys/select.h>int select(int nfds, fd_set* readfds, fd_set* writefds, fd_set* exceptfds, struct timeval* t...原创 2019-08-16 22:14:43 · 186 阅读 · 0 评论 -
Linux---线程
(一)线程基础(1)线程的概念: 线程是进程内部的一条执行序列,或者执行流,每个进程至少有一条线程,称之为主线程,从代码角度可能,就是main函数的函数体,在主线程中可以通过线程库创建其他线程(函数线程)主线程和函数线程会同时向下运行。在线程模式下,一个进程至少有一个线程,但也可以有多个线程。当一个进程分解为多个线程,则可以让不同的线程同时运转在不同的处理器上,从而提高进程...原创 2019-08-14 19:24:26 · 129 阅读 · 0 评论