- Shell 脚本编程全面学习指南
前言Shell脚本编程是Linux和Unix系统管理、自动化任务的核心工具之一。通过Shell脚本,你可以自动化重复性操作、简化复杂流程、提高系统管理效率,甚至构建完整的自动化运维工具。本文将带你从基础到进阶,全面学习Shell脚本编程,涵盖语法、结构、调试、最佳实践等内容。一、Shell简介与环境搭建1.1什么是Shell?Shell是命令行解释器,是用户与操作系统内核之间的桥梁。它接收用户输入
- 线上故障排查神器!用strace和ftrace揪出系统调用的“幕后黑手“
悠悠12138
运维
前几天凌晨2点,我又被监控报警给吵醒了。服务器CPU飙到90%,但是top看了半天也找不到罪魁祸首。这种时候,就得请出我们运维人员的两大法宝了——strace和ftrace。说实话,刚开始接触这两个工具的时候,我也是一脸懵逼。什么系统调用、内核跟踪,听起来就很高大上的样子。但是用多了你就会发现,这玩意儿简直就是排查问题的神器!今天就跟大家分享一下我这些年用下来的一些心得。先说说系统调用这个东西你可
- Linux: rsync+inotify实时同步及rsync+sersync实时同步
能不能别报错
linux系统运维linux服务器运维
rsync+sersync和rsync+inotify是两种常用的实时文件同步方案,用于监控源目录变化并自动同步到目标位置。以下是对两者的详细对比和配置指南:核心区别方案原理优点缺点rsync+inotify使用Linux内核的inotify监控文件变化,触发rsync同步原生支持,无需额外依赖需手动编写脚本,稳定性依赖实现rsync+sersync基于inotify和rsync,封装为独立工具,
- APatch - 新一代Android内核Root解决方案
项目简介APatch是一款创新的Android内核级Root解决方案,具有以下核心特点:基于内核补丁技术实现Root权限管理支持类似Magisk的模块系统(APM)提供内核模块功能(KPM),允许向内核注入任意代码兼容Android内核版本3.18-6.1仅支持ARM64架构设备APatch依赖于KernelPatch核心引擎,其UI界面和模块系统部分代码源自KernelSU。功能特性核心功能内核
- 操作系统互斥全攻略:从屏蔽中断到TSL指令
ruan114514
操作系统嵌入式硬件单片机
屏蔽中断(DisablingInterrupts)核心概念:一种低级同步原语,主要用于单处理器(Uniprocessor/Single-CPU)系统。通过在执行临界区代码前暂时禁止CPU响应外部硬件中断,保证一小段代码(通常是操作关键内核数据结构)的原子性执行。工作原理:进入临界区前:执行特殊CPU指令(如CLI-ClearInterruptFlagonx86)关闭中断响应。执行临界区代码:CPU
- 国产开源!TinyPiXOS国产自主轻量级移动嵌入式设备桌面操作系统!运用纯C/C++从底层重构出超轻量级的整体图形技术栈,打造一款独立可控、轻量且高度定制化的嵌入式桌面操作系统方案。
TinyPiXOS开发者联盟
TinyPiXOS开源c语言c++系统架构linux嵌入式硬件arm开发
目录TinyPiXOS——国产自主轻量级移动嵌入式设备桌面操作系统开源工程系统优势系统特点为什么要造“轮子”?我们做了什么?核心模块自主研发GUI桌面系统交互设计和开发适用场景关于自有内核的开发规划关于多窗口操作的说明如何参与项目如何学习TinyPiXOS关注我们TinyPiXOS——国产自主轻量级移动嵌入式设备桌面操作系统TinyPiXOS以开源Linux为基础,通过创新的内核级轻量化改造与精简
- 浅谈EXT2文件系统----inode table
巭犇
文件系统linux数据库运维
Inodetable概述在EXT2文件系统中,inode表(InodeTable)是一个非常重要的结构,用于存储文件和目录的元数据。每个文件和目录都由一个inode(索引节点)来表示,inode中包含了关于该文件或目录的关键信息,如文件的大小、权限、所属用户、时间戳以及指向数据块的指针等。EXT2文件系统将所有inode结构集中存储在inode表中。内核源码structext2_inode{__l
- linux proc/pid/信息说明
shenhuxi_yu
LINUX
版权声明:本文为EnweiTech原创文章,未经博主允许不得转载。https://blog.csdn.net/English0523/article/details/53391567Proc是一个虚拟文件系统,在Linux系统中它被挂载于/proc目录之上。Proc有多个功能,这其中包括用户可以通过它访问内核信息或用于排错,这其中一个非常有用的功能,也是Linux变得更加特别的功能就是以文本流的形
- 浅谈ext2文件系统
Linux内核远航者
Linux内核unix文件系统ext2
我们知道文件系统是组织和管理磁盘上的文件,并向用户提供操作接口(open、read、write等),Unix中的每个对象几乎都可以当做文件来看待。内核在没有结构的硬件上构造结构化的文件系统,而文件抽象在整个系统中广泛使用。Linux支持多种文件系统,如ext2,ext3,vfat等,ext2是符合Linux标准的文件系统。我们知道,一个磁盘可以划分成多个分区,每个分区必须先用格式化工具(例如某种m
- 美国VPS服务器Linux内核参数调优的实践与验证
cpsvps
服务器linux运维
美国vps服务器Linux内核参数调优的实践与验证在云计算和虚拟化技术日益普及的今天,美国VPS服务器因其稳定的网络环境和优越的性价比,成为众多企业和开发者的首选。Linux内核参数的默认配置往往无法充分发挥VPS的性能潜力。本文将深入探讨美国VPS服务器上Linux内核参数的调优实践,通过系统化的测试验证方法,帮助用户实现服务器性能的显著提升。美国VPS服务器Linux内核参数调优的实践与验证一
- Ubuntu 系统安装 Docker 全流程指南
ANFUT
ubuntudockerlinux
一、环境准备1.系统要求-Ubuntu22.04LTS或24.04LTS(兼容性最佳)-内核版本≥5.15(验证命令:`uname-r`)-64位架构(验证命令:`arch`输出应为`x86_64`)2.卸载旧版本sudoaptremovedockerdocker-enginedocker.iocontainerdruncsudorm-rf/var/lib/docker二、核心安装步骤3.配置仓库
- DPDK(25.03) 零基础配置笔记
_Chipen
DPDK计算机网络
DPDK零基础配置笔记DPDK(DataPlaneDevelopmentKit,数据面开发工具包)是一个高性能数据包处理库,主要用于绕过Linux内核网络协议栈,直接在用户空间对网卡收发的数据进行操作,以此实现极高的数据吞吐。DPDK的核心价值是:使用轮询+巨页内存+用户态驱动,提升网络收发性能。适用场景:高频交易、软件路由器、防火墙、负载均衡器等对网络性能要求极高的系统。基本数据简要解释igb_
- C#进行串口应用开发如何处理串口的异常情况
openwin_top
c#串口应用开发问题系列c#开发语言串口通讯上位机
python编程示例系列python编程示例系列二python的Web神器Streamlit如何应聘高薪职位C#视觉应用开发问题系列c#串口应用开发问题系列microPythonPython最小内核源码解析NI-motion运动控制c语言示例代码解析在C#中进行串口应用开发时,处理串口的异常情况是非常重要的。常见的串口异常包括端口不可用、数据传输错误、超时等
- android分区设计,构建 ODM 分区 | Android 开源项目 | Android Open Source Project
Android10支持使用Android构建系统构建/odm分区。ODM分区简介原始设计制造商(ODM)能够为其特定设备(开发板)自定义系统芯片(SoC)供应商板级支持包(BSP)。这样,他们就可以为板级组件、板级守护进程或者其基于硬件抽象层(HAL)的自有功能实现内核模块。他们可能还需要替换或自定义SoC组件。在之前的Android版本中,对于使用相同SoC(或使用同一系列中的不同SoC)的设备
- MTK CAMERA ISP6S Kernel
YoonAphrodite
mtkcameramtkkernel
camera的开机上电分两个流程,一个是内核中camera驱动进行挂载,另一个是用户空间通过ioctrl对内核空间camera驱动进行上电。驱动挂载:1.module_init(imgsensor_init);module_init用来进行驱动的加载,传入函数指针imgsensor_init调用imgsensor_init()2.platform_driver_register(&gimgsens
- 深入理解Linux内核-进程
苦茶子12138
Linux上岸手册linux服务器运维
1、进程的静态特性进程:程序执行时的一个实例进程描述符(task_struct):进程的基本信息(thread_info)、指向内存区描述符的指针(mm_struct)、进程相关的tty(tty_struct)、当前目录(fs_struct)、指向文件描述符的指针(files_struct)、所接收的信号(signal_struct)进程状态:1、可运行状态(TASK_RUNNING):正在运行或
- Linux五大网络IO模型
Acto
一、须知对于操作系统来说,空间会分为用户空间与内核空间用户空间:用户程序的运行空间。为了安全,它们是隔离的,即使用户的程序崩溃,内核也不会受到影响。只能执行简单的运算,不能直接调用系统资源,必须通过系统接口(systemcall),才能向内核发出指令。内核空间:这是Linux内核的运行空间,可以执行任意命令,调用系统的一切资源通过用户空间访问系统空间并让其帮助我们完成我们所需要执行的操作或者任务二
- 放过自己
谢意
阅读内容《走出剧情》03-159页每一个孩子的成长都有自己天然的精神内核来指引,父母能做到最好的事情,就是保护这个精神内核不被破坏,在爱和自由的土壤中智慧会自然生发,养育孩子不仅是为了孩子,更重要的是为了我们自己的成长,当我们肯放手给孩子自由,当我们肯把注意力从挑孩子毛病转到自己的内心,为自己而活,就是放过孩子,也放过了自己。评判无论对自己,对别人都没有正面意义,只会加重自己内心的分裂和痛苦,因为
- 服务器采购和选型
中兔西维亚
实用工具服务器运维网络
1.CPU双路CPU,0号位和1号位,只要0号位CPU正常,服务器就能工作,若1号位CPU故障,服务器会报警。若0号位CPU故障,1号位CPU正常,服务器不能启动,需要将1号位的CPU换到0号位上才可以启动服务器。双路CPU,坏一个,另一个能正常工作吗?还是都不能用了,懂得告知,万谢cpu主频和最大睿频都是什么意思?CPU的主频,即CPU内核工作的时钟频率。睿频是指当启动一个运行程序后,处理器会自
- window显示驱动开发—在 Direct3D 10 基础上的更改
程序员王马
windows图形显示驱动开发驱动开发java开发语言
Kernel-Mode服务的驱动程序回调函数当运行时调用用户模式显示驱动程序的CreateDevice(D3D10)函数时,Direct3D版本11运行时在D3DDDI_DEVICECALLBACKS结构中提供的特定于设备的回调函数将驱动程序与内核句柄和内核函数签名隔离开来。Direct3D版本11运行时更改了回调语义,因此,回调函数的实现支持自由线程操作模式,而以前的Direct3D版本运行时不
- Binder跨进程通信机制
四喜汤圆
一、相关概念进程空间把进程空间分为用户空间和内核空间。进程间:用户空间不可共享,内核空间可以共享,所有进程共用一个内核空间。用户空间和内核空间的交互通过系统调用。copy_from_user:将数据从用户空间拷贝到内核空间copy_to_user:将数据从内核空间拷贝到用户空间进程隔离在Linux中,虚拟内存机制为每个进程分配了线性连续的内存空间,OS将这种虚拟内存空间映射到物理内存空间。-->每
- #Linux内存管理# 假设使用printf打印指针bufA和bufB指向的地址是一样的,那么在内核中这两块虚拟内存是否“打架”了呢?
不,在内核中这两块虚拟内存不会“打架”。原因在于虚拟内存的工作原理和内核的管理机制。下面我将详细解释,基于你描述的场景:假设在同一个进程或不同进程中,使用printf打印出的bufA和bufB的虚拟地址值相同。关键点:虚拟地址是进程本地的用户空间虚拟地址的含义:printf打印的地址是用户空间的虚拟地址(VirtualAddress)。每个进程都有自己的虚拟地址空间,由操作系统内核通过内存管理单元
- #Linux内存管理# vm_normal_page()函数返回的什么样页面的struct page数据结构?为什么内存管理代码中需要这个函数?
vm_normal_page()函数是Linux内核内存管理的一个关键且微妙的函数,其职责和返回结果需要深入理解。下面详细解释:1.vm_normal_page()返回什么样的structpage?vm_normal_page()函数接收一个有效的、已经存在于物理内存中的页表项(PTE)作为输入(即pte_present(pte)必须为true),然后返回一个指向与该PTE所映射的物理页帧相对应的
- 内核编译配置选项简介 (2.4.18-rmk7-pxal)(转)
wenlifu71022
linux内核编译网络idesystemlinuxnetworkinglinux内核
http://blog.chinaunix.net/u1/40228/showart_335965.htmlCodematurityleveloptions代码成熟度选项[*]Promptfordevelopmentand/orincompletecode/drivers显示尚在开发中或尚未完成的代码与驱动.除非你是测试人员或者开发者,否则请勿选择我是开发者,所以选[*][]Promptforob
- Linux 命令:uname
hweiyu00
Linux命令linux运维服务器
Linuxuname命令详细教程uname(UnixName)是Linux系统中用于获取系统基本信息的基础命令。它能快速展示操作系统、内核、主机名等关键信息,是系统诊断和环境确认的常用工具。资料已经分类整理好:https://pan.quark.cn/s/26d73f7dd8a7一、基本语法uname[选项]核心功能:默认只显示操作系统名称(如Linux)。通过选项可获取更详细的系统信息。二、常用
- buildroot+qemu+arm64虚拟环境多种方式启动linux内核
左家垅的牛
linux运维服务器
Qemu:QEMU是一款开源的硬件虚拟化软件,可以在不同的主机平台上运行虚拟机。它通过动态的二进制转换,模拟CPU,并且提供一组设备模型,使它能够运行多种未修改的客户机OS。QEMU采用全系统仿真,可以模拟完整的计算机系统,包括处理器、内存、存储和外围设备。它提供硬件仿真,允许在一个虚拟环境中运行不同体系结构的操作系统和应用程序。QEMU可以与KVM一起使用,进而接近本地速度运行虚拟机。目前,QE
- Java内存模型
十丈_红尘
一谈谈对Java内存模型的理解1️⃣线程私有补充知识点:1.内存简介32位:2^32的可寻址范围;64位:2^64的可寻址范围;2.地址空间的划分内核空间:指操作系统程序和C运行时的空间,包括调度程序等;用户空间:Java程序运行时实际使用的空间;3.Java内存模型JDK1.84.程序计数器 1.当前线程所执行的字节码的行号指示器; 2.改变计数器的值来选取下一条需要执行的字节码指令; 3.和线
- 内存泄漏系列专题分析之二十九:高通相机CamX--Android通用GPU内存分配和释放原理
一起搞IT吧
内存泄漏和内存占用拆解系列专题数码相机android图像处理
【关注我,后续持续新增专题博文,谢谢!!!】上一篇我们讲了:这一篇我们开始讲:内存泄漏系列专题分析之二十九:高通相机CamX--Android通用GPU内存分配和释放原理目录一、背景二、:Android通用GPU内存分配和释放原理2.1:用户态GPU内存分配2.2:内核态GPU内存分配2.3:kgslioctlgpumemalloc分析2.4:gpumemallocentry分析2.5:内核态GP
- Camera HAL/ISP 专业术语大全
生活需要深度
ISP+NPU接口隔离原则网络
不断更新,建议收藏,快速检索SOC,SystemOnChip,片上系统HAL,HardwareAbstractionLayer,硬件抽象层ISP,ImageSignalProcessor,图像信号处理器KMD,KernelModeDriver,内核模式驱动程序MCU,MicrocontrollerUnit,微控制器OSAL,OperatingSystemAbstractionLayer,操作系统抽
- QuACK:用纯 Python 把 H100 推到“光速”
吴脑的键客
人工智能python开发语言gpu算力
FlashAttention的共同作者TriDao与普林斯顿大学的两位博士生最近联合推出了一个名为QuACK的新内核库。这一创新的内核库引起了广泛关注,尤其是在高性能计算领域。QuACK的开发背景QuACK的开发完全基于Python和CuTe-DSL,令人瞩目的是,它不涉及任何CUDAC++代码。这一设计理念打破了传统的编程框架,使得开发者能够在更友好的环境中进行高效的GPU编程。性能优势在强大的
- 强大的销售团队背后 竟然是大数据分析的身影
蓝儿唯美
数据分析
Mark Roberge是HubSpot的首席财务官,在招聘销售职位时使用了大量数据分析。但是科技并没有挤走直觉。
大家都知道数理学家实际上已经渗透到了各行各业。这些热衷数据的人们通过处理数据理解商业流程的各个方面,以重组弱点,增强优势。
Mark Roberge是美国HubSpot公司的首席财务官,HubSpot公司在构架集客营销现象方面出过一份力——因此他也是一位数理学家。他使用数据分析
- Haproxy+Keepalived高可用双机单活
bylijinnan
负载均衡keepalivedhaproxy高可用
我们的应用MyApp不支持集群,但要求双机单活(两台机器:master和slave):
1.正常情况下,只有master启动MyApp并提供服务
2.当master发生故障时,slave自动启动本机的MyApp,同时虚拟IP漂移至slave,保持对外提供服务的IP和端口不变
F5据说也能满足上面的需求,但F5的通常用法都是双机双活,单活的话还没研究过
服务器资源
10.7
- eclipse编辑器中文乱码问题解决
0624chenhong
eclipse乱码
使用Eclipse编辑文件经常出现中文乱码或者文件中有中文不能保存的问题,Eclipse提供了灵活的设置文件编码格式的选项,我们可以通过设置编码 格式解决乱码问题。在Eclipse可以从几个层面设置编码格式:Workspace、Project、Content Type、File
本文以Eclipse 3.3(英文)为例加以说明:
1. 设置Workspace的编码格式:
Windows-&g
- 基础篇--resources资源
不懂事的小屁孩
android
最近一直在做java开发,偶尔敲点android代码,突然发现有些基础给忘记了,今天用半天时间温顾一下resources的资源。
String.xml 字符串资源 涉及国际化问题
http://www.2cto.com/kf/201302/190394.html
string-array
- 接上篇补上window平台自动上传证书文件的批处理问卷
酷的飞上天空
window
@echo off
: host=服务器证书域名或ip,需要和部署时服务器的域名或ip一致 ou=公司名称, o=公司名称
set host=localhost
set ou=localhost
set o=localhost
set password=123456
set validity=3650
set salias=s
- 企业物联网大潮涌动:如何做好准备?
蓝儿唯美
企业
物联网的可能性也许是无限的。要找出架构师可以做好准备的领域然后利用日益连接的世界。
尽管物联网(IoT)还很新,企业架构师现在也应该为一个连接更加紧密的未来做好计划,而不是跟上闸门被打开后的集成挑战。“问题不在于物联网正在进入哪些领域,而是哪些地方物联网没有在企业推进,” Gartner研究总监Mike Walker说。
Gartner预测到2020年物联网设备安装量将达260亿,这些设备在全
- spring学习——数据库(mybatis持久化框架配置)
a-john
mybatis
Spring提供了一组数据访问框架,集成了多种数据访问技术。无论是JDBC,iBATIS(mybatis)还是Hibernate,Spring都能够帮助消除持久化代码中单调枯燥的数据访问逻辑。可以依赖Spring来处理底层的数据访问。
mybatis是一种Spring持久化框架,要使用mybatis,就要做好相应的配置:
1,配置数据源。有很多数据源可以选择,如:DBCP,JDBC,aliba
- Java静态代理、动态代理实例
aijuans
Java静态代理
采用Java代理模式,代理类通过调用委托类对象的方法,来提供特定的服务。委托类需要实现一个业务接口,代理类返回委托类的实例接口对象。
按照代理类的创建时期,可以分为:静态代理和动态代理。
所谓静态代理: 指程序员创建好代理类,编译时直接生成代理类的字节码文件。
所谓动态代理: 在程序运行时,通过反射机制动态生成代理类。
一、静态代理类实例:
1、Serivce.ja
- Struts1与Struts2的12点区别
asia007
Struts1与Struts2
1) 在Action实现类方面的对比:Struts 1要求Action类继承一个抽象基类;Struts 1的一个具体问题是使用抽象类编程而不是接口。Struts 2 Action类可以实现一个Action接口,也可以实现其他接口,使可选和定制的服务成为可能。Struts 2提供一个ActionSupport基类去实现常用的接口。即使Action接口不是必须实现的,只有一个包含execute方法的P
- 初学者要多看看帮助文档 不要用js来写Jquery的代码
百合不是茶
jqueryjs
解析json数据的时候需要将解析的数据写到文本框中, 出现了用js来写Jquery代码的问题;
1, JQuery的赋值 有问题
代码如下: data.username 表示的是: 网易
$("#use
- 经理怎么和员工搞好关系和信任
bijian1013
团队项目管理管理
产品经理应该有坚实的专业基础,这里的基础包括产品方向和产品策略的把握,包括设计,也包括对技术的理解和见识,对运营和市场的敏感,以及良好的沟通和协作能力。换言之,既然是产品经理,整个产品的方方面面都应该能摸得出门道。这也不懂那也不懂,如何让人信服?如何让自己懂?就是不断学习,不仅仅从书本中,更从平时和各种角色的沟通
- 如何为rich:tree不同类型节点设置右键菜单
sunjing
contextMenutreeRichfaces
组合使用target和targetSelector就可以啦,如下: <rich:tree id="ruleTree" value="#{treeAction.ruleTree}" var="node" nodeType="#{node.type}"
selectionChangeListener=&qu
- 【Redis二】Redis2.8.17搭建主从复制环境
bit1129
redis
开始使用Redis2.8.17
Redis第一篇在Redis2.4.5上搭建主从复制环境,对它的主从复制的工作机制,真正的惊呆了。不知道Redis2.8.17的主从复制机制是怎样的,Redis到了2.4.5这个版本,主从复制还做成那样,Impossible is nothing! 本篇把主从复制环境再搭一遍看看效果,这次在Unbuntu上用官方支持的版本。 Ubuntu上安装Red
- JSONObject转换JSON--将Date转换为指定格式
白糖_
JSONObject
项目中,经常会用JSONObject插件将JavaBean或List<JavaBean>转换为JSON格式的字符串,而JavaBean的属性有时候会有java.util.Date这个类型的时间对象,这时JSONObject默认会将Date属性转换成这样的格式:
{"nanos":0,"time":-27076233600000,
- JavaScript语言精粹读书笔记
braveCS
JavaScript
【经典用法】:
//①定义新方法
Function .prototype.method=function(name, func){
this.prototype[name]=func;
return this;
}
//②给Object增加一个create方法,这个方法创建一个使用原对
- 编程之美-找符合条件的整数 用字符串来表示大整数避免溢出
bylijinnan
编程之美
import java.util.LinkedList;
public class FindInteger {
/**
* 编程之美 找符合条件的整数 用字符串来表示大整数避免溢出
* 题目:任意给定一个正整数N,求一个最小的正整数M(M>1),使得N*M的十进制表示形式里只含有1和0
*
* 假设当前正在搜索由0,1组成的K位十进制数
- 读书笔记
chengxuyuancsdn
读书笔记
1、Struts访问资源
2、把静态参数传递给一个动作
3、<result>type属性
4、s:iterator、s:if c:forEach
5、StringBuilder和StringBuffer
6、spring配置拦截器
1、访问资源
(1)通过ServletActionContext对象和实现ServletContextAware,ServletReque
- [通讯与电力]光网城市建设的一些问题
comsci
问题
信号防护的问题,前面已经说过了,这里要说光网交换机与市电保障的关系
我们过去用的ADSL线路,因为是电话线,在小区和街道电力中断的情况下,只要在家里用笔记本电脑+蓄电池,连接ADSL,同样可以上网........
 
- oracle 空间RESUMABLE
daizj
oracle空间不足RESUMABLE错误挂起
空间RESUMABLE操作 转
Oracle从9i开始引入这个功能,当出现空间不足等相关的错误时,Oracle可以不是马上返回错误信息,并回滚当前的操作,而是将操作挂起,直到挂起时间超过RESUMABLE TIMEOUT,或者空间不足的错误被解决。
这一篇简单介绍空间RESUMABLE的例子。
第一次碰到这个特性是在一次安装9i数据库的过程中,在利用D
- 重构第一次写的线程池
dieslrae
线程池 python
最近没有什么学习欲望,修改之前的线程池的计划一直搁置,这几天比较闲,还是做了一次重构,由之前的2个类拆分为现在的4个类.
1、首先是工作线程类:TaskThread,此类为一个工作线程,用于完成一个工作任务,提供等待(wait),继续(proceed),绑定任务(bindTask)等方法
#!/usr/bin/env python
# -*- coding:utf8 -*-
- C语言学习六指针
dcj3sjt126com
c
初识指针,简单示例程序:
/*
指针就是地址,地址就是指针
地址就是内存单元的编号
指针变量是存放地址的变量
指针和指针变量是两个不同的概念
但是要注意: 通常我们叙述时会把指针变量简称为指针,实际它们含义并不一样
*/
# include <stdio.h>
int main(void)
{
int * p; // p是变量的名字, int *
- yii2 beforeSave afterSave beforeDelete
dcj3sjt126com
delete
public function afterSave($insert, $changedAttributes)
{
parent::afterSave($insert, $changedAttributes);
if($insert) {
//这里是新增数据
} else {
//这里是更新数据
}
}
 
- timertask
shuizhaosi888
timertask
java.util.Timer timer = new java.util.Timer(true);
// true 说明这个timer以daemon方式运行(优先级低,
// 程序结束timer也自动结束),注意,javax.swing
// 包中也有一个Timer类,如果import中用到swing包,
// 要注意名字的冲突。
TimerTask task = new
- Spring Security(13)——session管理
234390216
sessionSpring Security攻击保护超时
session管理
目录
1.1 检测session超时
1.2 concurrency-control
1.3 session 固定攻击保护
 
- 公司项目NODEJS实践0.3[ mongo / session ...]
逐行分析JS源代码
mongodbsessionnodejs
http://www.upopen.cn
一、前言
书接上回,我们搭建了WEB服务端路由、模板等功能,完成了register 通过ajax与后端的通信,今天主要完成数据与mongodb的存取,实现注册 / 登录 /
- pojo.vo.po.domain区别
LiaoJuncai
javaVOPOJOjavabeandomain
POJO = "Plain Old Java Object",是MartinFowler等发明的一个术语,用来表示普通的Java对象,不是JavaBean, EntityBean 或者 SessionBean。POJO不但当任何特殊的角色,也不实现任何特殊的Java框架的接口如,EJB, JDBC等等。
即POJO是一个简单的普通的Java对象,它包含业务逻辑
- Windows Error Code
OhMyCC
windows
0 操作成功完成.
1 功能错误.
2 系统找不到指定的文件.
3 系统找不到指定的路径.
4 系统无法打开文件.
5 拒绝访问.
6 句柄无效.
7 存储控制块被损坏.
8 存储空间不足, 无法处理此命令.
9 存储控制块地址无效.
10 环境错误.
11 试图加载格式错误的程序.
12 访问码无效.
13 数据无效.
14 存储器不足, 无法完成此操作.
15 系
- 在storm集群环境下发布Topology
roadrunners
集群stormtopologyspoutbolt
storm的topology设计和开发就略过了。本章主要来说说如何在storm的集群环境中,通过storm的管理命令来发布和管理集群中的topology。
1、打包
打包插件是使用maven提供的maven-shade-plugin,详细见maven-shade-plugin。
<plugin>
<groupId>org.apache.maven.
- 为什么不允许代码里出现“魔数”
tomcat_oracle
java
在一个新项目中,我最先做的事情之一,就是建立使用诸如Checkstyle和Findbugs之类工具的准则。目的是制定一些代码规范,以及避免通过静态代码分析就能够检测到的bug。 迟早会有人给出案例说这样太离谱了。其中的一个案例是Checkstyle的魔数检查。它会对任何没有定义常量就使用的数字字面量给出警告,除了-1、0、1和2。 很多开发者在这个检查方面都有问题,这可以从结果
- zoj 3511 Cake Robbery(线段树)
阿尔萨斯
线段树
题目链接:zoj 3511 Cake Robbery
题目大意:就是有一个N边形的蛋糕,切M刀,从中挑选一块边数最多的,保证没有两条边重叠。
解题思路:有多少个顶点即为有多少条边,所以直接按照切刀切掉点的个数排序,然后用线段树维护剩下的还有哪些点。
#include <cstdio>
#include <cstring>
#include <vector&