E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Linux_系统编程
linux
系统编程
--内存映射区概念及相应函数
0基本概念1查看(系统的fifo文件):manshm_overviewls/dev/shm2分类内存映射文件匿名内存映射(亲缘进程)共享内存区对象(非亲缘进程)3创建/打开文件intshm_open(constchar*name,intoflag,mode_tmode)3.1参数参数含义nameposixIPC名字,格式为/somenameoflag标志mode权限3.2标志标志作用O_CREAT
。。
·
2020-07-13 21:43
系统编程
linux
系统编程
--内存映射(进程通信)
1进程间通信的思路有血源关系的父亲进程之间共享内存映射区相比于文件操作优势在于1:效率高(因为直接在内存上操作)2:不阻塞缺点在于:一定要注意读写顺序没有血源关系的进程间通信如何通信不能使用匿名映射的方式,只能借助磁盘文件创建映射区不阻塞a(a.c)进程b(b.c)进程a.c(intfd=open("hello");void*ptr=mmap(,,,,,fd,0);//下来进行读写操作)b.cin
。。
·
2020-07-13 21:12
系统编程
Linux
系统编程
--第四章 高级文件IO
散布/聚集IO:在单个系统调用中同时对多个缓冲区进行读取或者写入操作,适合聚集不同数据结构进行统一的IO操作。epoll:poll()和select()的改进版本,在一个程序需要处理数百个文件描述符的时候很有用内存文件映射IO:将文件映射到内存,可以通过简单的内存管理方式来处理文件文件IO提示:允许进程将文件IO使用上的一些提示信息提供给内核,能提升IO性能异步IO:允许进程发出多个IO请求而且不
嵌入式软件和硬件
·
2020-07-13 19:40
Linux内核
Linux
系统编程
--- 共享内存及内存映射【十全十美】
一.POSIX共享内存的实现-----------------------------------------------------------------------------共享内存是在进程间共享某一块内存。是最快一种ipc通信机构。其中posix共享内存机制它主要是通过内存映射(mmap)机制来实现的。在进程间共享内存使用如下固定步骤:1.创建一个共享内存intshm_open(cons
weixin_34072159
·
2020-07-13 18:33
Rust初步(一):介绍
Rust是一个注重安全与速度的现代
系统编程
语言,通过在没有垃圾回收的情况下保证内存安全来实现它的目标,这使它成为一个在很多其它语言不适合的用例中大展身手的语言:嵌入到其它语言中,在特定的时间和空间要求下编程
weixin_33854644
·
2020-07-13 18:58
C语言架构篇的学习笔记
近来看宋宝华老师的c语言嵌入式
系统编程
修炼之道,架构篇的笔记整理如下。
wang_trace
·
2020-07-13 16:28
关于linux中消息队列的使用
以前对于linux消息队列有过大概的了解,在《uinx高级
系统编程
》这本书里面提到过。
tongdajiu
·
2020-07-13 14:04
linux
WebAssembly:
系统编程
语言的逆袭
引子AnyapplicationthatcanbewritteninJavaScript,willeventuallybewritteninJavaScript.——Atwood’sLaw有人用JavaScript做语法词法解析,有人写了x86模拟器,还有人用JavaScript写了可自举的JavaScript引擎。JavaScript早已经在”重新发明一切”的路上一骑绝尘了,JavaScript
zhangkf2013
·
2020-07-13 14:03
前端
python入门(一):简介
(一)python用途(1)
系统编程
python对操作系统服务的内置接口,使其成为编写可移植的维护操作系统的管理工具和部件的理想工具。
shilion163
·
2020-07-13 13:45
Python语言
Linux
系统编程
---进程间通信-消息队列
消息队列消息队列也是一种进程间通信方式,它提供了两个不相关进程间传递数据的方式。消息队列实际上是操作系统在内核为我们创建的一个链式队列,通过这个队列的标识符key,多个进程可以通过向队列中添加节点或获取节点来进行数据传输。这个队列中的节点有一个消息类型来标识不同进程所发送或接受的数据类型。消息队列的生命周期随内核。内核为每个IPC对象维护了一个数据结构消息队列结构:消息队列有关操作函数//头文件#
shanghx_123
·
2020-07-13 13:12
Linux
Linux
系统编程
三:IPC消息队列
公众号:CppCoding消息队列可以认为是一个消息链表,其含有优先级。在某个进程往一个队列写入消息之前,并不需要另外某个进程在该队列上等待消息的到达。消息队列是具有随内核的持续性。一直存在到内核的重新自举或者显示的删除该对象。查看POSIX消息队列:ls/dev/mqueue命名规则只能以/开头。接口头文件:mqueue.h库:librt.so(-lrt//链接)结构体structmq_attr
Dorby .
·
2020-07-13 12:49
Linux系统编程
Linux_
父子进程通过消息队列通信
#include#include#include#include#include#include#include#include#defineSIZE1024constlongid=1000;//这里规定类型为1000的消息typedefstructmsgqueue{longmytype;//消息类型charmytext[SIZE];//消息内容}msgqueue;intmain(){key_tk
s1f
·
2020-07-13 11:52
每日代码
个人博客
linux
系统编程
之文件IO案例题
给出一个文件文件,删除该文本的第10行#include#include#include#include#include#include/*面试题要求:*//*编写一个程序,删除一个文件的第10行*///__getline()传入文件指针统计行数size_t__getline(FILE*fp){if(fp==NULL)return0;intlinecount=0;intres=0;rewind(fp
八十八夜的茶摘
·
2020-07-13 11:32
linux系统编程
Linux
系统编程
之进程
进程的创建系统调用fork()可以从一个父进程中创建一个子进程,子进程的资源同父进程几乎一样:子进程获取父进程的栈、数据段、堆和代码段(执行文本段)的拷贝。执行fork()之后,每个进程都可以修改自己栈数据、堆中的变量且并不会影响另一个进程。执行fork()时,子进程会获得父进程所有的文件描述符副本,类似于dup(),意味着父进程和子进程对应的文件描述符指向同一个打开文件句柄(共享当前文件的偏移量
haha and giraffe
·
2020-07-13 09:57
Linux
Linux
系统编程
——内存映射与写时复制
基本概述内存映射就是将虚拟内存中的一块区域与磁盘上的对象建立关联以初始化虚拟内存区域的内容。有两种映射文件映射:讲一个文件的一部分直接映射到调用进程的虚拟内存中匿名映射:一个映射没有对应的文件(也可以理解成一个内容总是被初始化为零的虚拟文件的映射)一个进程的映射中的内存可以与其他进程中的映射共享,当两个或者多个进程共享相同的物理分页时候,每个进程都可以对其做修改和读取,此时就会出现一致性问题,由此
haha and giraffe
·
2020-07-13 09:57
Linux
第五节 Linux
系统编程
-文件IO-关闭函数 close
-------------------------------------资源来源于网络,仅供自学使用,如有侵权,联系我必删.实验-关闭函数closeclose函数介绍任何一个文件在操作完成之后都需要关闭,这个时候需要调用close函数。调用close函数之后,会取消open函数建立的映射关系,句柄将不再有效,占用的空间将被系统释放。关闭文件close函数:•intclose(intfd);第二:
嵌入式开发学习者
·
2020-07-13 09:25
[linux
系统编程
]System V IPC 消息队列
//进程1 intmsg_id=-1; if((msg_id=msgget((key_t)MSG_R_KEY,0777|IPC_CREAT))==-1)//创建或者获取KEY值的消息队列 { printf("msggetfailure!!!\n"); return(-1); } if((msgsnd(msg_id,(void*)&msg_q_s,
明天我约你
·
2020-07-13 08:43
LINUX系统编程
program code for Hands-On Microservices with Rust译 前言(完)
自版本1.0发布以来只有几个月了,当时我并不认为这个工具会引发一场会破坏的无声革命与
系统编程
相关的传统,在那个时候,它是乏味的,绝不是时髦的。
rgwu
·
2020-07-13 08:18
program
code
for
Hands-On
Micr
Linux详解之用三个文件实现复制文件内容功能
知识点:1.Linux
系统编程
之错误处理:perror,strerror和errno首先是errno,在
系统编程
中错误通常通过函数返回值来表示,并
Jacky-Summer
·
2020-07-13 07:31
Linux
Linux
系统编程
---5(共享存储映射,存储映射I/O,mmap函数,父子进程间通信,匿名映射)
共享存储映射文件进程间通信使用文件也可以完成IPC,理论依据是,fork后,父子进程共享文件描述符。也就共享打开的文件。编程:父子进程共享打开的文件。借助文件进行进程间通信。测试代码/***父子进程共享打开的文件描述符----使用文件完成进程间通信**/#include#include#include#include#include#includeintmain(void){intfd1,fd2;
阳光丿洒脱
·
2020-07-13 07:47
Linux
系统编程
终于找到工作了,写个求职小结
闲话少说,直入主题:收获:1、投简历的时候尽量投跟自己方向对口的,比如说你是做java的,就尽量投招java多的公司,做
系统编程
的就少去这些公司凑热闹,浪费自己和公司的宝贵时间。
默默努力的小熊
·
2020-07-13 07:20
生活篇
Linux
系统编程
之进程优先级和调度一
进程是CPU的执行单位,进程间的配合是否完美在一定程度上也就决定了该CPU的运行速度。那进程间是如何对CPU资源进行一个调用的呢?又是如何去取得CPU的使用权?这就得谈到进程得优先级和调度问题了。Linux调度进程使用CPU得默认模型是循环时间共享,就是每个进程访问CPU得时间是一致得,并且是循环轮流使用的,而访问CPU这段时间称之为时间片或者量子。在这种模式种,进程无法直接控制何时使用CPU和C
黄先生-?
·
2020-07-13 05:03
Linux系统编程
系统编程
之UDP网络编程(循环服务器)
1.服务器基本操作1.用socket()函数创建socket,返回值为socket的标识符sockfd,这个标识符在后面都会用到2.用结构体sockaddr_in去保存服务器信息(协议,端口,ip)联合体成员:structsockaddr_insever_addr{sever_addr.sin_family//协议sever_addr.sin_port//端口,一般大于1024sever_addr
快乐的敲代码的小顾
·
2020-07-13 04:59
44.Linux/Unix
系统编程
手册(下) -- 管道和 FIFO
1.管道的特点1.一个管道是一个字节流当讲到管道是一个字节流时,意味着在使用管道时是不存在消息或者消息边界的概念的。从管道中可以读取任意大小的数据块,通过管道传递的数据是顺序的,在管道中无法使用lseek()来随机访问数据.2.从管道中读取数据当试图从一个当前为空的管道中读取数据将会被阻塞直到至少有一个字节被写入到管道中为止。3.管道是单向的在管道中的数据传递方向是单向的。4.可以确保写入不超过P
enlyhua
·
2020-07-13 04:34
UNIX
网络编程
POSIX共享内存
本文参考《嵌入式Linux开发教程》和《Linux/UNIX
系统编程
手册》。
拉松
·
2020-07-13 03:43
linux进程线程
linux
POSIX
共享内存
python第一次学习笔记(可能会有更新)
以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言比C语言或者Java之类的
系统编程
语言要简单容易。
antuoyu7037
·
2020-07-13 02:27
【零基础入门学习Python笔记001】我和Poyhon的第一次亲密接触:课后测试集答案
以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言比C语言或者Java之类的
系统编程
语言要简单容易。
荪荪
·
2020-07-13 01:40
Python
零基础入门学习Python笔记
(一)Linux
系统编程
之文件、目录操作
1.复制文件描述符#includeintdup(intoldfd);oldfd-要复制的文件描述符返回值:新的文件描述符dup调用成功:有两个文件描述符指向同一个文件返回值:取最小的且没被占用的文件描述符,若错误返回-1,错误代码存入errno中。为什么需要复制一个新的文件描述符?一个原因是使用fdopen。fclose关闭传递给它的文件描述符fdopen,就是说如果你不希望原始文件描述符被关闭,
CarmenIsOK
·
2020-07-13 00:09
Linux系统编程
学习Python第一天
以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比C语言、C++语言或Java之类的
系统编程
语言要简单容易。
weixin_46181329
·
2020-07-12 23:58
Python
python
Linux
系统编程
4:IPC消息队列
Linux
系统编程
4:IPC消息队列0.消息队列1.POSIX消息队列1.1查看1.2接口1.3结构体1.4函数1.4.1创建消息队列1.4.2删除消息队列1.4.3打开消息队列1.4.4关闭消息队列1.4.5
Sunrise的博客
·
2020-07-12 23:52
笔记
Linux
系统编程
--管道和FIFO
管道$ls|wc-l为执行上述命令,shell创建了两个进程来分别执行ls和wc。通过管道连接两个进程。管道是单向的,允许数据从一个进程流向另一个进程。一个管道是一个字节流管道是一个字节流意味着在使用管道时不存在消息或消息边界。从管道中读取数据的进程可以读取任意大小的数据块,而不管写入进程写入管道的数据块大小。通过管道的数据是有顺序的。并且,在管道中无法使用lseek()来随机的访问数据。从管道中
杨洋啊啊啊
·
2020-07-12 22:56
Linux/Unix系统编程
Linux
系统编程
--内存映射 mmap
概述mmap()系统调用在调用进程的虚拟地址空间中创建一个新内存映射。映射分为两种。-文件映射:文件映射将一个文件的一部分直接映射到调用进程的虚拟内存中。一旦一个文件被映射之后就可以通过在相应的内存区域中操作字节来访问文件内容了。映射的分页会在需要的时候从文件中(自动)加载。-匿名映射:一个匿名映射没有对应的文件。相反,这种映射的分页会被初始化为0。(一个内容总是被初始化为0的虚拟文件的映射)一个
杨洋啊啊啊
·
2020-07-12 22:25
Linux/Unix系统编程
Linux
系统编程
--POSIX消息队列
打开一个消息队列#include#include#includemqd_tmq_open(constchar*name,intoflag,.../*mode_tmode,structmq_attr*attr);POSIXIPC对象需要使用以斜线开头后面跟着一个或多个非斜线字符的名字例如/mqoflag是位掩码标记描述O_CREAT不存在时创建O_EXCL和O_CREAT一起排他创建O_RDONLY
杨洋啊啊啊
·
2020-07-12 22:25
Linux/Unix系统编程
linux
Linux
系统编程
——POSIX消息队列
简介POSIX消息队列就是进程之间通讯的方式之一,其特点是以消息的形式交换数据(数据的交换单位是整个消息),POSIX消息队列和SystemV消息队列相比,有以下优点:消息通知特性允许一个进程能在一条消息进入之前为空的消息队列时候,异步的通过信号或者线程的实例化接收通知Linux下可以通过poll()、select()、epoll监控POSIX消息队列打开、关闭、删除消息队列在fork()中子进程
haha and giraffe
·
2020-07-12 22:41
Linux
[Linux
系统编程
笔记]对目录进行操作
标签:Linux系统调用编程目录的创建和删除目录的创建可以由mkdir系统调用来实现其函数原型为#include#includeintmkdir(constchar*pathname,mode_tmode);mkdir创建一个新的空目录。空目录中自动创建.和..目录项所创建目录的存取许可权,由mode(mode&~umask)决定。新创建目录的uid与创建该进程的uid一致。如果父目录设置了st_
kkkkde
·
2020-07-12 22:00
c语言
Linux
在windows10系统中搭建Rust语言开发环境详细介绍
Rust是一门
系统编程
语言,专注于安全,尤其是并发安全,支持函数式和命令式以及泛型等编程范式的多范式语言。
学习开发爱好者
·
2020-07-12 21:39
Rust语言开发
开发资料
软件开发
linux
系统编程
-SOCKET通信基础编程(0)-UDP编程
linux
系统编程
-SOCKET通信基础编程(0)-UDP编程linux
系统编程
-SOCKET通信基础编程(1)-UDP编程服务端程序linux
系统编程
-SOCKET通信基础编程(2)-UDP编程客户端程序
SSS的博客
·
2020-07-12 21:28
linux系统编程
嵌入式物联网开发,linux,单片机32(仅供借鉴,代码不共享 自行编写)
嵌入式物联网开发,linux,单片机32一.嵌入式介绍二.linux系统介绍1.ubuntu使用安装以下自行查阅资料学习,内容较多不是一时半会能学完的编程内容,最基本是C语言的熟练掌握2.shell编程3.
系统编程
mrluguan
·
2020-07-12 21:46
嵌入式stm
开发
物联网
嵌入式
linux
单片机
Linux
系统编程
(消息队列)
概述消息队列提供了一种在两个不相关的进程之间传递数据的简单高效的方法,其特点如下:1)消息队列可以实现消息的随机查询。消息不一定要以先进先出的次序读取,编程时可以按消息的类型读取。2)消息队列允许一个或多个进程向它写入或者读取消息。3)与无名管道、命名管道一样,从消息队列中读出消息,消息队列中对应的数据都会被删除。4)每个消息队列都有消息队列标识符,消息队列的标识符在整个系统中是唯一的。5)消息队
小麦大大
·
2020-07-12 21:48
linux网络与系统编程
Linux
系统编程
--POSIX消息队列实现文件服务器
客户端向服务器的消息队列发送一个请求消息请求指定名称的文件内容。服务器将文件的内容返回到客户端私有的消息队列中。mq_recive所指向的接收信息的地址的大小不能小于MSGSIZE。发送信息时需要将发送结构体初始化(bzero)//mq.h#include#include#include#include#include#include#include#include#include#include
杨洋啊啊啊
·
2020-07-12 21:44
Linux/Unix系统编程
Linux
系统编程
:TCP和UDP协议
TCP与UDP区别:1、TCP面向连接,即先建立连接在进行传输;UDP是无连接的,即发送数据之前不需要建立连接2、TCP提供可靠的传输服务,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付3、TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用
iotflh
·
2020-07-12 21:32
Linux系统编程
linux
系统编程
学习经验
简单写一下总结(1)书籍的选择个人推荐一下三本:UNIX环境高级编程https://book.douban.com/subject/1788421/LINUX
系统编程
https://book.douban.com
yz764127031
·
2020-07-12 19:53
Linux
Linux
系统编程
| 管道
▋1.管道的概念管道,又名「无名管理」,或「匿名管道」,管道是一种非常基本,也是使用非常频繁的IPC方式。1.1管道本质管道的本质也是一种文件,不过是伪文件,实际上是一块内核缓冲区,大小4K;管道创建以后会产生两个文件描述符,一个是读端,另一个是写端;管道里的数据只能从写端被写入,从读端被读出;1.2管道原理管道是内核的一块缓冲区,更具体一些,是一个环形队列。数据从队列的一端写入数据,另一端读出,
良许Linux
·
2020-07-12 19:37
Linux应用编程
ISP于IAP的区别
ISP于IAP的区别ISP:insystemprogramming,在
系统编程
IAP:inapplicatinprogramming在应用编程但两者的操作方式,结果和应用场合有什么区别什么是ISP:用写入器将
yx_l128125
·
2020-07-12 19:54
嵌入式
C 错误处理
[C错误处理C语言不提供对错误处理的直接支持,但是作为一种
系统编程
语言,它以返回值的形式允许您访问底层数据。
MrAit
·
2020-07-12 10:00
Debian忘记root密码解决方法
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/22713/showart_166207.html今天装了个debian来做linux
系统编程
,
weixin_34085658
·
2020-07-12 08:22
Linux
系统编程
(11)——进程间通信之有名管道
管道应用的一个重大限制是它没有名字,因此,只能用于具有亲缘关系的进程间通信,在有名管道(namedpipe或FIFO)提出后,该限制得到了克服。FIFO不同于管道之处在于它提供一个路径名与之关联,以FIFO的文件形式存在于文件系统中。这样,即使与FIFO的创建进程不存在亲缘关系的进程,只要可以访问该路径,就能够彼此通过FIFO相互通信(能够访问该路径的进程以及FIFO的创建进程之间),因此,通过F
weixin_30815469
·
2020-07-12 07:25
Linux下实现免密码登录(超详细)_
Linux_
脚本之家
Linuxssh密钥登录和取消密钥登录2016-05-18•linux技巧•暂无评论在VPS中利用vi编辑器编辑sshd的配置文件vi/etc/ssh/sshd_config找到RSAAuthentication和PubkeyAuthentication两行,并将前面的“#”去掉。找到PasswordAuthentication行,并将后面的“yes”改为“no”。(取消密钥登录只需要把NO改成Y
weixin_30488313
·
2020-07-12 06:37
Linux
系统编程
(16)——正则表达式入门
字符是计算机软件处理文字时最基本的单位,可能是字母,数字,标点符号,空格,换行符,汉字等等。字符串是0个或更多个字符的序列。文本也就是文字,字符串。说某个字符串匹配某个正则表达式,通常是指这个字符串里有一部分(或几部分分别)能满足表达式给出的条件。在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。正则表达式就是用于描述这些规则的工具。换句话说,正则表达式就是记录文本规则的
weixin_30376083
·
2020-07-12 05:17
给大家推荐一个优质Linux内核技术公众号-Linux阅码场
作为一个Linux技术公众号的作者,我觉得有义务推荐优秀的公众号,推广内容,希望对大家的学习有所帮助~Linux阅码场是一个专注Linux内核和
系统编程
与调试调优技术的公众号,它的文章云集了国内众多知名企业一线工程师的心得
写代码的篮球球痴
·
2020-07-12 05:02
上一页
36
37
38
39
40
41
42
43
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他