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

设计网站数据网站改版不换域名

设计网站数据,网站改版不换域名,网站建设验收书,wordpress域名重定向前言 正文 一、环境的安装 1、tar –xf valgrind-3.17.0.tar.bz2 2、cd valgrind-3.17.0 3、./configure // 运行配置脚本生成makefile文件#xff0c;可以--help查看配置项#xff0c;自行按需配置#xff0c;比如修改编译工具、修改安装路径等 4、make 5、make…前言 正文 一、环境的安装 1、tar –xf valgrind-3.17.0.tar.bz2 2、cd valgrind-3.17.0 3、./configure // 运行配置脚本生成makefile文件可以--help查看配置项自行按需配置比如修改编译工具、修改安装路径等 4、make 5、make install //安装生成可执行文件可执行文件的路径有参数--prefix指定需要在PATH中添加环境变量若不加参数--prefix指定仅使用默认配置则会自动关联安装完后可以使用 valgrind --help查看使用方法 或测试一下是否安装成功 二、使用 1、工具的基本介绍 1Memcheck。这是valgrind应用最广泛的工具一个重量级的内存检查器能够发现开发中绝大多数内存错误使用情况比如使用未初始化的内存使用已经释放了的内存内存访问越界等。这也是本文将重点介绍的部分。 2Callgrind。它主要用来检查程序中函数调用过程中出现的问题。 3Cachegrind。它主要用来检查程序中缓存使用出现的问题。 4Helgrind。它主要用来检查多线程程序中出现的竞争问题。 5Massif。它主要用来检查程序中堆栈使用中出现的问题。 6Extension。可以利用core提供的功能自己编写特定的内存调试工具 2、常用选项 1适用于所有Valgrind工具 –tool name 最常用的选项。运行 valgrind中名为toolname的工具。默认memcheck。 -h --help 显示帮助信息。 –version 显示valgrind内核的版本每个工具都有各自的版本。 -q --quiet 安静地运行只打印错误信息。 -v --verbose 更详细的信息, 增加错误数统计。 –trace-childrenno|yes 跟踪子线程? [no] –track-fdsno|yes 跟踪打开的文件描述[no] –time-stampno|yes 增加时间戳到LOG信息? [no] –log-fd number 输出LOG到描述符文件 [2stderr] –log-file file 将输出的信息写入到filename.PID的文件里PID是运行程序的进行ID –log-file-exactly file 输出LOG信息到 file –log-file-qualifier VAR 取得环境变量的值来做为输出信息的文件名。 [none] –log-socketipaddr:port 输出LOG到socket ipaddr:port 2LOG信息输出 –xmlyes 将信息以xml格式输出只有memcheck可用 –num-callers number show numbe r callers in stack traces [12] –error-limitno|yes 如果太多错误则停止显示新错误? [yes] –error-exitcode number 如果发现错误则返回错误代码 [0disable] –db-attachno|yes 当出现错误valgrind会自动启动调试器gdb。[no] –db-command command 启动调试器的命令行选项[gdb -nw %f %p] 3适用于Memcheck工具的相关选项 –leak-checkno|summary|full 要求对leak给出详细信息? [summary] –leak-resolutionlow|med|high how much bt merging in leak check [low] –show-reachableno|yes show reachable blocks in leak check? [no] 更详细的使用信息详见帮助文件、man手册或官网http://valgrind.org/docs/manual/manual-core.html 4注意 ① valgrind不会自动的检查程序的每一行代码只会检查运行到的代码分支所以单元测试或功能测试用例很重要 ② 可以把valgrind看成是一个sandbox通过valgrind运行的程序实际上是运行在valgrind的sandbox中的所以不要测试性能会让你失望的建议只做功能测试 ③ 编译代码时建议增加-g -o0选项不要使用-o1、-o2选项 3、memcheck工具的原理 –tool name : 使用的工具名称 –log-file file : 输出的日志的名称valgrind --toolmemcheck --log-filelog.txt --leak-checkyes ./test说明使用memcheck工具对test程序进行包含内存泄漏的检查并将日志保存到log.txt 当待分析程序片段第一次被执行时valgrind会将代码片段交给工具——比如内存调试时使用的memcheck处理工具会在代码中插入一些辅助分析的代码片段。新的代码会在valgrind模拟出的CPU上执行。然后valgrind会结合之前读取到的待执行程序和其所关联的库文件的调试信息输出分析结果。 因为有新插入的代码逻辑valgrind运行下的程序都比其独立运行时要慢。视选择的工具不同其效率可能是正常值的1/4~1/50。所以使用valgrind做性能分析时一般不使用绝对数据而使用相同环境下的相对数据进行对比。 为了让valgrind读取出准确的调试信息待分析程序最好使用-O0禁止编译器优化以及使用-g让编译器把行号信息编入到文件中。 4、memcheck示例 编译 g -O0 -g test.c -o test_g ValGrind分析valgrind --toolmemcheck ./test_g 1、写违例 #include stdlib.hint main() {const int array_count 4;int* p (int *)malloc(array_count * sizeof(int));p[array_count] 0; // Illegal read free(p);return 0; }第1显示有4个字节被违例写入第2显示写入的位置在分配的16个字节之后。 2、读违例 #include stdlib.hint main() {const int array_count 4;int* p (int *)malloc(array_count * sizeof(int));int error_num p[array_count]; // Illegal readfree(p);return 0; }错误的位置和上例一样区别在于这次是读取不合法的地址的数据。使用valgrind分析显示 第一行显示有4个字节被违例读取第三行显示读取的位置在分配的16个字节之后。 3、使用未初始化变量 #include stdlib.h #include stdio.hint main() {const int array_count 4;int* p (int*)malloc(array_count * sizeof(int));printf(%d, p[array_count - 1]);free(p);int undefine_num;printf(%d, undefine_num);return 0; }第7行和第11行分别访问了堆上、栈上未初始化的变量。valgrind分析显示 这里面就会提醒第7行和第11行访问了未初始化的变量。 5、Valgrind 的局限 Valgrind 不对静态数组 (分配在栈上) 进行边界检查。如果在程序中声明了一个数组: int main(int argc, char *argv[]) {char x[10];x[11] a;return 0; }Valgrind 则不会警告你你可以把数组改为动态在堆上分配的数组这样就可能进行边界检查了。这个方法好像有点得不偿失的感觉。 Valgrind 占用了更多的内存—可达两倍于你程序的正常使用量。如果你用 Valgrind 来检测使用大量内存的程序就会遇到问题它可能会用很长的时间来运行测试。大多数情况下这都不是问题即使速度慢也仅是检测时速度慢如果你用 Valgrind 来检测一个正常运行时速度就很慢的程序这下问题就大了。Valgrind 不可能检测出你在程序中犯下的所有错误—如果你不检查缓冲区溢出Valgrind 也不会告诉你代码写了它不应该写的内存。 参考
http://www.ho-use.cn/article/10819233.html

相关文章:

  • 网页特效代码网站wordpress nosql
  • 主机做网站服务器固始网站制作
  • 毕业设计做视频网站设计东明县网站建设
  • 贵州微网站建设公司wordpress游客购买
  • 做网站快速排名软件wordpress 韩国 主题
  • 301不同类型网站凡客诚品的经营特色
  • 百度站长工具平台登录网络营销成功的案例有哪些
  • 怎么在网站后面做链接网站推荐男生正能量
  • 温州电子网站建设wordpress 添加钩子
  • 专业网站建设好不好企业号码查询系统
  • 为什么不做网站做公众号o2o网站建设方案ppt
  • 移动端网站建设需要注意哪些问题广西桂林网站建设公司
  • 南平网站怎么做seo网易云企业网站建设模板
  • 网站开发适合女生吗wordpress会员过期时间
  • seo织梦网站建设步骤阿里云可以建设网站吗
  • 网站建设公司电话销售客源网站建设续费催款通知书
  • 网站备案后证书网站怎么做微博认证吗
  • 读书网站建设策划书摘要个人简历表格
  • 江苏公众科技网站建设惠州做网站
  • 诸暨市建设局行业管理网站百度网站内容
  • 湖南网站网络推广哪家奿德州网站建设推广价格
  • 做网站建设分哪些类型移动端网页设计图片
  • 国外有名的网站海南网站建设方案
  • 南山网站建设-信科网络在哪下载免费的英文版网站模板
  • 网站代码的重点内容是什么做网站有弹窗叫什么
  • 用手机做网站的流程唐山城乡建设网站
  • 成品网站设计网站写作墨问题 网站
  • 网站信息建设总结胶州网站优化价格
  • 学做家常菜的网站服务器租用租赁
  • 合肥软件开发网站建设山西钢建公司简介