实习过程中linux相关开发学习总结(四)

  • lua+nginx开发经常要模拟请求api,以此判断自己的api是否足够完善

    curl敲个get,post请求是容易的,简单的传值命令很简单

    curl url

    curl -d url

    至于form形式的,可以编个html去模拟,或者下个集成工具,去模拟请求,总之一切都要快,能快速的解决问题.(至少使用命令行,比使用其它方式更快,查看结果也清晰明白),可以(man baidu,google curl).这里协议分析是少不了的,因为api封装了,并且有时是自己封装请求数据报,发送出去.对网络上的数据包进行截获的包分析是tcpdump命令,不过要监听网卡,要用到ifconfig(network interfaces configuring),

    例如:>> ifconfig 可以得到自己使用的一个网卡的设备名 enpls0

    sudo tcpdump -i enp1s0 就可以监听网络请求处理情况了.

    当然wireshark是个很好的工具,学好它就行了.当然

    sudo tcpdump -i enp1s0 -w xx.cap

    这条命令可以把监听到的信息保存为.cap的文件,这样用wireshark也能打开查看.

  • 这里想到了一个问题:一般网络故障的检查.

    既然是网络问题,那就根据网络层次(物理层,数据链路层,网络层,传输层,应用层)逐一分析,想一想,网络设备的查看,网关配置,路由器等等问题.所以诸如ping,tracepath,traceroute等命令也因该是要懂一些的.至少ping是ICMP协议,它是TCP/IP协议族的一个子协议,属于网络层协议,等等需要牢记.

  • 还有一个是top命令(top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器),主要是有时ssh连接远程机器很容易断,原因是长时间不能实现交互.所以敲个top,这样就不会因为长时间不跟远程机器爆出通信而乱掉,不过这样也不太好 ,就当记住top.
时间: 2024-10-06 09:36:22

实习过程中linux相关开发学习总结(四)的相关文章

程序员实习过程中应该掌握的问问题技巧

转载请注明出处:http://blog.csdn.net/xiaojimanman/article/details/44344879 http://www.llwjy.com/blogdetail/c28aae9f6e5a8fbf5b37320e255ee462.html 个人博客站已经上线了,网址www.llwjy.com,欢迎大家来吐槽 ------------------------------------------------------------------------------

Linux System Programming 学习笔记(四) 高级I/O

1. Scatter/Gather I/O a single system call  to  read or write data between single data stream and multiple buffers This type of I/O is so named because the data is scattered into or gathered from the given vector of buffers Scatter/Gather I/O 相比于 C标准

Android中关于JNI 的学习(四)简单的例子,温故而知新

在第零篇文章简单地介绍了JNI编程的模式之后,后面两三篇文章,我们又针对JNI中的一些概念做了一些简单的介绍,也不知道我到底说的清楚没有,但相信很多童鞋跟我一样,在刚开始学习一个东西的时候,入门最好的方式就是一个现成的例子来参考,慢慢研究,再学习概念,再回过来研究代码,加深印象,从而开始慢慢掌握. 今天我们就再来做一个小Demo,这个例子会比前面稍微复杂一点,但是如果阅读过前面几篇文章的话,理解起来也还是很简单的.很多东西就是这样,未知的时候很可怕,理解了就很简单了. 1)我们首先定义一个Jav

嵌入式Linux裸机开发(十四)——ADC

嵌入式Linux裸机开发(十四)--ADC 一.AD转换简介 AD转换就是模数转换,就是把模拟信号转换成数字信号.A/D转换器是用来通过一定的电路将模拟量转变为数字量.模拟量可以是电压.电流等电信号,也可以是压力.温度.湿度.位移.声音等非电信号.在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号.A/D转换后,输出的数字信号可以有8位.10位.12位.14位和16位等. 二.ADC控制器 ADC控制器时钟: 时钟源为PCLK_PSYS,经过一次分频后得到AD

Linux系统开发学习路线

一:嵌入式c语言 C语言是嵌入式领域最重要也是最主要的编程语言,通过大量编程实例重点理解C语言的基础编程以及高级编程知识.包括:基本数据类型.数组.指针.结构体.链表.文件操作.队列.栈等. 二:Linux基础 Linux操作系统的概念.安装方法,详细了解Linux下的目录结构.基本命令.编辑器VI ,编译器GCC,调试器GDB和 Make 项目管理工具, Shell Makefile脚本编写等知识,嵌入式开发环境的搭建. 三:Linux系统编程 重点学习标准IO库,Linux多任务编程中的多进

linux驱动开发学习路线

这篇文章是和大四学弟交流的文章,贴出来,和大家学习讨论 需要掌握的基本技能: C/C++/ python shell makefile linux基本操作 以android手机为例,我通俗的介绍下市场上产品的软件结构. 手机---> 硬件:cpu(arm架构单片机)+各种传感器(显示屏.距离传感器.温度传感器.gms模块 gprs模块等等).本质上手机就是一个单片机加上一堆传感器,单片机控制各个传感器与人进行负责的交互.(驱动工程师就是在linux底层让传感器可以工作,然后提供控制硬件的接口交给

Linux驱动开发学习的一些必要步骤

1. 学会写简单的makefile 2. 编一应用程序,可以用makefile跑起来 3. 学会写驱动的makefile 4. 写一简单char驱动,makefile编译通过,可以insmod, lsmod, rmmod. 在驱动的init函数里打印hello world, insmod后应该能够通过dmesg看到输出. 5. 写一完整驱动, 加上read, write, ioctl, polling等各种函数的驱动实现. 在ioctl里完成从用户空间向内核空间传递结构体的实现. 6. 写一bl

linux目录操作命令大全 linux系统开发学习

Linux的目录结构为树形结构,最顶级的目录为根目录,其他目录通过挂载添加到树中,通过解除挂载来进行删除,除此之外,还可以对目录进行其他处理操作,常用的目录处理命令如下: 1. ls命令(列出目录) 常用用法: ls –a 列出文件下所有的文件,包括以"."开头的隐藏文件: ls –l 列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等: ls –d仅列出目录本身,而不是列出目录内的文件数据. 2. cd命令(切换目录) 用法: cd [相对路径或绝对路径] 用来变换工作目录

linux驱动开发学习三:异步操作

前面的队列以及锁都是基于阻塞是的操作.要实现同步,还可以通过信号也就是异步的方式来进行.例如在往文件的写入字符后,发送一个信号.捕捉到信号后执行动作.这样就不会造成阻塞,之前的阻塞性IO和POLL,是调用函数进去检查,条件不满足是造成阻塞. 应用层启动异步通知机制就三个步骤: 1 调用signal函数,让指定的信号SIGIO与处理函数sig_handle对应 2 指定一个进程作为文件的”属主(filp-owner)”, 这样内核才知道信号要发给哪个进程 3 在设备文件中添加FASYNC标志,驱动