当前位置: 首页 > news >正文

美容手机网站模板合肥关键词网站排名

美容手机网站模板,合肥关键词网站排名,嘉定区网站建设,wordpress 上传错误1.开发背景 Linux 系统提供了各种外设的控制方式#xff0c;其中包括文件的读写#xff0c;存储文件的介质可以是 SSD 固态硬盘或者是 EMMC 等。 其中常用的写文件方式是同步写操作#xff0c;但是如果是写大文件会对 CPU 造成比较大的负荷#xff0c;采用异步写的方式比较…1.开发背景 Linux 系统提供了各种外设的控制方式其中包括文件的读写存储文件的介质可以是 SSD 固态硬盘或者是 EMMC 等。 其中常用的写文件方式是同步写操作但是如果是写大文件会对 CPU 造成比较大的负荷采用异步写的方式比较合适并且需要直接越过内核直接通过 IO 访问直接访问磁盘关键词 O_DIRECT。可以有效降低 CPU 的使用率。 #ifdef __USE_GNU # define O_DIRECT __O_DIRECT /* Direct disk access. */ # define O_NOATIME __O_NOATIME /* Do not set atime. */ # define O_PATH __O_PATH /* Resolve pathname but do not open file. */ # define O_TMPFILE __O_TMPFILE /* Atomically create nameless file. */ #endif添加宏定义否者 O_DIRECT 显示未定义 #define _GNU_SOURCE2.开发需求 设计实验 1使用同步写硬盘的方式连续 100MB 的数据 10 次并统计每次写入的时间和速度 2使用异步写硬盘的方式连续 100MB 的数据 10 次并统计每次写入的时间和速度 3.开发环境 ubuntu20.04  RK3568  Linux4.19.232 金士顿 SSD 4.实现步骤 4.1 实现代码 #define _GNU_SOURCE#include stdio.h #include stdlib.h #include fcntl.h #include unistd.h #include string.h #include errno.h #include linux/fs.h #include sys/time.h#include com_file.h #include app_log.h#define BUFFER_SIZE (1024 * 1024 * 100) // 100MB #define TEST_FILE_PATH /run/media/sata/output.dat/* 同步写测试 */ static void test_write_sync(char *file_path, char *buffer) {/* 创建文件和路径 */common_file_create(file_path);/* 打开文件 */int fd open(file_path, O_WRONLY | O_CREAT, 0644);if (fd 0) {alog_error(open failed\r\n);return;}/* 写数据 */if (write(fd, buffer, BUFFER_SIZE) ! BUFFER_SIZE) {alog_error(write failed\r\n);close(fd);return;}/* 关闭文件 */close(fd); }/* 异步写测试 */ static void test_write_async(char *file_path, char *buffer) {/* 创建文件和路径 */common_file_create(file_path);/* 打开文件 */int fd open(file_path, O_WRONLY | O_CREAT | O_DIRECT, 0644);if (fd 0) {alog_error(open failed\r\n);return;}/* 写数据 */if (write(fd, buffer, BUFFER_SIZE) ! BUFFER_SIZE) {alog_error(write failed\r\n);close(fd);return;}/* 关闭文件 */close(fd); }/* 主程序 */ int main() {alog_info(%s start\r\n, __func__);char file_path[] TEST_FILE_PATH;char *pdata_sync NULL;char *pdata_async NULL;/* 初始化同步内存 */pdata_sync (char *)malloc(BUFFER_SIZE);if (pdata_sync NULL){alog_error(malloc failed\r\n);return 1;}alog_info(sync memory init ok\r\n);/* 初始化异步内存 */if (posix_memalign((void **)pdata_async, 512, BUFFER_SIZE) ! 0) // 512 4096{alog_error(posix_memalign failed\r\n);return 1;}alog_info(async memory init ok\r\n);/* 填充数据 */for (long long int i 0; i BUFFER_SIZE; i){pdata_sync[i] i 0xFF;pdata_async[i] i 0xFF;}alog_info(data init ok\r\n);/* 计时*/struct timeval start_time;struct timeval end_time;/* 同步写测试 */for (int i 0; i 10; i){gettimeofday(start_time, NULL);test_write_sync(file_path, pdata_sync);gettimeofday(end_time, NULL);int usec_sync (end_time.tv_sec - start_time.tv_sec) * 1000000 (end_time.tv_usec - start_time.tv_usec);double speed_sync (double)BUFFER_SIZE / ((double)usec_sync / 1000 / 1000);alog_info(sync[%d] write test time: %d ms, speed: %lf MB/s\r\n, i, usec_sync / 1000, speed_sync / (1024 * 1024));}/* 异步写测试 */for (int i 0; i 10; i){gettimeofday(start_time, NULL);test_write_async(file_path, pdata_async);gettimeofday(end_time, NULL);int usec_async (end_time.tv_sec - start_time.tv_sec) * 1000000 (end_time.tv_usec - start_time.tv_usec);double speed_async (double)BUFFER_SIZE / ((double)usec_async / 1000 / 1000);alog_info(async[%d] write test time: %d ms, speed: %lf MB/s\r\n, i, usec_async / 1000, speed_async / (1024 * 1024));}/* 释放内存 */free(pdata_sync);free(pdata_async);return 0; }4.2 测试结果 异步写硬盘速度更快并且 CPU 占用更低只有不到 20%同步写硬盘 CPU 占用超过 90%
http://www.dnsts.com.cn/news/65987.html

相关文章:

  • 江门制作公司网站线上拓客渠道有哪些
  • 上蔡网站建设用wordpress做官网
  • 网站开发工作介绍深圳制作网页公司
  • 手机回收站.湖南省建设厅规范网站
  • 河北 石家庄 网站建设建设银行的网站是什么字体
  • 建立 网站服务器西安 网站 高端 公司
  • 购物网站用那个软件做学做投资网站
  • 拖拽式制作网站可以做会员吗网站自助建设
  • 芜湖有哪些招聘网站小程序需要租服务器吗
  • 化妆品网站设计方案互联网个人用户网站
  • 环球贸易网站网络游戏开发成本
  • 长沙网站建设q.479185700強网络推广的定义
  • 开发app的网站有哪些网站建设是怎么挣钱
  • 有什么做酒和水果茶教程的网站免费安装app
  • 浙江建设厅网站怎么进不去深圳罗湖企业网站优化
  • 海南做网站制作简易网站模板
  • 网站开发商城1688网站开发工具排名
  • 福州最好的网站建设网络公司为什么要创建网站子目录
  • 郑州建站软件网站编辑年终总结
  • 公司网站 免费模板电影影视网站模板免费下载
  • 企业营销网站建设步骤wordpress cms主题 怎么用
  • 网站建设的多吗wordpress网站500
  • 怎样做好邯郸网站建设pc网站如何做seo
  • 投资网站优惠网站建设
  • 超可爱做头像的网站公众号做网站
  • 无锡网站制作启航上海门户网站的亮点
  • 和15岁女儿做很舒服网站建筑工程查询网
  • 营销型网站管理系统类似美团的网站建设
  • 兰州正规seo整站优化广东专业的网络推广
  • 创造自己的网站如何自学网站开发