自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (1)
  • 收藏
  • 关注

原创 Unix域套接字详解(附源码)

图1 Unix域套接字通信模型1.Unix域通信模型Unix域套接字通信模型如图1所示2.api接口1)socket()intsocket(intdomain,inttype,intprotocol);API定义是一样的,不过这里的第一个参数,也就是域一定要设置成AF_UNIX或AF_LOCAL,而不是普通TCP/IP套接字的AF_INET。第二个参数表示套接字的类型...

2021-12-01 14:34:20 558

原创 C++中private和public的区别

1.类的一个特征就是封装,public和private作用就是实现这一目的。所以:用户代码(类外)可以访问public成员而不能访问private成员;private成员只能由类成员(类内)和友元访问。2.类的另一个特征就是继承,protected的作用就是实现这一目的。所以:protected成员可以被派生类对象访问,不能被用户代码(类外)访问。private和protect在基类中没有区别,但是在派生类中有区别,在派生类类中可以访问protect成员,但是private不能访问

2021-08-14 19:23:57 5799

转载 arm 内存模拟磁盘

1.linux系统中自带ramdisk支持,即在内存中开辟一片内存作为磁盘,从而提高文件的访问速率,在drivers/brd.c文件中2.磁盘设备节点在/dev/ram0-/dev/ram153.在使用/dev/ram*之前需要先将磁盘格式化,利用mkesf2命令,默认将文件系统格式化为ext2格式4.如果不需要对磁盘进行分区,则直接挂载就可以使用mount /dev/ram* /mntumount /mnt5.如果需要对磁盘进行分区,则通过如下命令进行分区fdisk命令菜单

2020-05-31 20:07:16 398

原创 arm下嵌入式tftp、nfs加载内核文件系统服务搭建

一、tftp服务搭建1."sudo apt-get install xinetd" 安装xinetd,安装完成xinetd后,接下来安装tftp和tftpd,输入命令:“sudo apt-get install tftp tftpd”.然后建立TFTP配置文件,使用命令:"vi /etc/xinetd.d/tftp"建立文件,向文件中写入如下代码(必须按照格式严格对齐):service tftp{ protocol = udp port ...

2020-05-10 18:13:20 318

原创 浅谈arm linux下 tmpfs/ramfs/ramdisk

一、基本概念1.tmpfsTmpfs是一个虚拟内存文件系统,它不同于传统的用块设备形式来实现的Ramdisk,也不同于针对物理内存的Ramfs。 Tmpfs可以使用物理内存,也可以使用交换分区。在Linux内核中,虚拟内存资源由物理内存(RAM)和交换分区组成,这些资源是由内核中的虚拟内存子系统来负责分配和管理。 Tmpfs向虚拟内存子系统请求页来存储文件,它同...

2020-05-05 19:01:57 503

原创 linux添加sudoer用户

我们可以通过编辑器来打开/etc/sudoers,或者直接使用命令vi sudo来搞定这件事情。打开sudoers后,像如下那样加上自己的帐号保存后就可以了。

2020-04-12 17:34:30 1026

原创 linux标准输出重定向到ssh

背景:现场接串口调试头比较麻烦,因此需要将调试口输出重定向到ssh,具体修改方法如下#include <stdio.h>#include <stdlib.h>#include <string.h>#include <fcntl.h>#include <sys/ioctl.h>#include <unistd.h&...

2020-04-12 15:12:45 1625

原创 S5PV210-uboot分析(三)

2020.02.08Uboot启动过程分析1.启动的大概流程注意:开发板刚上电时,cpu会首先从0x00000000地址处取值,所有会由硬件电路将高地址的IROM映射到0x00000000处,然后去执行第零步:设置OM PIN引脚,就可以选择启动方式了,譬如从SD卡启动,emmc启动,norflash启动等等,我们这里假设从NAND启动。...

2020-02-09 17:13:02 338 1

原创 linux启动过程分析

一、linux启动的第一个进程linux启动后的第一个进程是init进程,进程号是1,因此init进程是其他所有进程的起点,init进程需要读取配置文件/etc/inittab配置文件,inittab是一个不可执行的文本文件,它有若干行指令所组成;# /etc/inittab::sysinit:/etc/init.d/rcSconsole::askfirst:-/bin/sh::on...

2020-02-06 20:35:18 380

原创 s5pv210开发版U盘的挂载方式

1.u盘插上之后在调试信息界面能看到说明U盘的设备为sda42.挂载到/mntmount /dev/sda4 /mnt3.卸载unmount /mnt

2020-02-06 17:26:39 149

转载 STDIN_FILENO和STDOUT_FILENO

转自:https://blog.csdn.net/sinat_25457161/article/details/48548231STDIN_FILENO:接收键盘的输入STDOUT_FILENO:向屏幕输出程序:接收用户在屏幕上输入的数据,并在屏幕上输出(要求使用read和wirte实现),用户输入quit就退出程序。图解说明:步骤:1、创建并编写源文件main.c:...

2019-07-06 12:57:48 657

转载 struct termios 结构体详解

转自:https://blog.csdn.net/vevenlcf/article/details/51096122一、数据成员termios 函数族提供了一个常规的终端接口,用于控制非同步通信端口。 这个结构包含了至少下列成员:tcflag_t c_iflag;/* 输入模式 */tcflag_t c_oflag;/* 输出模式 */tcflag_t ...

2019-07-06 12:56:08 469

转载 linux文件系统

转自:https://www.linuxprobe.com/linux-system-structure.html1.虚拟文件系统1.1虚拟文件系统概念 Linux 操作系统将独立的文件系统组合成了一个层次化的树形结构,并且由一个单独的实体代表这一文件系统。Linux 将新的文件系统通过一个称为“挂装”或“挂上”的操作将其挂装到某个目录上,从而让不同的文件系统结合成为一个整...

2019-02-28 15:42:51 415

转载 uboot cache关闭和mmu

https://blog.csdn.net/lee244868149/article/details/50444499uboot详解——关闭缓存和mmu2016年01月01日 11:49:09 阅读数:3634更多个人分类: bootload 所属专栏: bootload详细分析——废铁是怎么产生价值的版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blo...

2018-09-24 16:04:23 1884 4

转载 s5pv210 -uboot(三)SD卡启动流程分析

https://blog.csdn.net/wangweijundeqq/article/details/78886155 --------------------- 本文来自 MrT_WANG 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/wangweijundeqq/article/details/78886155?utm_source=copy一.主流的...

2018-09-24 16:01:28 1759

转载 mplayer移植

转自:http://bbs.gkong.com/archive.aspx?ID=286721   编译器:arm-linux-gcc(4.3.2)    Pc平台:ubuntu    在移植之前有必要先说明一下几个问题:    Mplayer是自带的mp3lib库来进行mp3解码的,但是arm系列的cpu,一般都没浮点运算单元,而mplayer的mp3解码默认使用mp3lib,这个是浮点运...

2018-09-24 15:56:56 277

转载 uboot 的命令体系

转自:https://www.cnblogs.com/PengfeiSong/p/6407932.htmluboot 的命令体系1、代码位置(1)uboot命令体系的实现代码在uboot/common/cmd_xxx.c中。有若干个.c文件和命令体系有关。(还有command.c  main.c也是和命令有关的)2、传参方式命令参数以argc&amp;argv传给函数(1)有...

2018-09-10 21:28:22 128

原创 s5pv210-uboot分析(二)

   本文继续上一篇博客分析        ldr        r0, =INF_REG_BASE                 ldr        r1, [r0, #INF_REG3_OFFSET]    cmp        r1, #BOOT_NAND        /* 0x0 =&gt; boot device is nand */    //读取启动信息寄存器并判断是否...

2018-09-09 11:19:11 257

原创 s5pv210-uboot分析(一)

lowlevle_init.shttps://www.2cto.com/kf/201609/549272.htmlhttps://blog.csdn.net/zjhsucceed_329/article/details/34567451参考:https://blog.csdn.net/oqqHuTu12345678/article/details/69365104s5pv21...

2018-09-09 09:32:04 1161

原创 u-boot mmu映射分析

参考:https://www.cnblogs.com/yangjiguang/p/7647801.html一、映射过程详解关于页表:ARMv6的MMU进行地址映射时涉及到两种页表,一级页表(first level page table)和二级页表(coarse page table)。关于映射方式:映射方式有两种,段映射和页映射。段映射只用到一级页表,页映射用到一级页表和二级页表...

2018-09-07 22:24:34 1595

转载 QT-学习-构造函数理解

源自:https://www.cnblogs.com/god-of-death/p/7777692.htmlMainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui-&gt;setupUi(this);}1、QMainWindow 是 ...

2018-09-02 17:35:59 11742

转载 qt移植

转载:http://blog.csdn.net/lizuobin2/ https://blog.csdn.net/lizuobin2/article/details/52673494 目前网上的大多数 QT 移植教程还都停留在 qt4.8 版本,或者还有更老的 Qtopia ,但是目前 Qt 已经发展到最新的 5.7 版本了,我个人也已经使用了很长一段时间的 qt5.6 for windo...

2018-08-25 21:02:06 453

转载 shell脚本

先说明以下内容来自:https://www.cnblogs.com/yinheyi/p/6648242.html请大家支持原作,点击链接查看。我写下来只是作为笔记,如果侵权,请留言,立马删除。Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有:bash:是Linux标准默认的shell。bash由Brian Fox和Chet Ramey共同完成,是Bou...

2018-08-20 19:10:27 94

转载 ubuntu SVN服务器搭建

序,我的ubuntu服务器版本是14.04 ,x64(64位)操作系统,服务器在国内。转自:https://blog.csdn.net/dddxxxx/article/details/71193794目录一、安装SVN服务器1 安装svn2 创建目录3 创建版本仓库4 配置5 启动SVN服务器6 验证svn功能及使用方法二、安装eclipse SVN插件基本常识介...

2018-08-19 15:25:27 209

转载 s5pv210 LCD

转自:https://www.cnblogs.com/biaohc/p/6286946.html 1:LCD基本工作原理(1)  LCD(Liquid Crystal Display)液晶显示,液晶特性:在电信号的驱动下液晶分子进行旋转,旋转会影响透光性,因此整个液晶面板后面用白光(背光)来照射,通过不同的电信号让液晶分子进行旋转性透光,此时液晶面板就会看到显示不同的颜色。液晶...

2018-08-12 18:06:08 287

转载 Shell 流程控制

转自:http://www.runoob.com/linux/linux-shell-process-control.htmlJava、PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法):&lt;?phpif (isset($_GET["q"])) { search(q);}else { // 不做任何事情}在sh/bash里可不能...

2018-08-11 22:19:57 106

转载 shell变量

转自:http://www.runoob.com/linux/linux-shell-variable.html Shell 变量定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:your_name="runoob.com"注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:命名只能使用英文字母,数字...

2018-08-11 21:46:55 228

原创 LINUX IO内存操作方法

https://wenku.baidu.com/view/f15358692bf90242a8956bec0975f46527d3a7f3.html

2018-08-11 18:17:56 786

原创 linux内核内存

**********************************************************linux内核内存相关内容:1.内存空间和IO空间:X86架构:有两类总线一类总线的位宽为16位,硬件地址空间范围64K,如果将外设接到这个总线上,那么CPU访问这个外设通过in,out指令来完成访问;这个地址空间称之为IO空间;另一类总线的位宽是32位,硬件地址空间范围...

2018-08-02 16:57:09 388

原创 linux内核等待队列机制

linux内核等待队列机制:案例:分析应用程序串口工具操作串口硬件设备的过程。1.外设的处理速度要远远慢于CPU!2.应用程序在用户空间没有权利访问硬件设备,只有通过系统调用跑到内核空间才有权限访问硬件设备!3.一个应用程序读取串口硬件设备采用两种方法:轮询方式:相当的耗费CPU的资源,让CPU做大量的无用功!中断方式:CPU一旦发现串口设备不可读(没数据),CPU干别的事情,一旦串口...

2018-07-30 21:18:28 972

原创 内核软定时器

linux内核软件定时器1.linux内核描述定时器使用的数据结构struct timer_list {    unsigned long expires; //定时器的超时时间,例如如果设置超时时间的间隔为5秒;expires = jiffies + 5*HZ    void (*function)(unsigned long);//定时器的处理函数,当超时时间到期,内核就会执行定时器的...

2018-07-29 18:44:42 283

原创 arm硬件定时器

**********************************************************硬件定时器:一般硬件定时器集成在CPU的内部,有的可以使用外置的硬件定时器芯片;特点:可以人为通过编程来设置硬件定时器的工作频率;硬件定时器一旦设定好了工作频率,只要上电,那么硬件定时器就会周期性的给CPU输出一个中断信号,称这个中断信号为时钟中断;linux内核已经实现好...

2018-07-29 16:57:02 2821

原创 tasklet中断后半部处理

1.tasklet2.工作队列3.软中断它们都是延后执行的机制!tasklet:又名“小任务”,任务说的是软中断,tasklet也是基于软中断实现,优先级高于进程,运行在中断上下文中。linux内核描述tasklet使用的数据结构:struct tasklet_struct{    void (*func)(unsigned long); //底半部处理函数    unsign...

2018-07-29 16:30:10 361

空空如也

空空如也

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

TA关注的人

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