NSString * cachPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, ...
/* * uart 打开分析 * * 问题: 当应用程序调用open系统调用函数,那么是如何open串口的?
虽然以太网接口和USB接口也是以一个串行流进行数据传送的,但是串口连接通常特指那些与RS-232标准兼容的硬件或者调制解调器的接口。废话少讲,今天来解剖使用串口时的编程代码细节。...上面的代码是使用串口的第一步,来解释下都是啥意思。...来瞧瞧: 第21-22行,定义了一个用来配置串口属性的结构体: struct termios serial; bzero(&serial, sizeof(serial)); 第24行,将串口设置为raw...cfsetispeed(&serial, B9600); cfsetospeed(&serial, B9600); 第28-32行,设置串口控制属性(c_cflag),其中: serial.c_cflag...: tcsetattr(fd,TCSANOW,&serial); 当然,上面的 fd 就是系统中的某一个你想要设置的成上面那样的属性参数的串口,比如就拿粤嵌GEC210开发板来说,他有四个串口,其中第一个就已经被用于终端控制了
这是一个 BSD 扩展; 它只存在于 BSD 系统和 GNU/Linux 和 GNU/Hurd 系统上。...该位仅存在于 BSD 系统和 GNU/Hurd 系统上; 在 GNU/Linux 系统上,它可以作为 XTABS 使用。...这是一个 BSD 扩展,仅存在于 BSD 系统和 GNU/Linux 和 GNU/Hurd 系统中。...这是一个 BSD 扩展,仅存在于 BSD 系统和 GNU/Linux 和 GNU/Hurd 系统中。...这是一个 BSD 扩展,仅存在于 BSD 系统和 GNU/Linux 和 GNU/Hurd 系统中。
//获得缓存路径 self.cachesPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES...).lastObject; /*********************** 缓存管理 ***********************/ #pragma mark 单个文件的大小 + (long...NSFileManager defaultManager]; //判断该文件是否存在 if ([manager fileExistsAtPath:filePath]){ //返回该文件大小...attributesOfItemAtPath:filePath error:nil] fileSize]; } return 0; } #pragma mark 遍历文件夹获得文件夹大小...fileSizeAtPath:fileAbsolutePath]; } return folderSize / (1024.0*1024.0); } #pragma mark 清理缓存文件
最近在了解嵌入式方面的知识,就随笔记录一下: 查看Linux本机串口: 1、查看串口是否可用 可以对串口发送数据比如对com1口,echo /dev/ttyS0 2、查看串口名称使用 ls...-l /dev/ttyS* 一般情况下串口的名称全部在dev下面,如果你没有外插串口卡的话默认是dev下的ttyS*,一般ttyS0对应com1,ttyS1对应com2,当然也不一定是必然的; 3、...查看串口驱动 cat/proc/tty/drivers/serial 4、查看串口设备 dmesg | grep ttyS* 5、查一下板子上的串口有没有设备 grep tty/proc.../dev下应该有一个USB串口:/dev/ttyUSB0. 当一个串行卡或数据卡被侦测到时,它会被指定成为第一个可用的串行设备。...PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC; 串口使用: 如果需要查看这个串口设备输出: cat ttyUSB0 如果需要对这个设备输入: echo yaoxu > ttyUSB0
/*和read的分析过程一样, 我们首先分析tty_write*/ /*最重要的就是do_tty_write函数。 前面都是一些合法性判断*/ static ...
/*串口read函数分析 * 当应用程序调用read系统调用时,会调用tty_fops中的tty_read * 接下来分析tty_read函数 * * 其中最重要的就是ld->ops->read(tty...* 那么当我们的串口有数据的话,当然就调用我们以前注册的rx中断函数了。...unsigned int ufcon, ch, flag, ufstat, uerstat; int max_count = 64; while (max_count-- > 0) { /*读取UFCON串口配置寄存器...*/ ufcon = rd_regl(port, S3C2410_UFCON); /*读取 UFSTAT串口状态寄存器。...) { spin_lock_irqsave(&tty->read_lock, cpuflags); i = min(N_TTY_BUF_SIZE - tty->read_cnt, /*判断大小
查看Linux本机串口: 1、查看串口是否可用 如果需要查看这个串口设备输出: cat ttyUSB0 如果需要对这个设备输入: echo yaoxu > ttyUSB0 常用的调试工具有: minicom...cutecom Linux系统可视化串口应用软件,使用上与Windows系统串口调试工具。 picocom 效果上类似 minicom 的精简版,设置比较简单,还可以有背景颜色。...PC上的串口一般是ttyS,板子上Linux的串口一般叫做ttySAC; 串口权限问题 临时调试解决 在使用串口进行通信时,经常需要使用指令来赋予用户读写的权限 $ sudo chmod 777 /dev...查看linux所有用户 使用 /etc/passwd 文件 使用任何一个像 cat、more、less 等文件操作命令来打印 Linux 系统上创建的用户列表。.../etc/passwd 是一个文本文件,其中包含了登录 Linux 系统所必需的每个用户的信息。
简介 嵌入式Linux下串口编程与Linux系统下的编程没有什么区别,系统API都是一样的。...嵌入式设备中串口编程是很常用的,比如会对接一些传感器模块,这些模块大多是RS232或者RS485接口,对于软件层面上来说,RS232与RS48区别不大。...RS232与RS485在使用上的区别,RS232是全双工的,只能对接一个设备串口设备。RS485是半双工的总线协议,一般可以挂多个传感器设备,半双工的意思是同时只能有一个设备向串口发数据。...用到的API函数 函数 说明 open 打开设备,用于打开串口设备 fcntl 修改设备描述符属性参数 isatty 检测打开的描述符是否指向一个终端 tcgetattr 用来获取串口终端参数 cfmakeraw...将终端设置为原始模式,该模式下所有的输入数据以字节为单位被处理 tcflush 用于清空输入、输出缓冲区 tcsetattr 设置串口终端参数 read 读取数据 write 写数据 close 关闭串口设备
关闭swap swapoff -a 1.创建交换分区的文件:增加2G大小的交换分区 dd if=/dev/zero of=/var/swapfile bs=1M count=2048 2.设置交换文件
-s或–summarize 仅显示总计,即当前目录的大小。 -S或–separate-dirs 显示每个目录的大小时,并不含其子目录的大小。...1> 要显示一个目录树及其每个子树的磁盘使用情况 du /home/linux 这在/home/linux目录及其每个子目录中显示了磁盘块数。...3> 以MB为单位显示一个目录树及其每个子树的磁盘使用情况 du -m /home/linux 这在/home/linux目录及其每个子目录中显示了 MB 磁盘块数。...4> 以GB为单位显示一个目录树及其每个子树的磁盘使用情况 du -g /home/linux 这在/home/linux目录及其每个子目录中显示了 GB 磁盘块数。...10>只显示一个目录树的全部磁盘使用情况 du -s /home/linux 11>查看各文件夹大小:du -h –max-depth=1 查看指定目录: 代码如下: 其中 /path表示路径
关于 Integer 的值缓存 这涉及 Java 5 中另一个改进。构建 Integer 对象的传统方式是直接调用构造器,直接 new 一个对象。...但是根据实践,我们发现大部分数据操作都是集中在有限的、较小的数值范围,因而,在 Java 5 中新增了静态工厂方法 valueOf,在调用它的时候会利用一个缓存机制,带来了明显的性能改进。...按照 Javadoc,这个值默认缓存是 -128 到 127 之间。 那么Integer对象的大小是多少呢?...Integer只有一个int类型的成员变量value,所以其对象实际数据部分的大小是4个字节,然后再在后面填充4个字节达到8字节的对齐,所以可以得出Integer对象的大小是16个字节。...因此,我们可以得出Integer对象的大小是原生的int类型的4倍。
du命令 参考文章:how to check directory size in Linux 用于显示目录或文件的大小。...显示当前目录文件或者文件占用空间:du 显示指定文件或文件夹的大小:du test.txt 方便阅读的格式查看目录所占空间情况:du -h test 仅显示当前文件夹的总计:du -s * 以方便阅读的方式查看指定目录层级的空间占用情况...:du -lh --max-depth=1 du命令排序 查看目录大小的命令是du(当然也可以查看文件大小),例如:du ems_data,就是查看ems_data目录下各子目录的大小;du,就是查看当前目录下各子目录的大小...;du *,就是查看当前目录下各子目录和文件的大小。...sort +1 -2 选出排在前面的10个:du ems_data | sort -rn | head 选出排在后面的10个:du ems_data |sort -rn | tail 当前目录的大小
/** * uart分析 * * 其实串口分析就两个重要的文件: S3c2440.c Samsung.c * * **/ /*1....name = "Samsung S3C2440 UART", .type = PORT_S3C2440, //端口类型 .fifosize = 64, //FIFO缓冲区大小...其实每一个串口都对应一个uart_port结构 * 这里只初始化了tty_port结构。...CONFIG_SERIAL_SAMSUNG_UARTS); return -ERANGE; } port->dev = &platdev->dev; ourport->info = info; /*初始化port的大小...用于初始化uart_port 3. s3c24xx_serial_ops: 硬件的操作集 4. s3c24xx_uart_info: 用于初始化uart_port 其实也就是:编写S3c2440.c这个串口文件
缓存机制:Linux引入了buffers和 cached机制,buffers与cached都是内存操作,用来保存系统曾经打开过的文件以及文件元数据,这样当操作系统需要读取某些文件时,首先在buffers...为了方便查找文件,linux引入目录项(dentry)描述目录与文件的关系树,Linux为每一个目录建立一个目录项,也为每个文件建立一个目录项。...可以使用ipcs -m命令并检查bytes列来检查共享内存段的大小。...:通过cat /proc/meminfo命令可以查看cached和buffers的大小,如果系统是RHEL6&CentOS6或之前的版本,可以使用free命令查看cached和buffers大小,但自RHEL7&...根据Linux虚拟内存管理机制,这种行为是正常的。要理解为什么缓存会变得如此之高,以及为什么这不是一个问题,就必须了解I/O在Linux上是如何工作的。
linux查看文件夹大小 1.命令如下 du -sh * | sort -n 如图:
Precondition :VMware Player 中安装的Fedora 17 Linux 32bit,个人较久远的测试环境,安装时没有进行磁盘规划,默认20G空间(动态调整),安装在根/下。...1.首先调整虚拟机大小: 2.虚拟机开机,使用fdisk 命令新建新区 fdisk /dev/sda 添加 /dev/sda3 3.接下来就贴代码了: Fedora release 17 (Beefy...Disk identifier: 0x00002255 Device Boot Start End Blocks Id System /dev/sda1 * 2048 1026047 512000 83 Linux.../dev/sda2 1026048 16777215 7875584 8e Linux LVM /dev/sda3 16777216 62914559 23068672 83 Linux Disk...当然,此方案针对虚拟机中已安装的没有采用LVM的linux分区大小调整,其它不必参考此方案。
设计思路: 1 用一个INI配置文件管理日志目录,日志文件限制的大小,特殊的日志名,特殊日志的大小限制。 ...2 读取INI文件中的所有信息:每一个日志目录对应的大小限制,每一个特殊日志对应的大小限制。如特殊日志在既定的日志目录中需去除。 3 按设置的大小循环检测并清理每一个日志文件。
msm_serial_hs_lite.c: 低速版本, 设备树内容配置为compatible = “qcom,msm-lsuart-v14”;
领取专属 10元无门槛券
手把手带您无忧上云