自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

RToax

Just for Fun

  • 博客(65)
  • 资源 (126)
  • 论坛 (2)
  • 问答 (2)
  • 收藏
  • 关注

原创 frameworks & framebuffer framework & framebuffer driver

Table of ContentsExample of frameworksExample of the framebuffer frameworkSkeleton exampleExample of frameworksExample of the framebuffer frameworkKernel option CONFIG_FB Implemented in...

2019-02-28 22:44:16 171

原创 File operations: struct file_operations, framework

Table of ContentsFrom the syscall to your driverIn fs/read_write.cioctl mechanismUse the ioctl() system call.Example of frameworksstruct file_operations { struct module *owner; lo...

2019-02-28 22:38:18 139

原创 Userspace sees three main types of devices

1. Character devices is the most common type of devices. Initially for devices implementing streams of bytes, it is now used for a wide range of devices: serial ports, framebuffers, video capture devi...

2019-02-28 22:22:12 101

原创 System calls

Kernel programming is vital for as long as new hardware is being designed and produced or old-obsolete hardware is maintained.● A syscall causes a programmed exception (trap) on the CPU○ syscall...

2019-02-28 21:54:42 136

原创 LKMs:Loadable Kernel Modules

Loadable Kernel Modules● LKMs (Loadable Kernel Modules) ● Pre-compiled binary pieces ● Each piece is called “module” ● Can be loaded at runtime ● Extend the functionality of the system ● Enforc...

2019-02-28 21:46:05 203

原创 Introduction to the Linux Kernel

● System call interface (SCI)○ A thin layer that provides a method to interact from user space to kernel space● Process Management (PM)○ Create, destroy processes ○ Communication betwee...

2019-02-28 21:42:52 107

原创 Linux设备驱动与整个软硬件系统的关系

Table of Contents编写Linux设备驱动的技术基础编写Linux设备驱动的技术基础编写Linux 设备驱动要求工程师具有良好的硬件基础,懂得SRAM、Flash、SDRAM、磁盘的读写方式,UART、I2C、USB等设备的接口,轮询、中断、DMA的原理,PCI总线的工作方式以及CPU的内存管理单元(MMU)等。 编写Linux 设备驱动要求工程师具有良好的C语言基...

2019-02-27 22:14:43 300

原创 glibc-2.9: list.h

list.h nptl\sysdeps\pthread 3151 1/1/2003 26list.h/* Copyright (C) 2002 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Ulrich Drepper <...

2019-02-27 21:50:45 331

转载 the writers awake the readers

Table of Contentssleepy.cmakefilesleepy.c/* * sleepy.c -- the writers awake the readers * * Copyright (C) 2001 Alessandro Rubini and Jonathan Corbet * Copyright (C) 2001 O'Reilly & As...

2019-02-27 21:38:47 76

原创 struct seq_file

Table of Contentsstruct seq_file一个例子struct seq_filestruct seq_file { char *buf; //在seq_open中分配,大小为4KB size_t size; //4096 size_t from; //struct file从seq_file中向用户态缓冲区...

2019-02-27 21:36:05 203

原创 几个简单的Linux驱动程序

Table of Contentshello.chellop.c带参数输入complete.chello.c/* * $Id: hello.c,v 1.5 2004/10/26 03:32:21 corbet Exp $ */ ...

2019-02-27 21:32:11 328

转载 如何创建一个最小的串口、TTY设备包括虚拟控制台,串口以及伪终端设备的驱动程序

来源:LINUX设备驱动程序第三版配套源码Table of Contentstiny_serial.ctiny_tty.cmakefiletiny_serial.c/* * Tiny Serial driver * * Copyright (C) 2002-2004 Greg Kroah-Hartman (greg@kroah.com) * * This pro...

2019-02-27 21:25:33 463

转载 一个Linux USB驱动:USB Skeleton driver - 2.0

来源:LINUX设备驱动程序第三版配套源码Table of Contentsusb-skeleton.cmakefileusb-skeleton.c/* * USB Skeleton driver - 2.0 * * Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com) * * This progra...

2019-02-27 21:19:12 259

转载 一个Linux驱动:Simple - REALLY simple memory mapping demonstration.

来源:LINUX设备驱动程序第三版配套源码Table of Contentssimple.csimple_loadsimple_unloadMakefilesimple.c/* * Simple - REALLY simple memory mapping demonstration. * * Copyright (C) 2001 Alessandro Rubi...

2019-02-27 21:16:12 142

原创 dev_t的主次编号

在内核中, dev_t 类型(在 <linux/types.h>中定义)用来持有设备编号 -- 主次部分都包括. 对于 2.6.0 内核, dev_t 是 32 位的量, 12 位用作主编号, 20 位用作次编号. 你的代码应当, 当然, 对于设备编号的内部组织从不做任何假设; 相反, 应当利用在<linux/kdev_t.h>中的一套宏定义. 为获得一个 dev_t 的主...

2019-02-27 21:05:24 177

原创 ls -l字符设备

字符设备通过文件系统中的名子来存取. 那些名子称为文件系统的特殊文件, 或者设备文件, 或者文件系统的简单结点; 惯例上它们位于 /dev 目录. 字符驱动的特殊文件由使用ls -l 的输出的第一列的"c"标识. 块设备也出现在 /dev 中, 但是它们由"b"标识.ls -lcrw-rw-rw- 1 root root 1, 3 Apr 11 2002 nullcrw-----...

2019-02-27 21:03:52 503

原创 Linux驱动开发快速参考

本节总结了我们在本章接触到的内核函数, 变量, 宏定义, 和 /proc 文件. 它的用意是作为一个参考. 每一项列都在相关头文件的后面, 如果有. 从这里开始, 在几乎每章的结尾会有类似一节, 总结一章中介绍的新符号. 本节中的项通常以在本章中出现的顺序排列:用户空间工具, 加载模块到运行中的内核以及去除它们.insmod modprobe rmmod指定模块的初始化和清理函...

2019-02-26 22:57:04 106

原创 模块加载竞争

到目前, 我们的讨论已来到一个模块加载的重要方面: 竞争情况.如果你在如何编写你的初始化函数上不小心, 你可能造成威胁到整个系统的稳定的情形. 我们将在本书稍后讨论竞争情况;现在, 快速提几点就足够了:首先你应该一直记住, 内核的某些别的部分会在注册完成之后马上使用任何你注册的设施. 这是完全可能的, 换句话说, 内核将调用进你的模块, 在你的初始化函数仍然在运行时. 所以你的代码必须...

2019-02-26 22:51:27 91

原创 内核符号表

 我们已经看到 insmod 如何对应共用的内核符号来解决未定义的符号. 表中包含了全局内核项的地址 -- 函数和变量 -- 需要来完成模块化的驱动. 当加载一个模块, 如何由模块输出的符号成为内核符号表的一部分. 通常情况下, 一个模块完成它自己的功能不需要输出如何符号. 你需要输出符号, 但是, 在任何别的模块能得益于使用它们的时候.新的模块可以用你的模块输出的符号, 你可以堆叠新的模...

2019-02-26 22:23:04 176

原创 __attribute__((noreturn))

This attribute tells the compiler that the function won't ever return, and this can be used to suppress errors about code paths not being reached. The C library functions abort() and exit() are both d...

2019-02-26 22:02:00 247

转载 __attribute__((const)):只准许调用一次?

the compiler can choose to call the function just once and cache the return value.This attribute marks the function as considering only its numeric parameters. This is mainly intended for the compil...

2019-02-26 22:01:55 369

转载 ifconfig源代码-NetBSD

NetBSD是一个免费的,具有高度移植性的 UNIX-like 操作系统,是现行可移植平台最多的操作系统,可以在许多平台上执行,从 64bit alpha 服务器到手持设备和嵌入式设备。NetBSD计划的口号是:"Of course it runs NetBSD"。它设计简洁,代码规范,拥有众多先进特性,使得它在业界和学术界广受好评。由于简洁的设计和先进的特征,使得它在生产和研究方面,都有卓越的表...

2019-02-26 22:01:47 107 1

原创 __attribute__((format(printf,m,n)))

可以使编译器检查函数声明和函数实际调用参数之间的格式化字符串是否匹配。This __attribute__ allows assigning printf-like or scanf-like characteristics to the declared function, and this enables the compiler to check the format string ag...

2019-02-25 22:21:05 489

原创 __attribute__((unused)):可能不会用到,消除编译警告

 __attribute__ unused:可能不会用到,消除编译警告One of the easiest attributes to use, this marks a variable as intentionally being possibly unused. Not only does this quiet the compiler from issuing an unused-...

2019-02-25 22:17:59 767

转载 Application layer protocols

https://en.wikipedia.org/wiki/Category:Application_layer_protocolsCategory:Application layer protocolsFrom Wikipedia, the free encyclopediaJump to navigationJump to searchFor more information,...

2019-02-25 22:11:49 242

转载 Telnet

From Wikipedia, the free encyclopediaJump to navigationJump to searchNot to be confused with Telenet.For the Telnet gateway to Wikimedia content, see meta:Telnet gateway This ar...

2019-02-25 22:07:59 242

原创 glibc-2.9: pwd.h

Table of Contentspwd.h    include    2156    8/10/2002    pwd.h    pwd    6079    7/23/2004    pwd.h    include    2156    8/10/2002    #ifndef _PWD_H#include <pwd/pwd.h>/* Now defin...

2019-02-25 22:03:09 356

原创 errno:No such file or directory

Table of Contentsdl-minimal.c    elf    9436    7/5/2007    205errlist.c    sysdeps\gnu    40518    12/25/2005    1errno.h    sysdeps\mach\hurd\bits    15606    8/27/2002    dl-minimal.c    el...

2019-02-25 21:56:26 871

转载 FPGA基础

 什么是FPGA?FPGA(Field Programmable Gate Array)即现场可编程门阵列,它是在PAL(Programmable Array Logic) 、GAL(Globle Programmable Logic)、EPLD(Electrically Programmable Logic Device )等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(AS...

2019-02-25 21:40:00 105

原创 FPGA的演进路线

2019-02-25 21:32:22 247

原创 软核、硬核以及固核的概念

Table of Contents1. 软核(Soft IP Core)2. 固核(Firm IP Core)3. 硬核 (Hard IP Core)IP(Intelligent Property) 核是具有知识产权核的集成电路芯核总称,是经过反复验证过的、具有特定功能的宏模块,与芯片制造工艺无关,可以移植到不同的半导体工艺中。到了SOC 阶段,IP 核设计已成为ASIC 电路设计...

2019-02-25 21:31:06 626

原创 FPGA结构

对PROM、EPROM、E2PROM 熟悉的人都知道这些可编程器件的可编程原理是通过加高压或紫外线导致三极管或MOS 管内部的载流子密度发生变化,实现所谓的可编程,但是这些器件或只能实现单次可编程或编程状态难以稳定。FPGA 则不同,它采用了逻辑单元阵列LCA(Logic Cell Array) 这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出...

2019-02-25 21:27:48 790

转载 CentOS 7 怎样安装或升级最新的内核?

https://jingyan.baidu.com/article/0a52e3f4ddc749bf62ed7221.htmlTable of Contents简介:第一步:检查已安装的内核版本第二步:在 CentOS 7 中升级内核第三步:设置 GRUB 默认的内核版本第四步:重启并验证最新的内核已作为默认内核总结:简介:虽然有些人使用 Linux 来表示整个...

2019-02-24 11:32:56 162

转载 linux内核源码目录结构分析

https://blog.csdn.net/ultraman_hs/article/details/52931121注:本文是学习朱老师课程整理的笔记,基于linux2.6.35.7和九鼎X210BV3S开发板进行移植。Table of Contents /arch/block/crypto/Documentation/drivers/firmware/...

2019-02-24 11:12:09 305

转载 为什么工程师要掌握FPGA开发知识?

作者:张国斌、田耘2008 年年初,某著名嵌入式系统IT 公司为了帮助其产品售后工程师和在线技术支持工程师更好的理解其产品,举行了ASIC/FPGA 基础专场培训.由于后者因为保密制度而只能接触到板级电路图和LAYOUT,同时因ASIC/FPGA 都是典型的SoC 应用,通常只是将ASIC/FPGA 当作黑盒来理解,其猜测性读图造成公司与外部及公司内部大量的无效沟通.培训结束后, 参与者纷纷表...

2019-02-23 22:21:52 192

转载 另一个Verilog程序

/*-------------------------------------------------------------------------This confidential and proprietary software may be only used as authorizedby a licensing agreement from CrazyBingo.(C) COP...

2019-02-23 22:17:43 217

原创 第一个Verilog程序

一个Verilog程序/*-------------------------------------------------------------------------CONFIDENTIAL IN CONFIDENCEThis confidential and proprietary software may be only used as authorizedby a lice...

2019-02-23 22:15:47 1185

原创 unpipc.h

/* headers on Linux for unpv2 , vonzhou*/#ifndef __unpipc_h#define __unpipc_h#include <sys/types.h> /* basic system data types */#include <sys/time.h> /* timeval{} for select() */...

2019-02-23 22:07:00 384

原创 select的用法

 #include <stdio.h>#include <stdlib.h>#include <sys/time.h>#include <sys/types.h>#include <unistd.h>#define debug() printf("\033[31m%s\033[m:%d\n", __func__, __L...

2019-02-23 20:29:45 422 3

原创 C语言实现Telnet远程终端

Table of Contents服务端server.c客户端client.c头文件mt.hREADME服务端server.c#include "mt.h"#define D(...) fprintf(new_stream, __VA_ARGS__)int main() { int sock; struct sockaddr_in name; char bu...

2019-02-23 20:20:49 3605 3

MPI, OpenMP, CUDA, OpenCL, OpenACC,

Brief Introduction to OpenMP-PPT,CUDA-C编程-作图,CUDA-C编程,MPI The Complete Reference,MPICH User’s Guide,mpich-3.0.4-installguide,MPI并行程序设计-完整版-高性能计算之并行编程技术,OpenACC应用编程接口-v2.0-中文版-小小河20130826,Opencl2.0-高性能计算-中文版,Opencl规范中文版,OpenHMPP,OpenMP,OpenMP简易教程,OpenMP编译原理及实现技术,Parallel Programming with MPI on Clust

2018-06-03

中国电信DPDK技术白皮书.pdf

中国电信DPDK技术白皮书.pdf,中国电信DPDK技术白皮书.pdf,中国电信DPDK技术白皮书.pdf,中国电信DPDK技术白皮书.pdf

2020-10-25

Makefile不编译已经编译过的文件

Makefile不编译已经编译过的文件

2019-03-06

《深入浅出DPDK》全书读书笔记.pdf

《深入浅出DPDK》全书读书笔记.pdf

2020-10-29

GTK2.0的全部demo源代码

GTK2.0的全部demo源代码, GTK-demo-application, 平台:linux

2018-05-03

TR069 ACS模拟器测试脚本.rar

TR069 ACS模拟器测试脚本

2020-03-24

HTML+CSS从入门到精通(中文)

HTML+CSS从入门到精通(中文)

2018-10-20

vim中文手册-备用下载.rar

vim中文手册-备用下载.rar

2020-07-27

基于GPU加速的二维VTI介质正演模拟与逆时偏移

二维VTI介质拟声波正演模拟、逆时偏移与ADCIGs提取,二维VTI介质拟声波正演模拟、逆时偏移与ADCIGs提取,

2018-06-02

OpenCV自带视频测试文件vtest.avi

opencv avi 视频,opencv avi 视频,opencv avi 视频,opencv avi 视频,opencv avi 视频,opencv avi 视频

2018-05-04

Dell EMC PowerEdge R740技术规格.pdf

Dell EMC PowerEdge R740技术规格

2021-01-03

《CUDA C编程》CodeSamples源代码

《CUDA C编程》CodeSamples源代码,《CUDA C编程》CodeSamples源代码

2018-06-03

C Reference Manual.pdf

C Reference Manual,C Reference Manual,C Reference Manual,C Reference Manual

2019-08-04

LEC12_SWAP.pdf

linux swap

2021-01-03

BPF CO-RE(Compile Once – Run Everywhere).pdf

BPF

2021-01-03

The BSD Packet Filter A New Architecture for User-level Packet Capture.pdf

BPF

2021-01-03

GDB Internals.pdf

GDB Internals.pdf

2021-01-03

Virtual Memory and Linux - AlanOtt.pdf

Linux内存管理:Virtual Memory and Linux - AlanOtt.pdf;Linux内存管理:Virtual Memory and Linux - AlanOtt.pdf;Linux内存管理:Virtual Memory and Linux - AlanOtt.pdf

2020-11-10

MIT数字通信与网络简介.zip

MIT数字通信与网络简介

2020-11-08

Aarch64 Kernel Memory Management.pptx

aarch64 Linux Kernel Memory Management, aarch64 Linux Kernel Memory Management, aarch64 Linux Kernel Memory Management

2020-11-08

LKM:Linux Kernel Map(图解Linux内核)PDF,SVG,PNG格式

LKM:Linux Kernel Map(图解Linux内核)PDF,SVG,PNG格式,

2020-11-01

The BSD Packet Filter A New Architecture for User-level Packet Capture.pdf

The BSD Packet Filter A New Architecture for User-level Packet Capture.pdf,The BSD Packet Filter A New Architecture for User-level Packet Capture.pdf,The BSD Packet Filter A New Architecture for User-level Packet Capture.pdf

2020-10-30

XDP_DDoS_protecting_osd2017.pdf

XDP – eXpress Data Path Used for DDoS protection. 是基于 eBPF 实现的高性能、可编程的数据平面技术。

2020-10-10

CentOS7 Docker Tar镜像

CentOS7 Docker Tar镜像,

2020-07-28

极简化的TCP/UDP测试工具-吞吐量

test-throughput/ ├── client.c ├── common.c ├── common.h ├── main.c ├── Makefile ├── server.c ├── start.sh ├── test.sh ├── test.txt ├── throughput └── upload.sh

2020-07-22

f-stack-server-client.rar

f-stack的客户端服务端实现方法代码

2020-07-17

一些好用的icons(一共1000多个)

一些好用的icons(一共1000多个)

2020-07-14

slaballocators.pdf

slab分配器

2020-05-30

好玩的网页html文件与css

好玩的网页html文件与css

2020-05-05

An Introduction to libuv.pdf

An Introduction to libuv.pdf

2020-05-05

docs-libuv-org-en-v1.x.pdf

多平台支持库-异步I / O

2020-04-23

Linux内核图解LKM.pdf

https://makelinux.github.io/kernel/map/ https://makelinux.github.io/kernel/map/ https://makelinux.github.io/kernel/map/

2020-04-04

vxworks-product-overview.pdf

VxWorks的®,业界领先的实时操作系统,提供您所需要满足运行的最重要的关键基础设施的嵌入式计算系统的最高标准的所有性能,确定性,可靠性,安全性和安全功能。

2020-02-23

ONAP_CaseSolution_Architecture_Chinese_062519.pdf

ONAP架构概述

2020-02-19

conf20200210.darkTheme.xml

source insight 深色主题配置文件source insight 深色主题配置文件source insight 深色主题配置文件

2020-02-10

STC89C52RC基础实验例程.rar

STC89C52RC基础实验例程,STC89C52RC基础实验例程,STC89C52RC基础实验例程。STC89C52RC基础实验例程

2020-02-07

github-git-cheat-sheet-rt.pdf

github-git-cheat-sheet Git手册github-git-cheat-sheet Git手册

2019-11-23

24301-f30.pdf

24301-f30.pdf 3GPP TS 24.301 V15.3.0

2019-08-10

Git 使用方法.docx

Git 使用方法

2019-08-10

20190710.zip10款炫酷的HTML5动画特效

10款炫酷的HTML5动画特效,

2019-07-21

C语言如何从源函数中获取指向它的函数指针的地址

发表于 2020-05-21 最后回复 2020-06-15

Koma_Wong的留言板

发表于 2020-01-02 最后回复 2020-03-08

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除