Linux操作系统
本栏内容主要基于linux嵌入式系统、ARM、包括51单片机来进行讲解。如需改进之处,请大家热心私信或评论。
凡人不会死
这个作者很懒,什么都没留下…
展开
-
【并发服务器】高并发服务器模型select实现服务器和客户端通信
select函数函数原型:int select(int nfds, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *timeout);【参数列表】:nfds:监听的所有文件描述符的最大描述符+1(内核采取轮询的方式);readfds:读文件描述监听集合;writefds:写文件描述符集合;ex...原创 2020-03-17 21:58:05 · 620 阅读 · 0 评论 -
linux下的文件输入输出fgetc、fputc,fgets、fputs,fread、fwrite
我们平时在对一个文件进行操作的时候会进行如下步骤:打开文件;对文件进行操作(一般我们是进行读写操作);关闭文件:下面我们就围绕linux操作系统中,对一个文件的操作进行简单讲解打开文件使用 <stdio.h>头文件中的==fopen()==函数即可打开文件,它的用法为FILE *fopen(const char *path, const char *mode);p...原创 2020-03-14 17:44:26 · 856 阅读 · 0 评论 -
【UDP网络编程】C语言实现UDP服务器和客户端之间的通信(linux)
功能描述利用UDP网络通信实现客户端和服务器的通信服务器代码server.c#include<stdio.h>#include<sys/socket.h>#include<sys/types.h>#include<string.h>#include<unistd.h>#include<netinet/in.h>...原创 2019-08-13 15:57:09 · 8401 阅读 · 10 评论 -
【TCP网络编程】C语言实现TCP服务器和客户端之间的通信(linux)
功能描述利用TCP网络通信实现客户端和服务器的通信服务器代码server.c#include<stdio.h>#include<sys/socket.h>#include<sys/types.h>#include<string.h>#include<unistd.h>#include<netinet/in.h>...原创 2019-08-13 15:51:57 · 6378 阅读 · 6 评论 -
【Linux问题栏】虚拟机中无法识别电脑摄像头和usb摄像头
最近在做一个具有视频监控及传输功能的一个项目,程序在ARM板子上面跑的时候总是死在驱动程序里面,所以就想先在虚拟机中跑一下,但怎么都找不到摄像头设备,网上看了很多教程都说没有摄像头功能,然后就开始自己排查问题。1.查看虚拟机–>可移动设备–>是否有摄像头,如果有,直接连接就可以。2.如果没有,虚拟机–>设置–>添加–>选择摄像头(我的里面是没有的)。3.虚拟机–>设置–>usb控制器–>全部勾选(一般选择usb2.0)。4.此时问题还没有解决。w原创 2020-05-10 10:54:20 · 5471 阅读 · 3 评论 -
linux系统中C语言中的清空scanf输入缓冲区
为什么会单独将字符串的输入拿出来讲,因为字符串和其他的输入来说有一点不同,在C语言中,从键盘输入有多个函数scanf:和 printf()类似,scanf()可以输入多种类型的数据。getchar()、getche()、getch():这三个函数用于输入单个字符。gets():获取一行数据,作为字符串处理scanf 函数 1 #include <stdio.h> 2...原创 2020-03-08 14:48:00 · 1103 阅读 · 0 评论 -
关于线程、进程以及多进程、多线程的分析
进程概念:具有独立功能的程序在某个数据集合上的一次动态执行的过程,是操作系统资源分配和调度的基本单元类型:后台进程、交互式进程、批处理进程创建函数fork():pid_t fork(void) 返回值分别代表父进程(正整数)、子进程(0)、出错(创建失败(-1));子函数除了进程号、父进程、进程组号不相同,其他资源完全复制父进程。int main(){ pid_t pid; ...原创 2019-10-24 20:52:47 · 327 阅读 · 0 评论 -
C语言实例开发之无人超市管理系统【一】(Linux环境下)(2019.8.12)
前言这段时间在做linux下的c语言开发,而且秋招也马上开始了,就想试着做一个项目来把自己这段时间的学习做一个综合应用,如果好的话,也可以写到简历中去。考虑勒几天最终决定做一个无人超市管理系统.项目设计了很多功能,可能需要一段时间,只能实现一些功能之后更新出来,大家如果有什么好的建议可以评论在下方,一起进步项目框架功能描述(客户端操作)商品属性:id name price count...原创 2019-08-12 16:07:35 · 2731 阅读 · 6 评论 -
【进程间通信】有名管道实现进程间通信详解
无名管道类似于无名管道,一般都会和无名管道比较着来说无名管道的创建特点用于同一台PC机的两个进程,可以是亲缘进程,也可以是不相关的进程通过文件IO操作管道不支持lseek等跳转光标函数遵循先进先出的原则存在于文件系统中,可以看到。文件类型为p(管道文件)读写操作读操作如果之前fifo管道内没有数据,读进程就会一直阻塞,一直阻塞到有数据写入或FIFO管道写端关闭写操作...原创 2019-08-15 17:17:32 · 679 阅读 · 0 评论 -
【进程间通信】无名管道实现进程间通信详解
常见的进程间通信方式传统进程间通信方式无名管道(pipe)有名管道(fifo)信号(signal)System V IPC 对象共享内存(share memory)消息队列(message queue)信号灯(semaphore)System V IPC 对象套接字(socket)特点:只能用于具有血缘关系的进程间通信半双工的通信模式,有固定的读端和写端fd[...原创 2019-08-14 14:55:51 · 1614 阅读 · 0 评论 -
【守护进程】linux守护进程(Daemon)创建过程详解
守护进程我们一般使用ps命令查看运行的进程信息。top命令为动态显示当前进程ID PID父进程ID PPID进程组ID PGID会话期ID SID控制终端 TTY终端进程组 TPGID守护进程linux中的后台进程,独立于控制终端,生命周期从系统启动到系统关闭。当我们创建一个子进程时,子进程继承了父进程的进程组ID、会话期ID。创建守护进程的步骤1.创建子进程,父进程...原创 2019-08-13 20:26:42 · 744 阅读 · 2 评论 -
【嵌入式笔试题】主要针对嵌入式软件开发工程师的一份常见也是必须知道的面试题总结(持续更新中)
这篇主要是往年校招过程中,嵌入式软件工程师岗位常见题,一些出现在笔试,有些出现在面试,如果你可以完全弄懂这些而不是停留在背答案阶段,那校招应该有六七成的把握了,剩下的就看学校、专业、城市、临场发挥等其他因素了。答案我会另外写一篇博客,供大家参考。后面我也会整理一下自己校招血战的经历给大家参考。希望大家找到一个好工作指针什么是指针?指针有哪些类型?如何定义一个函数指针和指针函数?分别定义一...原创 2019-08-13 16:32:02 · 3006 阅读 · 8 评论