linux内核模块基础 一.定义 Linux 内核的整体结构非常庞大,其包含的组件也非常多,如何使用这些组件呢: 方法 1:把所有的组件都编译进内核文件,即:zImage 或 bzImage,但这样会导致一个问题:占用内存过多. 2.有一种机制能让内核文件本身并不包含某组件,而是在该组件需要被使用的时候,动态地添加到正在运行的内核中. 内核模块特点: 1.模块本身并不被编译进内核文件(zImage 或者 bzImage). 2. 可以根据需求,在内核运行期间动态的安装或卸载. 3.基本上是以.k…
[版本] 两种:内核版本 . 发行版本 内核版本从 www.kernel.org 查看 发行版本: 1.retHat, centOS 更稳定,更安全,适宜做企业服务器 2.ubuntu, Debian 图形界面更丰富 [Linux与window区别] 一切皆文件:用户.硬件.只要是永久存在的都是文件形式保存. 无扩展名:依靠权限来区分文件类型,但有一些约定俗成的叫法: 压缩包:.gz, .bz2, .tar.bz2 二进制软件包: .rpm 网页文件:.html, .php 脚本文件:.sh 配…
c语言: 基础篇 1.<写给大家看的C语言书(第2版)> 原书名: Absolute Beginner's Guide to C (2nd Edition) 原出版社: Sams 作者: (美)Greg Perry    [作译者介绍] 译者: 谢晓钢 刘艳娟 丛书名: 图灵程序设计丛书 C/C++系列 出版社:人民邮电出版社 ISBN:9787115216359上架时间:2009-12-10出版日期:2010 年1月开本:16开页码:308 说明:这本是入门最好的,最简单,最好懂 2.<…
Linux基础知识学习 原文:http://blog.csdn.net/ye_wei_yang/article/details/52777499 一.Linux的磁盘分区及目录 Linux的配置是通过修改配置文件来完成. 1.1.Linux磁盘分区 Linux可以将磁盘分为多个分区,每个分区可以被当做一个独立的磁盘使用,磁盘类型:主分区.扩展分区.逻辑分区. 主分区标记为活动,用于操作系统的引导,一块磁盘最多划分4个主分区,主分区存放操作系统的文件或用户数据. 扩展分区:主分区小于4个时才可以划…
20135231 何佳 学习计时:共12小时 读书:5 代码:2 作业:2 博客:3 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用Linux中用户管理命令/系统相关命令/文件目录相关命令/打包压缩相关命令/比较合并相关命令/网络相关命令等 4. 熟练应用“搜索”进行举一反三的学习 二.Linux 系统简介 1.实验介绍 本节主要介绍 Linux 的历史,Linux 与 Windows 的区别等入门知识.Linux 就是一个操作系统…
Linux内核理论基础 组成Linux内核的5个子系统:进程调度(SCHED)/内存管理(MM)/虚拟文件系统(VFS)/网络接口(NET)/进程间通信(IPC). 进程调度(SCHED) 在设备驱动编程中,当请求的资源不能得到满足时,驱动一般会调度其他进程执行,并使本进程进入睡眠状态,直到它请求的资源被释放,才会被唤醒而进入就绪态.睡眠分成可被打断的睡眠和不可被打断的睡眠,两者的区别在于可被打断的睡眠在收到信号的时候会醒. 内存管理(MM) 内存管理的主要作用是控制多个进程安全地共享主内存区域…
linux基础命令学习笔记(二) 1.kill :终止进程  kill pid (唯一标示一个进程) kill -9  强制终止  kill -15 命令未结束不能终止 # ps aux 查看所有进程 ctrl + c 也可以强行停止. 2. du :显示文件及目录大小 # du 文件 # du -h 文件:人类易读,显示文件大小(带单位) # du -s 目录名   :不展开,只显示目录实际大小.   # ls -lh :查看当前目录下所有文件的大小       # du -sh 3.df :…
20189230杨静怡 2018-2019-2 <移动平台开发实践>第1周学习总结 安装Linux系统内容总结 一.学习"基于VirtualBox虚拟机安装Ubuntu图文教程",在自己笔记本上安装Linux操作系统,提交安装好的系统截图. 1.下载安装VirtualBox 2.安装Ubuntu (1)创建虚拟机 (2)安装Ubuntu 系统软件 (3)安装VirtualBox虚拟机增强功能 (4)分配共享数据空间 软件安装过程中出现的问题和解决方法 问题1:安装Linux…
原作者地址:https://www.cnblogs.com/chenshoubiao/p/4793487.html 最近在学习 linux  对简单的命令有所掌握 但是 复杂的脚本 shell python 还是没有掌握 这一点需要继续学习... 很多东西仅仅是学会了搭建  非常不够 运维监控的内容会的非常少. Linux系统如果是学习可以选用Redhat或CentOS,特别是CentOS在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,…
VBox&vmware虚拟机安装Linux及Linux基础入门学习 通过VMware workstation安装Linux 在安装虚拟机之前,我特意上网搜索了一下目前常使用的虚拟机软件,了解了相关知识之后,我先选择通过VMware workstation安装Linux. 我选择VMware版本为: VMware workstation 12.5 pro 我选择安装的Linux版本为: 深度(deepin)的Ubuntu 首先安装 VMware workstation 12.5 pro ,十分简单…
Linux随笔-鸟哥Linux基础篇学习总结(全) 修改Linux系统语系:LANG-en_US,如果我们想让系统默认的语系变成英文的话我们可以修改系统配置文件:/etc/sysconfig/i18n [root@localhost ~]# cat /etc/sysconfig/i18n LANG="en_US.UTF-8"SYSFONT="latarcyrheb-sun16" [root@localhost scripts]# lltotal 8-rw-r--r-…
第四节 Linux目录结构及文件基本操作 Linux目录结构 Linux 的目录与 Windows 的目录的区别 目录与存储介质(磁盘,内存,DVD 等)的关系 Windows 一直是==以存储介质为主的==,主要以盘符及分区的来实现文件管理,然后之下才是目录,目录就显得不是那么重要,除系统文件之外的用户文件放在任何地方任何目录也是没有多大关系. Linux是==以目录为主的==.是以树形目录结构的形式来构建整个系统的,可以理解为一个用户可操作系统的骨架. 虽然本质上无论是目录结构还是操作系统内…
1 信号的基本描述 Signal信号(其全程为软中断信号)是Linux系统编程中非常重要的概念,信号是异步进程中通信的一种方式. 作用是通知进程发生了异步事件.进程之间可以调用系统来传递信号, 本身内核也可以发送信号给进程, 告诉该进程发生了某个事件. 在应用层将消息传递给内核监控,当消息处理完毕后,内核将消息反馈给应用层:这样操作不会出现阻塞等待,保持信号处理的持续性. 相对于共享内存,信号更加偏向于系统层面的,linux系统也是通过信号来管理进程的,而且系统也规定了某些进程接到某些信号后的行…
这本<Linux内核修炼之道>已经开卖(网上的链接为: 卓越.当当.china-pub ),虽然是严肃文学,但为了保证流畅性,大部分文字我还都是斟词灼句,反复的念几遍才写上去的,尽量考虑到写上去的每段话能够让读者产生什么疑惑,然后也都会紧接着尽量的去进行解释清楚,中间的很多概念也有反复纠结过怎么解释能够更容易的理解,力求即使对于初学者也可以有很少阻碍的一气读完.同时我也把书中一部分自己的感悟抽出来整理了精华版,share出来.当然水平有限,错漏之处有发现而修订时遗漏的,也有尚没有发现的.这本书…
目录 Linux - nginx基础及常用操作 Tengine淘宝nginx安装流程 nginx的主配置文件nginx.conf 基于域名的多虚拟主机实战 nginx的访问日志功能 网站的404页面优化 拒绝某些ip访问 nginx的反向代理 nginx反向代理的实现 nginx负载均衡简单实现 Linux - nginx基础及常用操作 nginx是一个开源的,支持高性能,高并发的www服务和代理服务软件.它是一个俄罗斯人lgor sysoev开发的,作者将源代码开源出来供全球使用. nginx…
一.上节总结回顾 上一节,我们回顾了经典的 C10K 和 C1000K 问题.简单回顾一下,C10K 是指如何单机同时处理 1 万个请求(并发连接 1 万)的问题,而 C1000K 则是单机支持处理 100 万个请求(并发连接 100 万)的问题. I/O 模型的优化,是解决 C10K 问题的最佳良方.Linux 2.6 中引入的 epoll,完美解决了C10K 的问题,并一直沿用至今.今天的很多高性能网络方案,仍都基于 epoll. 自然,随着互联网技术的普及,催生出更高的性能需求.从 C10…
第六节 Linux系统基础优化 标签(空格分隔):Linux实战教学笔记-陈思齐 第1章 基础环境 第2章 使用网易163镜像做yum源 默认国外的yum源速度很慢,所以换成国内的. 第一步:先备份 mkdir backup mv C* backup/ 第二步:下载163yum源 wget http://mirrors.163.com/.help/CentOS6-Base-163.repo 第三步:清除旧缓存 yum clean all 第四步:创建新缓存 yum makecache 第五步:安…
Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式,思想比渗透更加重要. Netcat Cryptcat weevely cymothoa Netcat NetCat是一个非常简单的Unix工具,可以读.写TCP或UDP网络连接(network connection).它被设计成一个可靠的后端(back-end) 工具,能被其它的程序或脚本直接地或…
转自:http://www.linuxdiyf.com/viewarticle.php?id=174074 Unix和Linux下C语言学习指南 引言 尽管 C 语言问世已近 30 年,但它的魅力仍未减退.C 语言继续吸引着众多的开发者,他们为了编写.移植或维护应用程序而必须学习新技能. 本文是为了满足对C语言初学者或想提高自身C语言修为的开发人员的需要而写的.希望对您的学习和工作有所帮助.您也许不赞同其中的某些方法,但我们希望您会喜欢其中的一些. 本文不介绍作为一个程序员应掌握得语言细节,而是…
这是看itercast的学习笔记 Linux系统基础命令 日期时间 命令date用以查看.设置当前系统时间:格式化显示时间: +%Y--%m--%d 命令hwclock(clock)用以显示硬件时钟时间 命令cal用以查看日历 uptime用以查看系统运行时间 输出.查看命令 命令echo用以显示文件内容 命令cat用以显示文件内容 命令head用以显示文件的头几行(默认10行) -n指定显示行数 命令tail用以显示文件的末尾几行(默认10行) -n指定显示行数 -f追踪显示文件更新(命令不会…
注:内容系兄弟连Linux教程(百度传课:史上最牛的Linux视频教程)的学习笔记. Linux入门基础知识 1. Unix和Linux发展历史 二者就像父子关系,当然Unix是老爹.1965年,MIT.GE和AT&T的贝尔实验室计划开发一个复杂的分时操作系统Multics,但是由于目标过于庞大和复杂最后失败了.后来,1969年,贝尔实验室的肯·汤普森开发了UNIX系统,据说他是为了流畅地玩一款游戏才开发了这一个系统.但是,此时UNIX系统并没有被广泛的推广.后来将TCP/IP协议捆绑到UNIX…
一. Linux一些基础指令 cat命令, 用于查看纯文本文件(常用于内容较少的) cat 校花的故事.txt # 查看文件 cat -n 校花的故事.txt # 查看文件并显示行号 -n 显示行号 # 追加文字到文件中 cat >>/tmp/校花的故事.txt << EOF 北京大学校花 清华大学校花 EOF # EOF是起始,结束符 把EOF中间的文本追加到校花的故事.txt文件中去 more命令,用于查看内容较多的文本,会以百分比的形式告知已经看到了多少, 回车向下读取内容…
目录 Linux网络基础 一.网卡和数据包的转发 1.收包流程 二.多网卡bonding 三.SR-IOV 四.DPDK 五.TUN/TAP 六.Linux bridge 和VLAN 七.TCP/IP协议栈 八.Iptables 九.QOS Linux网络基础 一.网卡和数据包的转发 1.收包流程 ①.网卡接受报文,根据设置的不同模式及目的mac地址来判断是否接受该报文 网卡的模式有混杂模式(Promiscuous Model).直接模式(Direct Model).组播模式(MultiCast…
根据我的经验,人在年轻时,最头疼的一件事就是决定自己这一生要做什么.在这方面,我倒没有什么具体的建议:干什么都可以,但最好不要写小说,这是和我抢饭碗.总而言之,干什么都是好的:但要干出个样子来,这才是人的价值和尊严所在. --王小波 我是一条Linux运维技术学习路径. 在跟我相处的每个阶段,都包含详细的教程.练习项目等:首先学习Linux相关的基本操作和系统管理,然后依次学习并实践服务部署.数据库管理.脚本编程.系统监控和安全防护.以及Web服务运维技术.最后学习Docker容器服务和Wind…
20145308 <网络对抗> 逆向及BOF基础实践 学习总结 实践目的 通过两种方法,实现程序能够运行原本并不会被运行的代码 实践原理 利用foo函数的Bof漏洞,构造一个攻击输入字符串,覆盖返回地址,触发getShell函数 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数 知识点学习总结 汇编.机器指令 汇编指令与机器指令一一对应 EIP.指令地址 %eip存储指向下一条要执行的指令的地址 %ebp存储栈底指针,栈基址 %esp存储栈顶指针,始终指向栈顶 ESP存储栈…
Linux第六周学习总结--进程额管理和进程的创建 作者:刘浩晨 [原创作品转载请注明出处] <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 一. 进程的描述 操作系统内核三大功能:进程管理(核心).内存管理和文件系统. 进程控制快PCB--进程描述符task_struct数据结构 进程状态(五种状态)转化: 注意:就绪状态和运行状态都是TASK_RUNNING,具体是就绪还是执行要看系统当前的资源分配情况.…
Linux最基础之<小朋友也能学会Linux>... 1.Linux 知识积累: Linux 英文解释为 Linux is not Unix.学习Linux必须要熟练使用的操作系统是Centos7和RHEL7 Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学读研时出于个人爱好而编写的操作系统. Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统. Linux能运行主要的…
一.基础知识点学习  1.Android体系结构 如图所示,android 架构分为三层: (1)最底层是linux内核,主要是各种硬件的驱动,如相机驱动(Camera Driver),闪存驱动(Flash Memory Driver),wifi驱动(Wifi Driver)等 (2)中间一层是库包(libraries)和android运行环境(android runtime),其中库包主要包括一些协议和浏览器内核(webkit)等,android运行环境主要包括核心库包和Dalvik虚拟机 (…
linux body { font-family: Helvetica, arial, sans-serif; font-size: 14px; line-height: 1.6; padding-top: 10px; padding-bottom: 10px; background-color: white; padding: 30px; } body > *:first-child { margin-top: 0 !important; } body > *:last-child { ma…
Linux系统基础优化和基本命令 网络参数设定命令 ifconfig: 查询,设置网卡和ip等参数 ifup,ifdown: 脚本命令,更简单的方式 ip: 符合指令,直接修改上述功能 编辑网卡配置文件: vim /etc/sysconfig/network-scripts/ifcfg-eth0 修改配置参数: ONBOOT=yes 网卡配置文件详解 网络配置文件: /etc/sysconfig/network 网络接口配置文件: /etc/sysconfig/network-scripts/i…