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
LinuxUnix系统编程
Linux多线程编程一(
系统编程
)
线程控制创建线程intpthread_create(pthread_t*thread,constpthread_attr_t*attr,\void*(*start_routine)(void*),void*arg);第一个参数:返回线程id第二个参数:设置线程属性默认NULL第三个参数:函数地址,线程启动后执行的函数第四个参数:传给线程启动函数的参数成功:返回0失败:返回错误码#include#i
海马HiMark
·
2020-09-13 07:34
Linux
linux
系统编程
:自己动手写一个ls命令
ls用于列举目录内容,要实现这个功能,毫无疑问,需要读取目录,涉及到两个api:opendir:DIR*opendir(constchar*name),传文件名,返回一个指针,指向目录序列readdir:structdirent*readdir(DIR*dirp),把opendir的返回值传过来,返回值为一个结构体structdirent{ino_td_ino;/*inodenumber*/off
weixin_34168700
·
2020-09-13 06:32
linux
系统编程
:自己动手写一个who命令
who命令的作用用于显示当前有哪些用户登录到系统。这个命令执行的原理是读取了系统上utmp文件中记录的所有登录信息,直接显示出来的utmp文件在哪里呢?manwho的时候,在手册下面有这么一段说明:意思就是不指定文件参数,那么读取的就是/var/run/utmp,到底是不是,验证下IfFILEisnotspecified,use/var/run/utmp./var/log/wtmpasFILEis
weixin_33980459
·
2020-09-13 06:55
Linux
系统编程
| 信号量
大家知道,互斥锁可以用于线程间同步,但是,每次只能有一个线程抢到互斥锁,这样限制了程序的并发行。如果我们希望允许多个线程同时访问同一个资源,那么使用互斥锁是没有办法实现的,只能互斥锁会将整个共享资源锁住,只允许一个线程访问。这种现象,使得线程依次轮流运行,也就是线程从并行执行变成了串行执行,这样与直接使用单进程无异。于是,Linux系统提出了信号量的概念。这是一种相对比较折中的处理方式,它既能保证
weixin_33804582
·
2020-09-13 06:49
java
javascript
Linux
系统编程
(16)——线程控制相关函数-创建进程、查看线程信息
线程控制相关函数:#include头文件不是系统调用,posix线程库。创建进程终止进程等待进程线程分离1.创建进程函数:pthread_create(pthread_t*thread,constpthread_attr_t*att,void*(*strart_routine)(void*),void*arg);参数:pthread_t*thread:线程ID的地址,新线程的idconstpthr
Xdut
·
2020-09-13 06:16
Linux
Linux
系统编程
——线程同步与互斥:互斥锁
为什么需要互斥锁?在多任务操作系统中,同时运行的多个任务可能都需要使用同一种资源。这个过程有点类似于,公司部门里,我在使用着打印机打印东西的同时(还没有打印完),别人刚好也在此刻使用打印机打印东西,如果不做任何处理的话,打印出来的东西肯定是错乱的。下面我们用程序模拟一下这个过程,线程一需要打印“hello”,线程二需要打印“world”,不加任何处理的话,打印出来的内容会错乱:#include#i
Mike江
·
2020-09-13 04:20
【Linux环境编程】
Linux环境编程
【Linux
系统编程
】System V信号量
00.目录文章目录00.目录01.信号量概述02.信号量操作命令03.信号量操作函数3.1创建信号量数组3.2信号量控制函数3.3信号量操作函数04.程序示例05.附录01.信号量概述信号量广泛用于进程或线程间的同步和互斥,信号量本质上是一个非负的整数计数器,它被用来控制对公共资源的访问。编程时可根据操作信号量值的结果判断是否对公共资源具有访问的权限,当信号量值大于0时,则可以访问,否则将阻塞。P
沧海一笑-dj
·
2020-09-13 04:30
Linux环境高级编程
Windows
系统编程
(四):IO同步异步
作者:
[email protected]
新浪微博@孙雨润新浪博客CSDN博客日期:2012年11月8日1.打开设备:CreateFileCreateFile是操作I/O最重要的函数,除了创建和打开磁盘文件,它同样可以打开许多其他设备。HANDLEWINAPICreateFile(LPCTSTRlpFileName,DWORDdwDesiredAccess,DWORDdwShareMode,LPS
sunyurun
·
2020-09-13 02:07
Windows
Linux
系统编程
(35)—— socket编程之TCP服务器的并发处理
我们知道,服务器通常是要同时服务多个客户端的,如果我们运行上一篇实现的server和client之后,再开一个终端运行client试试,新的client就不能能得到服务了。因为服务器之支持一个连接。网络服务器通常用fork来同时服务多个客户端,父进程专门负责监听端口,每次accept一个新的客户端连接就fork出一个子进程专门服务这个客户端。但是子进程退出时会产生僵尸进程,父进程要注意处理SIGC
weixin_30527551
·
2020-09-12 20:13
Hook Win32 API 的应用研究之四:屏幕取词(END)
经历过DOS年代
系统编程
的人可能知道,屏幕上显示的字符是存放在显存里的,每个坐标的字符对应显存的一个特定的现存单元存储的字符,直接操作显存,就可以进行字符的显示和读取,若WINDOWS是这样就好了,可惜事实上相去甚远
hyblusea
·
2020-09-12 19:44
技术文档
学习嵌入式4412开发板-手把手配套视频_2000人群组在线交流
(迅为一线研发工程师录制-不断更新)第一部分迅为电子开发板入门视频(数量:53节)第二部分iTOP-4412开发板硬件设计指导视频(数量:4节)第三部分uboot教程(数量:10节)第四部分Linux
系统编程
anlv5037
·
2020-09-12 19:20
分布式系统的问题
分布式
系统编程
与在单
weixin_34179762
·
2020-09-12 17:58
TCP状态
摘抄自《Linux/UNIX
系统编程
手册》维护一个TCP连接需要同步协调这个连接的两端。为了减小这项任务的复杂度,TCP节点以状态机的方式来建模。
不闻窗外事
·
2020-09-12 16:25
linux
网络
Orleans 2.0 官方文档 —— 6.2 部署 -> 处理故障
在分布式
系统编程
中,最困难的事情是处理故障。Actor模型及其工作方式,使得处理不同类型的故障变得更加容易,但作为开发人员,您要负责考虑可能的故障,并以适当的方式处理它们。故障的类型当您对gra
闫辉_13510215218
·
2020-09-12 11:04
Orleans
电子警察系统简介
4.嵌入式
系统编程
:c,c++,java总之,算法领域,基础知识,数学与想象力是王道。希望能给正在上学的筒子们一些启发。
weixin_30457465
·
2020-09-12 09:08
《Linux/UNIX
系统编程
手册》第63章 IO多路复用、信号驱动IO以及epoll
《Linux/UNIX
系统编程
手册》第63章主要介绍了select()/poll()、信号驱动IO、epoll三方面,以及他们之间异同、优劣点。这里准备结合项目中遇到的问题,分两个方向进行
weixin_30698527
·
2020-09-12 01:55
【Golang 基础系列一】Go 语言简介
Go语言简介Go是一门开源、支持并发、垃圾回收的编译型
系统编程
语言从2007年末由RobertGriesemer,RobPike,KenThompson主持开发,后来还加入了lanLanceTaylor
枫少文
·
2020-09-11 21:56
Go
Go从入门到精通
Go
Linux
系统编程
之进程
进程进程:系统进行资源分配和调度的基本单位,是操作系统结构的基础。它的执行需要系统分配资源创建实体之后,才能进行线程:线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。(我们可以把进程看作是线程的容器,系统以进程作为资源分配的独立单位,以线程作为独立运行的单位)进程ID:进程的标识符,严格按照线性分配的,比如说当前进程ID是100,那么下一个进程分配到的ID
weixin_45934662
·
2020-09-11 20:18
linux进程
linux
linux
系统编程
笔记1
1.lseek不适用于所有类型的文件,不允许应用于管道、FIFO、socket或者终端,否则调用失败并设置errno为ESPIPE。2.当lseek偏移量超过文件末尾,然后执行io操作,read将返回0,表示文件结尾,write却可以在文件结尾后任意位置写入数据。文件结尾和新写入数据间的空间成为文件空洞,读取文件空洞将返回以0填充的缓冲区。然而,文件空洞不占用任何磁盘空间,直到后续时刻向空洞中写入
gettogetto
·
2020-09-11 14:07
linux
系统编程
:进程间通信-pipe
进程间通信-pipe进程间通信每个进程各自有不同的用户地址空间,任何一个进程的全局变量在另一个进程中都看不到,所以进程之间要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,InterProcessCommunication)。pipe管道(pipe)就是一项基本的进程间通信的方法。#inc
苏叔叔
·
2020-09-11 12:07
linux系统编程
Linux服务器编程——Linux
系统编程
之进程通信
进程通信又称IPCIPC方法方法:管道(最简单)信号(开销最小)共享映射区/共享内存(无血缘关系)本地套接字(最稳定)Linux文件类型:-文件d目录l符号链接s套接字伪文件b块设备伪文件c字符设备伪文件p管道伪文件管道其本质是:1、伪文件,实质为内核缓冲区2、由两个文件描述符表示,一个表示读端,一个表示写端3、数据从读端流入,从写端流出管道原理:内核使用环形队列机制,借助内和缓冲区实现管道局限性
蛇wei
·
2020-09-11 10:21
Linux服务器编程
Linux
系统编程
之进程间通信
进程通信概念进程是操作系统的概念,每当我们执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放。那么释放的资源可能是其他进程需要的,然而进程用户空间是相互独立的,一般而言是不能相互访问的。但很多情况下进程间需要互相通信,来完成系统的某项功能。进程通过与内核及其它进程之间的互相通信来协调它们的行为。进程通信应用场景数据传输:一个进程需要将它的数据发送给另一个进程,发
刘小小小小刘
·
2020-09-11 09:39
Linux
Linux操作系统
第十六节 Linux
系统编程
-FTP服务器搭建和测试
-------------------------------------资源来源于网络,仅供自学使用,如有侵权,联系我必删.第一:本章导读通过TFTP来实现在线传输文件,先在虚拟机Ubuntu上搭建一个服务器,并在虚拟机Ubuntu上做客户端进行测试。Ubuntu服务端的搭建1)TFTP(TrivialFileTransferProtocol,简单文件传输协议),是一个基于UDP协议实现的用于在
嵌入式开发学习者
·
2020-09-11 09:07
初识Java
一、Java简介:Java:面向对象的程序设计语言Java分类:JavaSE(
系统编程
)、JavaEE(Web应用)、JavaME(移动端应用)二、Java环境配置:1、JDK:下载:https://www.oracle.com
Lizi_Duang
·
2020-09-11 07:06
Java
linux
系统编程
:进程间通信-fifo
进程间通信-fifo进程间通信的另一种方式是fifo。fifo是另一种管道:有名管道。从名字可以看出,它也是队列。使用fifo通信前,得先创建fifo$mkfifomyfifo随后只需对myfifo像文件一样使用就行。fifo_w.c#include#include#include#include#include#includestructstu{intid;charname[20];};intm
苏叔叔
·
2020-09-11 07:07
linux系统编程
STM32_IAP详解(有代码,有上位机)
Iap,全名为inapplacationprogramming,即在应用编程,与之相对应的叫做isp,insystemprogramming,在
系统编程
,两者的不同是isp需要依靠烧写器在单片机复位离线的情况下编程
weixin_30487701
·
2020-09-11 04:49
linux基础-centos6、7、8版本对比
centos6与centos7对比sysvinit技术VSsystemd技术网卡名称变更centos7与centos8对比内核版本网络时间同步支持最大的文件默认的网络数据包过滤默认的数据库默认版本的控制
系统编程
语言版本
^白开水^
·
2020-09-11 04:43
linux基础
八、Linux
系统编程
-进程(一)进程概念、进程数据结构、进程状态变迁、进程创建和撤销
一、什么是进程从用户角度来说,进程是程序的一次动态执行过程;从操作系统的核心来看,进程是操作系统分配的内存、CPU时间片等资源的基本单位。每一个进程都有自己独立的地址空间与执行状态。二、进程数据结构进程包含以下结构:代码段+数据段+堆栈段+PCB(进程控制块)PCB:用于描述进程情况及控制进程运行所需的全部信息。代码段:是进程中能被进程调度程序在CPU上执行的程序代码段。数据段:一个进程的数据段,
Tianttt
·
2020-09-10 17:22
Linux系统编程
Linux
系统编程
获取指定接口的IPv6地址
在Linux系统中需要编程获取某个接口的IPv4地址比较常见,可以使用ioctl函数等方法,但是要获取IPv6地址,以前的一些方法就不一定适合,从网上查找了很多方法,有两种我试过都可以得到相应的IPv6地址,此处直接以一段代码做示例展示如何获取指定接口的(IPv6)本地链路地址(注意,前提是你的Linux支持IPv6,目前流行的大多数Linux系统早已支持IPv6).#include#includ
h_cszc
·
2020-09-10 13:25
linux
系统编程
__2__父子进程的创建和回收
系统编程
这里写的是对于小白来说更多的了解
系统编程
的文章,有写的不对的地方还恳请各位大佬指出错误,小编一定会多多采纳[手动多谢]。
_大大怪将军_
·
2020-09-07 19:00
系统编程
linux
嵌入式
多线程
Rust学习总结 - 写 Rust 函数,免费拿树莓派
Rust是一门
系统编程
语言(SystemsProgrammingLanguage),兼顾安全(Safety)、性能(Speed)和并发(Concurrency)。Rust可以用来干啥?
Raymond
·
2020-08-26 23:10
rust
学习
P8架构师告诉你身为程序员必备的技能之一TCP/IP网络编程
网络编程:操作系统+
系统编程
知识+TCP/IP网络数据传输协议大部分软件是基于网络环境开发的,因此,网络编程成为程序员的一种必备技能。
mrchaochao
·
2020-08-26 16:18
Java
面试
架构
Linux
系统编程
-线程
全文内容来源于《UNIX环境高级编程-第三版》文章目录线程创建线程终止取消线程线程清理处理程序进程线程原语对比线程分离线程同步互斥量-mutex读写锁条件变量自旋锁屏障线程创建#includeintpthread_create(pthread_t*restricttidp,constpthread_attr_t*restrictattr,void*(*start_rtn)(void*),void*
bdAsk
·
2020-08-26 08:02
004-Linux
linux
系统编程
-day09-进程管理(1)
进程是Unix系统中仅次于文件的基本抽象概念。当目标代码执行的时候,进程不仅仅包括汇编代码,它由数据、资源、状态和一个虚拟的计算机组成。进程ID每个进程都由一个唯一的标识符表示,即进程ID,简称pid。系统保证在某时刻每个pid是唯一的。空闲进程(idleprocess)——当没有其他进程在运行时,内核所运行的进程——它的pid是0。在启动后,内核运行的第一个进程称为init进程,它的pid是1。
桔子满地
·
2020-08-26 07:33
Linux C 编程一站式学习记录(一)- 编程思想
书籍囊括了程序设计基本思想和开发调试方法,以Linux平台为载体介绍C语言基础及程序工作原理,Linux
系统编程
,对计算机组成、C语言、操作系统、编译原理等课程知识达到融汇贯通。
长赢之路
·
2020-08-26 07:12
读书笔记
CG
系统编程
练习题
目录日历问题成绩大排队最少钱币数写出来吧字符串数字置换到底买不买选美比赛数码管挖掘机技术哪家强多项式加法恺撒Caesar密码在霍格沃茨找零钱拼写检查蛇行矩阵公交系统部分A+B数塔小丑排序绩点计算金币亲和数数的距离差小希的数表最简单的计算机个位数统计相同生日锤子剪刀布7,还是7点球大战字符串排序飞行棋487-3279Web导航Engine-字符串世界杯来了电能消耗n,还是n缺席考试的是谁?循环数可删
didiaola4003
·
2020-08-25 16:24
测试
内存管理
操作系统
Linux
系统编程
10:Socket编程3-网络模型
1.OSI七层模型No.模型功能1物理层比特流传输2数据链路层网络控制、链路纠错3网络层寻址,路由4传输层建立主机端到端的连接5会话层建立、维护和管理会话6表示层格式转化,加密解密7应用层提供应用程序间通信1.1常见物理层协议No.模型e.g.1串口/COM口RS-232(仪表接口,智能仪表);RS-485(联网仪表接口)2并行/LPT口IEEE1284(打印口,打印机扫描仪)3USBUSB2.0
jdzhangxin
·
2020-08-25 08:20
Unix
系统编程
文件I/O基础知识
文件描述符对于内核而言,所有打开的文件都通过文件描述符引用,文件描述符是一个非负整数,当打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符,当读、写一个文件时,使用open或create返回的文件描述符标识该文件,将其传递给read或write。按照惯例,UNIX系统shell把文件描述符0与进程的标准输入关联,文件描述符1与标准输出关联,文件描述符2与标准错误关联。在符合POSI
camel@Y
·
2020-08-25 03:48
Linux
open
lseek
应届毕业生面试宝典(仅限IT行业)------大学毕业时准备的资料
包括C、
系统编程
、网络编程、BS等....你要是应届毕业生若是会这些,基本上哪家公司都会抢着要你。
zhang-la--la
·
2020-08-25 02:23
c语言
如何在Windows上制作一个包含.lib和.dll的Rust Crate包
最近看了下Rust,作为
系统编程
语言,真的是很复杂。我计划做一个简单的Rust模块,用于调用DynamsoftBarcodeReaderSDK,然后打包发布到https://crates.io/。
yushulx
·
2020-08-24 20:44
Rust
Rust
barcode
Crate
DLL
Rust FFI 编程 - libc crate
前文警示:如果对Unix环境
系统编程
没有基础知识的话,本文会看得云里雾里。我们在做Rust开发编译的时候,常常能在依赖列表中,看到libc这个crate的身影。
MikeLoveRust
·
2020-08-24 20:23
Rust FFI 编程 - nix crate
在Rust中使用nix这个库,在某些情况下可以简化Unix
系统编程
。本文主要包括以下内容:前言:什么是Unix
系统编程
?nix库介绍nix库使用示例什么是Unix
系统编程
?
MikeLoveRust
·
2020-08-24 20:23
微软:Rust是安全
系统编程
行业的“最佳机会”
不管软件公司投入多少工具资源、培训资源。RyanLevick认为:“C++本质上不是安全的语言,”微软云开发倡导者,在上个月的AllThingsOpen虚拟会议,解释了为什么Microsoft逐渐从C/C++转移到Rust构建其基础结构软件。并鼓励其他软件行业巨头考虑相同的问题。他说:“我们所使用的语言由于年代久远,来自不同时代,因此无法为我们提供保护自己免受此类漏洞攻击的能力。C++不是一种内存
誉儿
·
2020-08-24 17:39
rust-lang
rust
从裸机编程到嵌入式Linux编程思想的转变------分而治之:驱动和应用程序
Linux也有一段时间了,很奇怪的是很多书讲驱动编程方面的知识,也有很多书将ARM9方面的知识,但是从以前51形式的(对寄存器直接操作,初始化芯片的功能模块)编程方法,和思维模式,变换为基于Linux操作
系统编程
memoryjs
·
2020-08-24 15:31
嵌入式学习
C语言嵌入式
系统编程
之软件架构篇
模块划分的“划”是规划的意思,意指怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能(依功能进行划分在面向对象设计中成为一个错误,牛顿定律遇到了相对论),C语言模块化程序设计需理解如下概念:(1)模块即是一个.c文件和一个.h文件的结合,头文件(.h)中是对于该模块接口的声明;(2)某模块提供给其它模块调用的外部函
Destory_
·
2020-08-24 13:32
关于LINUX
系统编程
架构问题——4412 camera V4L2 RTMP流工程源码分析
在程序猿界混迹了多年,一直有个苦恼的问题,不管是什么样子的编程,最早的汇编,后来C语言,又接触了JAVA,始终有个念头就是整体程序架构问题,不管是你自己用不用操作系统,都要有一套很出色的编程模板。当然自己能搞出来的绝对是要花费大把时间,然而对于工作而言时间确实是非常奢侈的东西。那么,另一种方法就出现了,“抄袭”,但抄袭也是要自己有两把刷子的,而且要有广阔的眼界,有了眼界你才能找到多种多样的模式,模
阿龙.CaRn
·
2020-08-24 11:22
Linux
编程架构
Linux
系统编程
10:Socket编程1-概念
1.套接字1.1什么是socketsocket是一个编程接口socket是一种特殊的文件描述符everythinginUnixisafile1.2协议域domainNo.参数含义1AF_INETIPv42AF_INET6IPv63AF_LOCALUnix域1.3类型typeNo.类型Type作用说明1流式套接字SOCK_STREAM提供面向连接、可靠的数据传输服务,数据按字节流、按顺序收发,保证在
jdzhangxin
·
2020-08-24 05:30
Golang面试精编1
谷歌开发的一种
系统编程
语言;它具有内置的垃圾收集机制;支持高并发;代码可以编译成单个可执行二进制文件,不需要添加库或运行时环境即可在服务器上执行;Golang是否可以声明一个类?
水木·圳烜
·
2020-08-24 02:58
Go语言面试题
Linux
系统编程
:多线程交替打印ABC
引言分享关于线程的一道测试题,因为网上基本都是Java的解决方法,决定自己写一篇来记录一下线程的学习。问题描述编写一个至少具有三个线程的程序(称之为线程A、B和C),其中线程A输出字符’A’,线程B输出字符’B’,线程C输出字符’C’。使得最终输出结果为“ABCABCABC…”。思路拿到这题后,我的想法是把问题简化。原题让我们交替打印ABC,那么我们只要先考虑如何交替打印AB即可,然后在B之后衔接
NiXGo
·
2020-08-24 02:34
多线程
linux
操作系统
c语言
非root用户,用putty连接服务器,启动jupyter notebook教程
分类:Ubuntupython操作
系统编程
语言Ubuntu18.0
高锦-生信
·
2020-08-24 00:23
机器学习
上一页
24
25
26
27
28
29
30
31
下一页
按字母分类:
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
其他