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系统编程
》学习笔记(从51到55)
五十一.kill函数的使用这里我们写一个kill.c#include#include#include#include#include#include#includeintmain(intargc,constchar*argv[]){pid_tpid=fork();if(pid==-1){perror("forkerror");exit(1);}if(pid>0){while(1){printf("
garrulousabyss
·
2020-09-14 22:52
Linux网课笔记
准备c++进阶基础(一)
函数11.1函数重载12封装继承多态12.1拷贝构造函数12.2浅拷贝深拷贝13初始化列表14this15友元16运算符重载17多态17.1多态原理18纯虚函数抽象类19虚析构纯虚析构20模板分文件编写
Linux
胡子拉碴叔
·
2020-09-14 21:25
C/C++编程学习
嵌入式Linux系统开发
linux系统编程
介绍
Linux系统编程
介绍
Linux系统编程
介绍什么叫做
Linux系统编程
?
Linux系统编程
:使用Linux提供的API进行编程。
Skilled_Beginner
·
2020-09-14 11:36
Win64 驱动
内核编程
-22.SHADOW SSDT HOOK(宋孖健)
SHADOWSSDTHOOKHOOK和UNHOOKSHADOWSSDT跟之前的HOOK/UNHOOKSSDT类似,区别是查找SSSDT的特征码,以及根据索引计算函数地址的公式,还有一个就是吧跳转函数写在什么位置,SSDT的时候是写在蓝屏函数里了。一、获得wKeServiceDescriptorTableShadow的地址这个跟获得KeServiceDescriptorTable差不多,唯一不同就是
TK13
·
2020-09-14 04:10
驱动内核编程
Linux系统编程
——09-linux-day06(进程间通信)
在学习
Linux系统编程
总结了笔记,并分享出来。有问题请及时联系博主:Alliswell_WP,转载请注明出处。
AllisWell_WP
·
2020-09-13 19:49
Linux系统编程
之实现cp命令
Linux系统编程
之实现cp命令cp命令是经常使用的命令,复制文件,而构思它的编写过程也非常直观。把文件中的数据读出来,创建一个新文件,再把数据写进去。这就是一个很常规的思路。
星星星星星_
·
2020-09-13 17:58
Linux系统编程
Linux系统编程
之实现who命令
我们需要了解到一个事实就是,在Linux练习实现系统编程的各个程序时候,我们完全可以对现有命令进行改进,也就是说可以使用自己所写的更适合自己习惯的命令(当然一般linux的命令更加全面,觉得参数麻烦也可以通过快捷命名使用),具体可以查看Linux环境变量的讨论。了解whowho命令是显示目前登录系统的用户信息。执行who命令可列出登入帐号,使用的终端机,登入时间以及从何处登入。想写任何命令的程序编
星星星星星_
·
2020-09-13 17:26
Linux系统编程
掌握 Linux 调试技术 +Debian/Ubuntu
内核编程
者必备
掌握Linux调试技术+Debian/Ubuntu
内核编程
者必备2010年11月04日http://blog.csdn.net/adcxf/archive/2008/09/13/2924723.aspx
iteye_10030
·
2020-09-13 15:18
数据结构与算法
内存管理
操作系统
如何查看Linux内核中printk打印的信息?
在
内核编程
只能使用printk而不能使用printf,那我们如何才能查看到我们用printk输出的信息呢?答案就是在shell中使用dmesg指令!!
放羊娃
·
2020-09-13 15:32
Linux
掌握 Linux 调试技术 +Debian/Ubuntu
内核编程
者必备
掌握Linux调试技术http://blog.csdn.net/adcxf/archive/2008/09/13/2924723.aspx您可以用各种方法来监控运行着的用户空间程序:可以为其运行调试器并单步调试该程序,添加打印语句,或者添加工具来分析程序。本文描述了几种可以用来调试在Linux上运行的程序的方法。我们将回顾四种调试问题的情况,这些问题包括段错误,内存溢出和泄漏,还有挂起。本文讨论了
csu_yang
·
2020-09-13 15:02
Linux
开发
头文件与函数定义分离的处理
而这次我编译
Linux系统编程
之实现who命令的时候采用的是将函数编译为静态库进行链接的形式。首先要把函数体拿出使用gcc-cfilen
星星星星星_
·
2020-09-13 14:52
基础部分
python学习笔记——多进程间通信——Linux信号基础
1信号的基本描述Signal信号(其全程为软中断信号)是
Linux系统编程
中非常重要的概念,信号是异步进程中通信的一种方式。作用是通知进程发生了异步事件。
weixin_30323961
·
2020-09-13 13:08
linux系统编程
(一)文件编程
简介:Linux一点哲学,“一切皆为文件”;在Linux中对目录和设备的操作都等同于对文件的操作,都是使用文件描述符来进行的。Linux文件可分为:普通文件,目录文件,链接文件,设备文件;Linux系统调用及用户编程接口(API):所谓系统调用是指操作系统提供给用户的一组“特殊”接口,用户程序可以通过这组“特殊”接口来获得操作系统内核提供的的服务由于在Linux中,为了更好地保护内核空间,将程序的
文曲尽墨琛乃缺
·
2020-09-13 12:33
linux嵌入式系统
C语言
第一个简单的
内核编程
实验:hello.c
内核编程
入门,就以最为简单的hello.c为例。环境:Redhat9.0,内核版本2.4.20-8。虽然现在2.6.x的内核很早就就发布了,但是毕竟很多公司还在使用2.4.x的内核。
风之诺
·
2020-09-13 11:39
Linux系统编程
思维导图:基础指令,常用工具,进程,基础IO,IPC,线程;思维导图因为图片过大所以放了链接,需要的可以下载
文章目录思维导图基础指令目录相关文件相关查找匹配权限相关进程相关网络其他常用工具系统包管理个人编程vimgcc/g++gdb项目编程make/makefilegit进程冯诺依曼操作系统进程概念进程状态环境变量程序地址空间操作系统内存管理内存置换算法进程控制进程创建进程等待进程终止程序替换基础IO标准库IO接口系统调用IO接口文件描述符库的生成与使用库的生成库的使用文件系统IPC概念为什么要给用户提
酱香巧克粒
·
2020-09-13 10:21
编写和运行模块
本章将介绍模块编程和
内核编程
所需的所有必要的概念。我们将要不多的篇幅来编写和运行一个完整的模块。这种专业技术(expertise)是编写如何模块化设备驱动程序的基础。
iu_81
·
2020-09-13 10:10
OPencl学习笔记3
Chapter4
内核编程
:数据类型和设备内存A
内核编程
简介Hello_kernel.cl:_kernelvoidhello_kernel(_globalchar16*msg){*msg=(char16)
邹小妹
·
2020-09-13 08:46
OPencl实战
学习笔记
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
内核编程
》,看到键盘过滤部分,记下笔记,仅供参考,有理解不对之处,还望大家指正。现在来说一下传统型键盘过滤,就是把自己的设备对象绑定在KbdClass设备对象之上。
细粉条
·
2020-09-13 02:17
Driver
Linux系统编程
(35)—— socket编程之TCP服务器的并发处理
我们知道,服务器通常是要同时服务多个客户端的,如果我们运行上一篇实现的server和client之后,再开一个终端运行client试试,新的client就不能能得到服务了。因为服务器之支持一个连接。网络服务器通常用fork来同时服务多个客户端,父进程专门负责监听端口,每次accept一个新的客户端连接就fork出一个子进程专门服务这个客户端。但是子进程退出时会产生僵尸进程,父进程要注意处理SIGC
weixin_30527551
·
2020-09-12 20:13
学习嵌入式4412开发板-手把手配套视频_2000人群组在线交流
免费视频教程(迅为一线研发工程师录制-不断更新)第一部分迅为电子开发板入门视频(数量:53节)第二部分iTOP-4412开发板硬件设计指导视频(数量:4节)第三部分uboot教程(数量:10节)第四部分
Linux
anlv5037
·
2020-09-12 19:20
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
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系统编程
八、
Linux系统编程
-进程(一)进程概念、进程数据结构、进程状态变迁、进程创建和撤销
一、什么是进程从用户角度来说,进程是程序的一次动态执行过程;从操作系统的核心来看,进程是操作系统分配的内存、CPU时间片等资源的基本单位。每一个进程都有自己独立的地址空间与执行状态。二、进程数据结构进程包含以下结构:代码段+数据段+堆栈段+PCB(进程控制块)PCB:用于描述进程情况及控制进程运行所需的全部信息。代码段:是进程中能被进程调度程序在CPU上执行的程序代码段。数据段:一个进程的数据段,
Tianttt
·
2020-09-10 17:22
Linux系统编程
内核编程
中的EXPORT_SYMBOL
转载自maypeng.cublog.cnEXPORT_SYMBOL标签内定义的函数或者符号对全部内核代码公开,不用修改内核代码就可以在您的内核模块中直接调用,即使用EXPORT_SYMBOL可以将一个函数以符号的方式导出给其他模块使用。您还可以手工修改内核源代码来导出另外的函数,用于重新编译并加载新内核后的测试。Linuxsymbolexportmethod:[1]Ifwewantexportth
macrossdzh
·
2020-09-10 15:08
linux内核
Linux系统编程
获取指定接口的IPv6地址
在Linux系统中需要编程获取某个接口的IPv4地址比较常见,可以使用ioctl函数等方法,但是要获取IPv6地址,以前的一些方法就不一定适合,从网上查找了很多方法,有两种我试过都可以得到相应的IPv6地址,此处直接以一段代码做示例展示如何获取指定接口的(IPv6)本地链路地址(注意,前提是你的Linux支持IPv6,目前流行的大多数Linux系统早已支持IPv6).#include#includ
h_cszc
·
2020-09-10 13:25
linux
linux内核调试环境搭建(VM_Centos+KGDB)
插桩法”,printk各种调试信息,才能判断是哪句代码有了问题,但是对于内核来说,这种方式还是很不好用,有的模块在安装时因为功能实现的不同,导致机器直接卡死,还是有着不少困难,直到系统的学习Linux
内核编程
时才接触到内核调试这一说法
星辰照耀你我
·
2020-08-26 11:13
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
读书笔记
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
windbg 调试virtualbox xp问题及解决
按照《从汇编语言到windows
内核编程
》中方法设置完以后,windbg中提示:Waitingtoreconnect....底下出现:Debuggeenotconnected网上找到一篇解决方法http
buck
·
2020-08-25 02:03
windows
问题&解决方案
Windows
内核编程
基础篇之字符串的拷贝
因为字符串不再是空结束的,所以用wscpy来拷贝字符串是不行的。UNICODE_STRING可以用RtlCopyUnicodeString来进行拷贝,在进行这种拷贝的时候,最需要注意的一点是:拷贝目的字符串buffer必须有足够的空间。如果buffer的空间不足,字符串会考倍的不完全。这是一个比较隐蔽的错误。下面举个例子:UNICODE_STRINGdst;///--目的字符串WCHARdst_b
PandaMohist
·
2020-08-24 13:16
关于
LINUX系统编程
架构问题——4412 camera V4L2 RTMP流工程源码分析
在程序猿界混迹了多年,一直有个苦恼的问题,不管是什么样子的编程,最早的汇编,后来C语言,又接触了JAVA,始终有个念头就是整体程序架构问题,不管是你自己用不用操作系统,都要有一套很出色的编程模板。当然自己能搞出来的绝对是要花费大把时间,然而对于工作而言时间确实是非常奢侈的东西。那么,另一种方法就出现了,“抄袭”,但抄袭也是要自己有两把刷子的,而且要有广阔的眼界,有了眼界你才能找到多种多样的模式,模
阿龙.CaRn
·
2020-08-24 11:22
Linux
编程架构
Linux内核及
内核编程
之一Linux内核的发展与演变
3.1Linux内核的发展与演变Linux操作系统是UNIX操作系统的一种克隆系统,是一种类UNIX操作系统,诞生于1991年10月5日(第一次正式向外公布的时间),起初的作者是LinusTorvalds。Linux操作系统的诞生、发展和成长过程依赖着5个重要支柱:UNIX操作系统、Minix操作系统、GNU计划、POSIX标准和Internet。1.UNIX操作系统UNIX操作系统是美国贝尔实验
静能生悟
·
2020-08-24 06:02
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
Linux
内核编程
-- Hello Mod
1.hellomod#include#include#includestaticint__inithello_start(void){printk("hello,thismoudlestartwork!\n");return0;}staticvoid__exithello_exit(void){printk("hello,thismouleexit!\n");}module_init(hello_
Riv3r
·
2020-08-24 05:54
linux内核编程
linux内核编程
Linux系统编程
:多线程交替打印ABC
引言分享关于线程的一道测试题,因为网上基本都是Java的解决方法,决定自己写一篇来记录一下线程的学习。问题描述编写一个至少具有三个线程的程序(称之为线程A、B和C),其中线程A输出字符’A’,线程B输出字符’B’,线程C输出字符’C’。使得最终输出结果为“ABCABCABC…”。思路拿到这题后,我的想法是把问题简化。原题让我们交替打印ABC,那么我们只要先考虑如何交替打印AB即可,然后在B之后衔接
NiXGo
·
2020-08-24 02:34
多线程
linux
操作系统
c语言
Linux学习资源汇总
Linux学习资源汇总:《Linux就该这么学》Linux中国开源社区linux&unix程序开发基础教程---读书笔记linux
内核编程
Linux学习教程鸟哥的Linux私房菜Linux实验室Linux
jayjaydream
·
2020-08-23 14:12
Linux内核设计与实现——从内核出发
内核开发的特点
内核编程
是不能访问C库。
内核编程
是不能使用GNUC。缺乏像用户空间编程时的内存访问保护机制。
内核编程
时浮点数很难使用。内核只有一个很小的定长堆栈,编译时配置大小通常在8K。
_飞翔的企鹅_
·
2020-08-23 05:35
Linux系统
上一页
12
13
14
15
16
17
18
19
下一页
按字母分类:
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
其他