- ARM V8 base instruction -- Debug instructions
xiaozhiwise
Assemblyarm
/**Debuginstructions*/BRK#imm16进入monitormodedebug,那里有on-chipdebugmonitorcodeHLT#imm16进入haltmodedebug,连接有外部调试硬件
- VS Code debug jest测试用例
IT-周杰伦
vscode测试用例
添加如下配置:{"version":"0.2.0","configurations":[{"name":"DebugJestTests","type":"node","request":"launch","runtimeArgs":["--inspect-brk","${workspaceRoot}/node_modules/jest/bin/jest.js","--runInBand","--t
- 聊聊C语言中的malloc申请内存的内部原理
zhangyanfei01
c语言开发语言
大家好,我是飞哥!我们今天来深入地了解一下malloc函数的内部工作原理。操作系统为应为应用层提供了mmap、brk等系统调用来申请内存。但是这些系统调用在很多的时候,我们并不会直接使用。原因有以下两个系统调用管理的内存粒度太大。系统调用申请内存都是整页4KB起,但是我们平时编程的时候经常需要申请几十字节的小对象。如果使用mmap未免碎片率也太大了。频繁的系统调用的开销比较大。和函数调用比起来,系
- new/delete vs malloc/free
余生有烟火
开发语言c++
new是关键字,最后还是调用malloc->brkmalloc是函数,调用brk()new和malloc都是用于在程序运行时动态分配内存的方法,但它们有一些重要的区别:语法:new是C++关键字,用于在堆上分配内存并同时调用对象的构造函数(如果有的话)。malloc是C和C++中的函数,仅用于在堆上分配一块指定大小的内存,不会调用对象的构造函数。类型安全:new是类型安全的,它会在分配内存时考虑类
- linux 内存
boring_111
linux运维服务器
linux内存分类按用途分stackheap(brk,sbrk,mmap),文件映射,bss,data,text,还有pagecache,slab(kmalloc连续),vmalloc等内核深处的。属性进程OOM对于进程来说,堆泄漏在死亡时是没问题但是对于不断获得内存,导致系统内存不足时会触发oomkiller。系统内存不足时会唤醒OOMkiller来选择一个进程给杀掉,在我们这个例子中它杀掉了这
- java技术专家【分布式框架】【通过C语言深度解读Redis核心架构】06-内存管理源码分析
不走小道
Java技术专家java分布式c语言
文章目录一、动态内存分配器1.1、内存分配器概述进程的内存空间申请动态内存brk函数mmap1.2、Jemalloc设计Jemalloc的内存分配策略1.3、Redis的内存管理Redis的内存管理封装zmalloczcalloczreallocztryrealloc_usable
- 进程分配内存的两种方式--brk() 和mmap()(不设计共享内存)
鱼思故渊
linux内核设计与实现linux
如何查看进程发生缺页中断的次数?用ps-omajflt,minflt-Cprogram命令查看。majflt代表majorfault,中文名叫大错误,minflt代表minorfault,中文名叫小错误。这两个数值表示一个进程自启动以来所发生的缺页中断的次数。发成缺页中断后,执行了那些操作?当一个进程发生缺页中断的时候,进程会陷入内核态,执行以下操作:1、检查要访问的虚拟地址是否合法2、查找/分配
- C语言函数参考手册-目录速查
newdf观察者
C语言c语言开发语言
开发及运行环境操作系统:Windows2000、WindowsXP、WindowsServer2003。开发环境:VisualC++6.0、TurboC2.0程序大部分都使用TurboC2.0环境运行,如果不能使用该环境运行程序,可在VisualC++6.0下运行。C语言函数参考手册-目录1目录6第1章动态内存管理函数:alloc.h151.1brk()——重置数据段存储空间函数161.2core
- Node调试
Shaelyn_
交互式调试Node支持Chrome调试协议,我们可以通过node命令结合chrome开发者工具来调试我们的node程序.使用方法在需要调试的文件下终端执行命令:node--inspect-brk[文件]打开chrome调试工具f12有快捷入口也可以通过在chrome浏览器上访问chrome://inspect/#devices找到调试入口开始调试debugger时查看console情况,或输入变量
- 安全防护机制
朝向高处的旅途
linux
应用层安全防护ASLR(Addressspacelayoutrandomization,地址空间布局随机化)在windows上ASLR主要包括堆栈随机化、PEB与TEB随机化、映像随机化,windows系统上虽然xp时代就提出来了,但是从vista开始ASLR才真正发挥作用。在linux上ASLR主要包括栈地址随机化、LIBS/MMAP随机化、EXEC随机化、BRK随机化、VDSO随机化。在没有A
- 通过断点调试解决node 运行js程序直接退出(没有任何报错提示)的问题
kingtopest
node断点调试
现象:node运行程序直接退出,但是从echo$?的返回值可以知道:一定出现了错误,但是没有显示出来解决办法:1.使用node--inspect-brk启动程序然后在浏览器访问chrome://inspect然后点击inspect进行单步调试不断的点击单步调试,直到console出现错误最后在console中找到node程序退出的原因:navigatorisnotdefined
- 2022-03-19
xu1234567
Linux内存工作原理之内存分配与回收此文章部分内容由(小红书www.xiaohongshutuiguang.cn)转载提供a>内存分配malloc()是C标准库提供的内存分配函数,对应到系统调用上,有两种实现方式,即brk()和mmap()。对小块内存(小于128K),C标准库使用brk()来分配,也就是通过移动堆顶的位置来分配内存。这些内存释放后并不会立即归还系统,而是被缓存起来,这样就可以重
- brk和sbrk
瓶子里肥皂泡
我的博客linux
在计算机程序中,“programbreak”通常指的是堆的当前内存边界。当我们改变堆的大小(即分配或释放内存),其实就是在命令内核改变进程的“programbreak”位置。最初,“programbreak”正好位于未初始化数据段(bss)末尾之后。当“programbreak”的位置抬升后,程序可以访问新分配区域内的任何内存地址,而此时物理内存页尚未分配。这就是“programbreak”的基本
- Linux源码剖析机构,Linux内存管理源码剖析(一)
weixin_39943000
Linux源码剖析机构
本篇为基础,讲解内存管理部分的基本原理与进程虚拟空间布局文章目录1.独占空间的原理2.虚拟内存的划分方式3.Linux虚拟地址与物理地址的转换4.从mm_struct结构开始讨论进程虚拟空间布局(1)用户态空间的布局(2)内核态空间的布局5.sys_brk系统调用源码剖析1.独占空间的原理对于每一个进程都应该有自己看起来独占的内存空间,以实现不同进程之间的隔离,保证安全性。而之所以提出这种巧妙的机
- 【小试牛刀】C语言malloc()与free()实现
BtrMiJoes
c语言链表数据结构
在C语言中只能通过malloc()和其派生的函数进行动态的申请内存,而实现的根本是通过系统调用实现的(在linux下是通过sbrk()系统调用实现)。malloc()到底从哪里得到了内存空间?答案是从堆里面获得空间。也就是说函数返回的指针是指向堆里面的一块内存。操作系统中有一个记录空闲内存地址的链表。当操作系统收到程序的申请时,就会遍历该链表,然后就寻找第一个空间大于所申请空间的堆结点,然后就将该
- 【CTF资料-0x0002】PWN简易Linux堆利用入门教程by arttnba3
arttnba3
安全技术pwnmalloc
【CTF资料-0x0002】简易Linux堆利用入门教程byarttnba3老生常谈,[GITHUBBLOGADDR](https://arttnba3.cn/2021/05/10/NOTE-0X05-GLIBC_HEAP-EXPLOIT/),请0x00.写在开始之前前置知识:0x01.堆内存的分配&释放系统调用:brk内存分配基本思想:重用malloc\_\_malloc\_hookfree\_
- CTF-PWN-堆-【前置知识】
看星猩的柴狗
CTF-PWN-堆linux
CTF-PWN-堆堆申请堆块main_areanabrk&sbrk函数mallocfreefree后topchunk堆由mallocallocrealloc函数分配chunk的前指的是地址低的,chunk的高指的是地址高的申请堆块ptmalloc2堆管理器:通俗的讲就是相当于一个”中间商”,在程序想要申请向系统申请堆空间时,这里的ptmalloc2就会申请一块很大的空间,然后把用户真正的空间部分分
- Linux内核有什么之内存管理子系统有什么第六回 —— 小内存分配(4)
蓝天居士
Linux内存管理有什么Linux内核Linux内存管理子系统
接前一篇文章:Linux内核有什么之内存管理子系统有什么第五回——小内存分配(3)本文内容参考:linux进程虚拟地址空间《趣谈Linux操作系统核心原理篇:第四部分内存管理——刘超》特此致谢!二、小内存分配——brk与sbrk上一回在讲sys_brk函数代码的时候,讲到了structvm_area_struct,本回对于此结构体进行详细解析。1.brk源码解析为了便于理解,再次贴出vm_area
- Linux内核有什么之内存管理子系统有什么第四回 —— 小内存分配(2)
蓝天居士
Linux内存管理有什么Linux内核Linux内存管理子系统
接前一篇文章:Linux内核有什么之内存管理子系统有什么第三回——小内存分配(1)本文内容参考:内存分配不再神秘:深入剖析malloc函数实现原理与机制系统调用与内存管理(sbrk、brk、mmap、munmap)Linux系统调用详解(实现机制分析)特此致谢!二、小内存分配——brk与sbrk本回开始结合代码,对于brk()和sbrk()进行详解。1.brk源码解析brk系统调用实现的入口是sy
- 系统调用与内存管理(sbrk、brk、mmap、munmap)
Linux加油站
linuxjava网络
一、系统调用(SystemCall):在Linux中,4G内存可分为两部分——内核空间1G(3~4G)与用户空间3G(0~3G),我们通常写的C代码都是在对用户空间即0~3G的内存进行操作。而且,用户空间的代码不能直接访问内核空间,因此内核空间提供了一系列的函数,实现用户空间进入内核空间的接口,这一系列的函数称为系统调用(SystemCall)。比如我们经常使用的open、close、read、w
- Linux内核有什么之内存管理子系统有什么第三回 —— 小内存分配(1)
蓝天居士
Linux内存管理有什么Linux内核Linux内存管理子系统
接前一篇文章:Linux内核有什么之内存管理子系统有什么第二回——单刀直入本文内容参考:内存分配不再神秘:深入剖析malloc函数实现原理与机制系统调用与内存管理(sbrk、brk、mmap、munmap)特此致谢!二、小内存分配——brk与sbrk上回讲到通过malloc()申请一个堆内的空间,底层要么执行brk(小内存分配),要么执行mmap(大内存分配)。二者之间的界限是MMAP_THRES
- xv6---Lab3: page tables
L7256
操作系统xv6
目录参考资料RISC-V页表的简化图如下所示编辑多级页表xv6内核页表3.6ProcessAddressSpace3.7Code:Sbrk3.8Code:ExecPrintapagetableAkernelpagetableperprocesshintscopyin/copyout参考资料什么是pagetable?程序在系统上执行,操作的是虚拟内存地址,而虚拟内存到物理内存的映射需要一个函数f(v
- GNU 链接器(ld) -ldmain.c的执行过程
余生有烟火
算法服务器linuxc语言
1.获取程序的启动时间longstart_time=get_run_time()2.获取程序的内存堆(heap)的起始地址char*start_sbrk=(char*)sbrk(0);char*start_sbrk=(char*)sbrk(0);这行代码用于获取程序的内存堆(heap)的起始地址。具体来说,它使用系统调用sbrk来获取当前堆的末尾地址,然后将其存储在start_sbrk变量中。
- nodejs调试
星月西
1.在node脚本中加上--inspect-brk代码会暂停在第一行2.打开chrome://inspect,打开OpendedicatedDevToolsforNode在source栏可以看到代码,进行单步执行调试
- 使用mocha+debug调试代码
shuta
0.测试框架是mocha1.使用如下命令:cross-envNODE_ENV=testmocha--debug-brk2.打开chrome。点击inspectimage.pngimage.png3.这个方法,读第三库代码的时候特别好用
- 35 # 模块的断点调试 require 语法实现过程
凯小默
Node/Node框架前端工程架构资源工具node.js模块requirevscode调试
虚拟机模块:可以创建沙箱环境constk=100;constvm=require("vm");vm.runInThisContext("console.log(a)");node中如何实现代码的调试node调试指南1.可以在浏览器中进行调试(比如调试webpack等模块可以使用)node--inspect-brk文件:会自动在代码运行的第一行打上断点leta=1;letb=2;functionsu
- bpf对内核的观测
再出发2023
linux
目录1bpftrace常用命令1.1列出bpftrace相关命令的list1.2bpftrace-e是执行1.3查看参数-lv2bpftrace可以用到的变量3高级3.1内置函数3.2文件系统3.3内核内存栈3.4Malloc调用统计3.5系统调用brk的统计3.6脚本调用4应用5怎么串联起来呢bpftrace总的来说是对线上项目的系统调用的函数的观测,因为这时已经不能往函数里面加log了。相关的
- 嵌入式面试常见问题(二)
ssz__
嵌入式面试题总结c语言linux开发语言
1.malloc如何分配内存?进行虚拟地址空间的分布:程序地址空间-》程序虚拟地址空间-》进程虚拟地址空间内存布局:进程虚拟地址空间和PCB(ProcessControlBlock,进程控制块)进行串联:分配内存方式:第一种:通过brk()系统调用从堆分配内存第二种:通过mmap()系统调用在文件映射区分配内存两种方式如何区分?1.如果用户分配的内存小于128KB,则通过brk()申请内存;2.如
- 【ARM Coresight Debug 系列 -- Linux 断点 BRK 中断使用详细介绍】
CodingCos
#ARMCoresight系列arm开发ARMv8BRK
文章目录1.1ARMBRK指令1.2BRK立即数宏定义介绍1.3断点异常处理流程1.3.1el1_sync_handler1.3.2el1_dbg跟踪1.4debug异常处理函数注册1.4.1brk处理函数的注册1.1ARMBRK指令ARMv8架构的BRK指令是用于生成一个软件断点的。当处理器执行到BRK指令时,会触发一个断点异常。BRK指令的格式如下:BRK#其中是一个16位的立即数,它可以在断
- 内存管理--虚拟地址空间布局架构
丰恒谷
内核专题linux
1介绍内存管理是内核中非常重要的一个子系统,它主要分为三个层面用户空间,内核空间,硬件1用户空间:主要是针对malloc/free,new/delete2内核空间:内核中的sbrk/brk等系统调用3硬件:处理器包含一个内存管理单元MMU的部件2内存管理布局架构1内存管理架构现代操作系统标准组成:cpu,memory(内存和外存),输入输出(IO),网络设备和外围设备,具体如下:内存管理布局架构图
- eclipse maven
IXHONG
eclipse
eclipse中使用maven插件的时候,运行run as maven build的时候报错
-Dmaven.multiModuleProjectDirectory system propery is not set. Check $M2_HOME environment variable and mvn script match.
可以设一个环境变量M2_HOME指
- timer cancel方法的一个小实例
alleni123
多线程timer
package com.lj.timer;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class MyTimer extends TimerTask
{
private int a;
private Timer timer;
pub
- MySQL数据库在Linux下的安装
ducklsl
mysql
1.建好一个专门放置MySQL的目录
/mysql/db数据库目录
/mysql/data数据库数据文件目录
2.配置用户,添加专门的MySQL管理用户
>groupadd mysql ----添加用户组
>useradd -g mysql mysql ----在mysql用户组中添加一个mysql用户
3.配置,生成并安装MySQL
>cmake -D
- spring------>>cvc-elt.1: Cannot find the declaration of element
Array_06
springbean
将--------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3
- maven发布第三方jar的一些问题
cugfy
maven
maven中发布 第三方jar到nexus仓库使用的是 deploy:deploy-file命令
有许多参数,具体可查看
http://maven.apache.org/plugins/maven-deploy-plugin/deploy-file-mojo.html
以下是一个例子:
mvn deploy:deploy-file -DgroupId=xpp3
- MYSQL下载及安装
357029540
mysql
好久没有去安装过MYSQL,今天自己在安装完MYSQL过后用navicat for mysql去厕测试链接的时候出现了10061的问题,因为的的MYSQL是最新版本为5.6.24,所以下载的文件夹里没有my.ini文件,所以在网上找了很多方法还是没有找到怎么解决问题,最后看到了一篇百度经验里有这个的介绍,按照其步骤也完成了安装,在这里给大家分享下这个链接的地址
- ios TableView cell的布局
张亚雄
tableview
cell.imageView.image = [UIImage imageNamed:[imageArray objectAtIndex:[indexPath row]]];
CGSize itemSize = CGSizeMake(60, 50);
&nbs
- Java编码转义
adminjun
java编码转义
import java.io.UnsupportedEncodingException;
/**
* 转换字符串的编码
*/
public class ChangeCharset {
/** 7位ASCII字符,也叫作ISO646-US、Unicode字符集的基本拉丁块 */
public static final Strin
- Tomcat 配置和spring
aijuans
spring
简介
Tomcat启动时,先找系统变量CATALINA_BASE,如果没有,则找CATALINA_HOME。然后找这个变量所指的目录下的conf文件夹,从中读取配置文件。最重要的配置文件:server.xml 。要配置tomcat,基本上了解server.xml,context.xml和web.xml。
Server.xml -- tomcat主
- Java打印当前目录下的所有子目录和文件
ayaoxinchao
递归File
其实这个没啥技术含量,大湿们不要操笑哦,只是做一个简单的记录,简单用了一下递归算法。
import java.io.File;
/**
* @author Perlin
* @date 2014-6-30
*/
public class PrintDirectory {
public static void printDirectory(File f
- linux安装mysql出现libs报冲突解决
BigBird2012
linux
linux安装mysql出现libs报冲突解决
安装mysql出现
file /usr/share/mysql/ukrainian/errmsg.sys from install of MySQL-server-5.5.33-1.linux2.6.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686
- jedis连接池使用实例
bijian1013
redisjedis连接池jedis
实例代码:
package com.bijian.study;
import java.util.ArrayList;
import java.util.List;
import redis.clients.jedis.Jedis;
import redis.clients.jedis.JedisPool;
import redis.clients.jedis.JedisPoo
- 关于朋友
bingyingao
朋友兴趣爱好维持
成为朋友的必要条件:
志相同,道不合,可以成为朋友。譬如马云、周星驰一个是商人,一个是影星,可谓道不同,但都很有梦想,都要在各自领域里做到最好,当他们遇到一起,互相欣赏,可以畅谈两个小时。
志不同,道相合,也可以成为朋友。譬如有时候看到两个一个成绩很好每次考试争做第一,一个成绩很差的同学是好朋友。他们志向不相同,但他
- 【Spark七十九】Spark RDD API一
bit1129
spark
aggregate
package spark.examples.rddapi
import org.apache.spark.{SparkConf, SparkContext}
//测试RDD的aggregate方法
object AggregateTest {
def main(args: Array[String]) {
val conf = new Spar
- ktap 0.1 released
bookjovi
kerneltracing
Dear,
I'm pleased to announce that ktap release v0.1, this is the first official
release of ktap project, it is expected that this release is not fully
functional or very stable and we welcome bu
- 能保存Properties文件注释的Properties工具类
BrokenDreams
properties
今天遇到一个小需求:由于java.util.Properties读取属性文件时会忽略注释,当写回去的时候,注释都没了。恰好一个项目中的配置文件会在部署后被某个Java程序修改一下,但修改了之后注释全没了,可能会给以后的参数调整带来困难。所以要解决这个问题。
&nb
- 读《研磨设计模式》-代码笔记-外观模式-Facade
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/*
* 百度百科的定义:
* Facade(外观)模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,
* 隐藏子系统的复杂性,使子系统更加容易使用。他是为子系统中的一组接口所提供的一个一致的界面
*
* 可简单地
- After Effects教程收集
cherishLC
After Effects
1、中文入门
http://study.163.com/course/courseMain.htm?courseId=730009
2、videocopilot英文入门教程(中文字幕)
http://www.youku.com/playlist_show/id_17893193.html
英文原址:
http://www.videocopilot.net/basic/
素
- Linux Apache 安装过程
crabdave
apache
Linux Apache 安装过程
下载新版本:
apr-1.4.2.tar.gz(下载网站:http://apr.apache.org/download.cgi)
apr-util-1.3.9.tar.gz(下载网站:http://apr.apache.org/download.cgi)
httpd-2.2.15.tar.gz(下载网站:http://httpd.apac
- Shell学习 之 变量赋值和引用
daizj
shell变量引用赋值
本文转自:http://www.cnblogs.com/papam/articles/1548679.html
Shell编程中,使用变量无需事先声明,同时变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)
中间不能有空格,可以使用下划线(_)
不能使用标点符号
不能使用bash里的关键字(可用help命令查看保留关键字)
需要给变量赋值时,可以这么写:
- Java SE 第一讲(Java SE入门、JDK的下载与安装、第一个Java程序、Java程序的编译与执行)
dcj3sjt126com
javajdk
Java SE 第一讲:
Java SE:Java Standard Edition
Java ME: Java Mobile Edition
Java EE:Java Enterprise Edition
Java是由Sun公司推出的(今年初被Oracle公司收购)。
收购价格:74亿美金
J2SE、J2ME、J2EE
JDK:Java Development
- YII给用户登录加上验证码
dcj3sjt126com
yii
1、在SiteController中添加如下代码:
/**
* Declares class-based actions.
*/
public function actions() {
return array(
// captcha action renders the CAPTCHA image displ
- Lucene使用说明
dyy_gusi
Lucenesearch分词器
Lucene使用说明
1、lucene简介
1.1、什么是lucene
Lucene是一个全文搜索框架,而不是应用产品。因此它并不像baidu或者googleDesktop那种拿来就能用,它只是提供了一种工具让你能实现这些产品和功能。
1.2、lucene能做什么
要回答这个问题,先要了解lucene的本质。实际
- 学习编程并不难,做到以下几点即可!
gcq511120594
数据结构编程算法
不论你是想自己设计游戏,还是开发iPhone或安卓手机上的应用,还是仅仅为了娱乐,学习编程语言都是一条必经之路。编程语言种类繁多,用途各 异,然而一旦掌握其中之一,其他的也就迎刃而解。作为初学者,你可能要先从Java或HTML开始学,一旦掌握了一门编程语言,你就发挥无穷的想象,开发 各种神奇的软件啦。
1、确定目标
学习编程语言既充满乐趣,又充满挑战。有些花费多年时间学习一门编程语言的大学生到
- Java面试十问之三:Java与C++内存回收机制的差别
HNUlanwei
javaC++finalize()堆栈内存回收
大家知道, Java 除了那 8 种基本类型以外,其他都是对象类型(又称为引用类型)的数据。 JVM 会把程序创建的对象存放在堆空间中,那什么又是堆空间呢?其实,堆( Heap)是一个运行时的数据存储区,从它可以分配大小各异的空间。一般,运行时的数据存储区有堆( Heap)和堆栈( Stack),所以要先看它们里面可以分配哪些类型的对象实体,然后才知道如何均衡使用这两种存储区。一般来说,栈中存放的
- 第二章 Nginx+Lua开发入门
jinnianshilongnian
nginxlua
Nginx入门
本文目的是学习Nginx+Lua开发,对于Nginx基本知识可以参考如下文章:
nginx启动、关闭、重启
http://www.cnblogs.com/derekchen/archive/2011/02/17/1957209.html
agentzh 的 Nginx 教程
http://openresty.org/download/agentzh-nginx-tutor
- MongoDB windows安装 基本命令
liyonghui160com
windows安装
安装目录:
D:\MongoDB\
新建目录
D:\MongoDB\data\db
4.启动进城:
cd D:\MongoDB\bin
mongod -dbpath D:\MongoDB\data\db
&n
- Linux下通过源码编译安装程序
pda158
linux
一、程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件:就是通常我们见到的lib目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在linux下用man命令查看的命令的文档
二、linux下程序的存放目录 linux程序的存放目录大致有三个地方: /etc, /b
- WEB开发编程的职业生涯4个阶段
shw3588
编程Web工作生活
觉得自己什么都会
2007年从学校毕业,凭借自己原创的ASP毕业设计,以为自己很厉害似的,信心满满去东莞找工作,找面试成功率确实很高,只是工资不高,但依旧无法磨灭那过分的自信,那时候什么考勤系统、什么OA系统、什么ERP,什么都觉得有信心,这样的生涯大概持续了约一年。
根本不是自己想的那样
2008年开始接触很多工作相关的东西,发现太多东西自己根本不会,都需要去学,不管是asp还是js,
- 遭遇jsonp同域下变作post请求的坑
vb2005xu
jsonp同域post
今天迁移一个站点时遇到一个坑爹问题,同一个jsonp接口在跨域时都能调用成功,但是在同域下调用虽然成功,但是数据却有问题. 此处贴出我的后端代码片段
$mi_id = htmlspecialchars(trim($_GET['mi_id ']));
$mi_cv = htmlspecialchars(trim($_GET['mi_cv ']));
贴出我前端代码片段:
$.aj