
linux应用编程和网络编程
F__pj
这个作者很懒,什么都没留下…
展开
-
嵌入式学习笔记-linux应用编程和网络编程-3.9 linux网络编程实践
一、linux网络编程框架1、网络是分层的OSI 7层模型网络为什么要分层网络分层的具体表现2、TCP/IP协议引入TCP/IP协议是用的最多的网络协议实现TCP/IP分为4层,对应OSI的7层我们编程时最关注应用层,了解传输层,网际互联层和网络接入层不用管3、BS和CSCS架构介绍(client server,客户端服务器架构)BS架构介绍(broswer ser...原创 2020-04-09 16:49:45 · 300 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.8 网络基础
一、再论进程1、从进程间通信说起网络域套接字socket,网络通信其实就是位于网络中不同主机上面的2个进程之间的通信。2、网络通信概述硬件部分:网卡操作系统底层:网卡驱动操作系统API:socket接口应用层:低级(直接基于socket接口编程)应用层:高级(基于网络通信应用框架库)应用层:更高级(http、网络控件等)3、网络通信概述重点1:掌握网络通信的架构层次...原创 2020-04-09 11:02:03 · 306 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.7 linux线程全解
一、再论进程1、多进程实现同时读取键盘和鼠标#include <stdio.h>#include <unistd.h>#include <string.h>#include <sys/types.h>#include <sys/stat.h>#include <fcntl.h>int main(void){...原创 2020-04-08 22:26:20 · 260 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.6 高级IO(相对于第一节的普通文件io)
一、非阻塞IO1、阻塞与非阻塞2、为什么有阻塞式常见的阻塞:wait、pause、sleep等函数;read或write某些文件时阻塞式的好处3、非阻塞为什么要实现非阻塞如何实现非阻塞IO访问:O_NONBLOCK和fcntl二、阻塞式IO的困境1、程序中读取键盘int main(void){ char buf[200]; // 键盘就是标准输入,stdin...原创 2020-04-07 15:22:46 · 185 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.5 linux中的信号
一、什么是信号1、信号是内容受限的一种异步通信机制信号的目的:用来通信信号是异步的(对比硬件中断)信号本质上是int型数字编号(事先定义好的)2、信号由谁发出用户在终端按下按键硬件异常后由操作系统内核发出信号用户使用kill命令向其他进程发出信号某种软件条件满足后也会发出信号,如alarm闹钟时间到会产生SIGALARM信号,向一个读端已经关闭的管道write时会产生SIG...原创 2020-04-07 13:46:22 · 278 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.4 linux进程全解
一、程序的开始和结束1、main函数由谁调用编译链接时的引导代码。操作系统下的应用程序其实在main执行前也需要先执行一段引导代码才能去执行main,我们写应用程序时不用考虑引导代码的问题,编译链接时(准确说是连接时)由链接器将编译器中事先准备好的引导代码给链接进去和我们的应用程序一起构成最终的可执行程序。运行时的加载器。加载器是操作系统中的程序,当我们去执行一个程序时(譬如./a.out...原创 2020-04-07 02:08:31 · 403 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.1 linux中的文件IO
介绍:linux应用编程课程的整体设计框架和设计思路,文件IO的含义等一、什么是应用编程典型的嵌入式产品就是基于嵌入式linux操作系统来工作的。典型的嵌入式产品的研发过程就是;第一步让linux系统在硬件上跑起来(系统移植工作),第二步基于linux系统来开发应用程序实现产品功能。基于linux去做应用编程删除线格式 ,其实就是通过调用linux的系统API来实现应用需要完成的任务。...原创 2020-04-04 17:28:50 · 585 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.2 文件属性
一、linux中各种文件类型1、普通文件(- regular file)文本文件。文件中的内容是由文本构成的,文本指的是ASCII码字符。文件里的内容本质上都是数字(不管什么文件内容本质上都是数字,因为计算机中本身就只有1和0),而文本文件中的数字本身应该被理解为这个数字对应的ASCII码。常见的.c文件, .h文件 .txt文件等都是文本文件。文本文件的好处就是可以被人轻松读懂和编写。所...原创 2020-04-04 17:26:32 · 228 阅读 · 0 评论 -
嵌入式学习笔记-linux应用编程和网络编程-3.3 获取系统信息
一、关于时间的概念1、GMT时间GMT是格林尼治时间,也就是格林尼治地区的当地之间。GMT时间的意义?用格林尼治的当地时间作为全球国际时间,用以描述全球性的事件的时间,方便大家记忆。一般为了方便,一个国家都统一使用一个当地时间。2、UTC时间GMT时间是以前使用的,近些年来越来越多的使用UTC时间。关于北京时间,可以参考:http://www.cnblogs.com/qiuyi...原创 2020-04-04 22:39:20 · 239 阅读 · 0 评论