![](https://img-blog.csdnimg.cn/20190918140037908.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
linux---应用和网络编程
linux---应用和网络编程
SXM19940913sxm
这个作者很懒,什么都没留下…
展开
-
linux---同步和互斥的区别
一、同步与互斥的区别1. 同步同步,又称直接制约关系,是指多个线程(或进程)为了合作完成任务,必须严格按照规定的 某种先后次序来运行。例如,线程 T2 中的语句 y 要使用线程 T1 中的语句 x 的运行结果,所以只有当语句 x 执行完成之后语句 y 才可以执行。我们可以使用信号量进行同步:semaphore S=0; // 初始化信号量T1() { ... x; // 语句x V(S); // 告诉线程T2,语句x已经完成原创 2020-07-22 20:43:32 · 436 阅读 · 0 评论 -
linux---线程函数
3.7.1.再论进程3.7.1.1、多进程实现同时读取键盘和鼠标3.7.1.2、使用进程技术的优势(1)CPU时分复用,单核心CPU可以实现宏观上的并行、微观上的串行(2)实现多任务系统需求(多任务的需求是客观的,多任务就是同时要做很多事情)3.7.1.3、进程技术的劣势(1)进程间切换开销大(进程断点的保护和进程断点的恢复)(2)进程间通信麻烦而且效率低(进程与进程之间天生是隔离的...原创 2019-08-27 09:40:44 · 184 阅读 · 0 评论 -
linux应用编程和网络编程-3.4.linux进程全解- 父子关系 exec system函数
exec函数族父子进程僵尸进程孤儿进程原创 2019-09-19 20:55:05 · 322 阅读 · 0 评论 -
linux应用编程和网络编程-3.8.网络基础
3.8.1.网络通信概述3.8.1.1、从进程间通信说起:网络域套接字socket,网络通信其实就是位于网络中不同主机上面的2个进程之间的通信。3.8.1.2、网络通信的层次(1)硬件部分:网卡(2)操作系统底层:网卡驱动(3)操作系统API:socket接口(4)应用层:低级(直接基于socket接口编程)(5)应用层:高级(基于网络通信应用框架库)(6)应用层:更高级(http...原创 2019-08-27 09:41:14 · 150 阅读 · 0 评论 -
linux应用编程和网络编程-3.9.linux网络编程实践
3.9.1.linux网络编程框架3.9.1.1、网络是分层的(1)OSI 7层模型(理论指导)(2)网络为什么要分层(3)网络分层的具体表现3.9.1.2、TCP/IP协议引入(网络分层实现的具体实现)(1)TCP/IP协议是用的最多的网络协议实现(2)TCP/IP分为4层,对应OSI的7层(3)我们编程时最关注【应用层】,了解传输层(TCP/UDP/TFTP),网际互联层和网络...原创 2019-08-27 09:40:56 · 149 阅读 · 0 评论 -
linux应用编程和网络编程-3.6.高级IO 3种并发式IO:非阻塞式轮询+IO复用+异步IO //存储映射IO(即mmap) select
3.6.1.非阻塞IO3.6.1.1、阻塞与非阻塞阻塞:阻塞具有很多优势(是linux系统的默认设置),单路IO的时候使用阻塞式IO没有降低CPU的性能补充:阻塞/非阻塞, 它们是程序在等待消息(无所谓同步或者异步)时的状态.阻塞调用是指调用结果返回之前,当前线程会被挂起。函数只有在得到结果之后才会返回。有人也许会把阻塞调用和同步调用等同起来,实际上他是不同的。对于同步调用来说,很多时...原创 2019-08-27 09:40:20 · 180 阅读 · 0 评论 -
朱有鹏-3.linux应用编程和网络编程-第3部分-3.3.获取系统信息
3.3.1.关于时间的概念3.3.1.1、GMT时间(1)GMT是格林尼治时间,也就是格林尼治地区的当地之间。(2)GMT时间的意义?【用格林尼治的当地时间作为全球国际时间】,用以描述全球性的事件的时间,方便大家记忆(3)一般为了方便,一个国家都统一使用一个当地时间。3.3.1.2、UTC时间(1)GMT时间是以前使用的,使用天文来测试的,近些年来越来越多的使用UTC原子钟时间。(2...原创 2019-08-27 09:41:47 · 297 阅读 · 2 评论 -
linux应用编程和网络编程-3.2.文件属性 文件系统+
Linux下的文件系统为树形结构,入口为/ 树形结构下的文件目录: 无论哪个版本的Linux系统,都有这些目录,这些目录应该是标准的。各个Linux发行版本会存在一些小小的差异,但总体来说,还是大体差不多。/ 文件系统的入口,最高一级目录;/bin 基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, mkdir等。这个目录中的文件都是可执行的,一般的用户都可以使用。...原创 2019-08-27 09:42:04 · 204 阅读 · 0 评论 -
linux应用编程和网络编程-3.1.linux中的文件IO(read write open lseek)系统文件管理 inode 3种退出 fd 文件共享
https://www.cnblogs.com/wycBlog/p/7610861.html3.1.1.应用编程框架介绍3.1.1.1、什么是应用编程(1)整个嵌入式linux核心课程包括5个点,按照学习顺序依次是:裸机、C高级、uboot和系统移植、linux应用编程和网络编程、驱动。(2)典型的嵌入式产品就是基于嵌入式linux操作系统来工作的。典型的嵌入式产品的研发过程就是;第一步让...原创 2019-09-19 13:51:15 · 372 阅读 · 0 评论