精华内容
下载资源
问答
  • 维测典型案例分析1 —— 内存泄漏 在系统运行的过程中,内存泄漏是较为常见但是很难复现的现象,一般的内存泄漏点都是比较隐蔽的,每次几十个字节的泄漏,往往需要压测很久才能复现问题。本节案例分析,我们从一个...

    维测典型案例分析1 —— 内存泄漏

    在系统运行的过程中,内存泄漏是较为常见但是很难复现的现象,一般的内存泄漏点都是比较隐蔽的,每次几十个字节的泄漏,往往需要压测很久才能复现问题。本节案例分析,我们从一个已经压测出来的问题出发,通过维测工具的使用,来看一次内存泄漏的分析。

    1. 问题现象:

    xx平台压测反复断AP电源第488次连接通道时出现dump机现象
    **

    2. 重现步骤: 

    1. 设备认证连接,并保持在线状态(维持心跳)
      b. .待连接稳定后,断开网络(断AP电源)
      c  .5分钟后恢复AP电源
      d .查看设备端日志判断设备是否上线

    3. 问题初步分析

    从压测过程看,是设备和路由器循环断开重连的操作,没有连云,也没有起业务。这部分仅仅是调用厂商的wifi 驱动库。
    从问题出现的log来看,发生了系统crash,并且出现了典型了内存不足的打印,如下:
    (这个Log是我们维测体系中的设备端能力之一,将发生内存出错时候的内存使用情况全部输出,方便定位)

    这是由于内存不足,无法从系统内存池中mallo出动态内存,出现这种现象一般有2种原因:

    1. 某组件在运行中持续分配了较大内存,并且一直还没释放。这种情况可能性不大
    2. 内存泄漏了,根据压测描述,压测了几天才出现,发生了缓慢泄漏。

    初步分析到此,我们先用PC端维测工具对这个设备端log解析一把,看看有什么有价值的信息出现。维测工具的使用参加另一篇文章介绍。这里直接使用

    python  core_dump.py  log   xx.elf

    维测工具输出了对设备端log的解析,打印出了上图中内存泄漏时的系统内存使用情况的一次统计,如下图:

    这里对系统crash时所有动态内存分配情况进行了统计,按照内存分配size 从小到大的顺序进行了排列,每一行都包含着内存malloc出来的地址,谁申请了内存,申请的次数,申请的size大小,申请者在代码中的位置等,一目了然。

    我们一下就从图中的最后一行(也就是占据系统内存最多的组件)发现了异常点:此时系统中还存在着982个timer,占据着70K+ 的系统内存,这个肯定是有问题的!

    4.  快速问题复现

    快速复现问题是bug定位过程中非常重要的的一步。
    由于压测过程是每5分钟断开路由器,时间较长,我们尝试重现构造测试用例来复现这一现象。由前面分析可知,这一压测过程只跟厂商wifi 驱动有关。我们找到了2个通用接口来模拟这一过程:
     hal_wifi_suspend_station   ---- 断开路由器操作,会调用厂商底层的wifi disconnect
     netmgr_reconnect_wifi      ---- 连接路由器操作,会调用厂商底层的wifi connect

    我们构建的测试case代码如下:

        while (1) {
            krhino_mm_overview(NULL);  /*重点关注这一行*/
            
            aos_msleep(5000);
    
            hal_wifi_suspend_station(NULL);
    
            netmgr_reconnect_wifi();
        }

    即:在系统上电启动必要的网络初始化后,开始以5s为周期循环压测 suspend 和 reconnect

    请注意while循环里的第一行:

    krhino_mm_overview(NULL);

    这个接口是维测对外API 调试接口之一,会打印堆的相关统计。

    维测调试API接口是debug的时候的重要手段之一,加上这些接口出版本,往往可以快速定位问题
    详见 https://yuque.antfin-inc.com/aliosthings/mr5i1t/wupvbn#994230b2

    这个接口打印如下所示(举例):

    ========== Heap Info  ==========
    -----------------------------------------------------------
    [HEAP]| TotalSz    | FreeSz     | UsedSz     | MinFreeSz  |
          | 0x0004A838 | 0x00047E50 | 0x000029E8 | 0x00047E50 |
    -----------------------------------------------------------
    [POOL]| PoolSz     | FreeSz     | UsedSz     | BlkSz      |
          | 0x00002000 | 0x00001E00 | 0x00000200 | 0x00000020 |
    -----------------------------------------------------------

    上面统计分成两部分,HEAP与POOL。HEAP是总的统计,POOL是HEAP的一部分。

    HEAP与POOL的区别是,当用户使用

    aos_malloc(size)

    来分配内存的时候,size若小于32字节(由RHINO_CONFIG_MM_BLK_SIZE宏指定,在k_config.h中定义),malloc会在POOL上固定分配32字节内存,反之则在HEAP上分配用户定义size的内存。

    HEAP中的内容含义:

    • TotalSz,堆的总大小。
    • FreeSz,当前堆的空闲大小。
    • UsedSz,当前堆的使用量,即UsedSz = TotalSz – FreeSz。
    • MinFreeSz,堆空闲历史最小值,即TotalSz – MinFreeSz 便是堆历史使用量峰值。

    出异常时,可以利用该信息大致判断堆是否出现空闲内存不足的问题。

    回到问题中来,测试case跑起来后,循环输出了每次网络连接后的系统内存使用情况,如图:

    ....

    5. 问题定位

    可见系统系内存经过每次suspend 和 connect后,都会减少,并且减少的大小是固定的。这种情况是发生了稳定的内存泄漏,厂商的WIFI驱动中存在着connect时 malloc的内存,在suspend时没有free的情况,导致了内存池泄漏,早晚会发生内存耗尽。

    由最早的log可知,系统crach的时候(也就是内存耗尽的时候),系统中存在着982个timer没有释放,所以我们重点关注timer的使用。由于厂商不提供源码(这也是每次定位问题异常痛苦的原因之一),没法在上层代码处直接加打印调试。在kernel timer处加上打印,结果如下:connect:

    suspend:

    可以非常明显的看出,connect时timer create了5次,但是suspend的时候,只delete了4次!

    问题定位到这里,已经明确了问题根因:timer少释放了一次。反馈给厂商后,迅速解决。

    6. 总结

    这里结合使用了AliOS Things维测能力的几个方面:

    1. 在设备端对接了内存异常的处理,作为crash的第一现场打印出来
    2. PC端维测工具,对设备端的crash log进行解析,降低使用门槛
    3. 维测API接口的使用,是出版本进行debug的利器。


    原文链接
    本文为云栖社区原创内容,未经允许不得转载。

    展开全文
  • 国网天津电缆公司带电检测典型案例分析 国网天津市电力公司电缆分公司电缆运检北部中心电缆试验班成立于2019年9月,主要从事国网天津电缆公司辖区内高压电缆带电检测工作。班组现有员工11名,其中硕士8人,占...

    国网天津电缆公司带电检测典型案例分析

     

     

    国网天津市电力公司电缆分公司电缆运检北部中心电缆试验班成立于2019年9月,主要从事国网天津电缆公司辖区内高压电缆带电检测工作。班组现有员工11名,其中硕士8人,占总人数72.8%,35周岁以下青年党员7人,占总人数63.6%,班组配有各类精尖检测设备,是一支技术过硬、敢为人先的带电检测队伍。日常工作涵盖770公里110kV电缆、334公里220kV电缆的高频局放检测、接地电流检测、红外检测等带电检测工作。致力于及时发现电缆设备潜在运行隐患,降低非计划停电次数,为电缆设备安全、稳定运行提供重要保障。

     

    220kV某变电站站内联络电缆C相电缆终端沿面缺陷诊断

    1.线路基本情况

     

    2.缺陷过程描述

    国网天津市电力公司电缆分公司带电检测工作人员进行例行高频局放检测时,在220kV某变电站2号主变220kV侧受总电缆C相GIS终端处测得异常局放信号,其图谱如表1。放电信号的相位有180°工频相关性,正半周的放电脉冲数大于负半周的放电脉冲数,放电频率呈一条“横线”的形状,放电波形呈典型震荡衰减现象。这些特征表明其为绝缘内部放电或沿面放电,且放电源距离检测点较近,电缆终端接头放电的可能性最大,但是无法排除GIS内部绝缘件放电的可能。

     

    表1 GIS侧C相高频检测图谱

     

    3日后又对该终端进行复测,采用高频、超声波和特高频等手段进行检测,最终将缺陷位置精准定位在电缆GIS终端处,并停电处理。

     

    3.检测数据分析

    3.1 高频数据分析

    检测对象是一段变压器与GIS之间的电缆联络线,电压等级为220kV,长度为60m。该段电缆没有中间接头,仅有两组充油套管终端,应力锥采用硅橡胶绝缘,外层为环氧树脂套筒,结构如图1所示。

     

    接地方式如图2,变压器侧直接接地,GIS侧保护接地。GIS侧和变压器侧ABC三相的高频检测图谱如表2。

     

    表2 高频检测图谱

     

    首先分析GIS侧ABC三相的高频检测图谱,从相位图谱上分析,ABC三相均存在一簇相似放电信号,且每簇信号相位互差120°,C相的相位极性与A相和B相相反。表明ABC三相检测到的高频信号是同一信号,该信号源于C相,通过接地线传播至其他两相的接地箱上。从频率上分析,C相频率集中在5.5-6.5MHz,A相频率集中在5.5-6.5MHz,B相频率集中在3.0-4.5MHz,AC两相频率较集中,B相频率已发散。表明放电信号在传播到B相频率发生了衰减,排除信号来源于B相的可能。从波形上分析,C相的第一个波头是向上,而AB相的第一个波头都是向下的,采用高速示波器采集到同样的检测结果,如图3所示(黄绿红依次代表ABC三相),表明放电信号源自C相。

     

    图3 高频对比图谱

     

    再次分析变压器侧ABC三相的高频检测图谱,从相位图谱上分析,与GIS侧ABC三相的特征相似,表明信号源自C相,从频率上分析,C相频率在2.5-3.6MHz,A相频率在2.8-4.0MHz,B相频率在2.6-4.2MHz,ABC三相都已发散,无法直接判断。从波形上分析,变压器侧与GIS侧ABC三相的特征相似,表明信号来自C相。

     

    最后对比GIS侧和变压器侧C相的高频检测图谱,GIS侧的放电幅值更大,放电频率更集中,放电波形畸变率更小。所以最终确定信号来自GIS侧C相电缆终端内。

     

    3.2  超声波检测

    采用AIA-2进行超声波检测,采用40倍放大倍率,在环氧树脂套筒底部超声最明显,如图4所示。

     

    图4超声波连续谱图

    在连续模式下,该信号最大峰值16mV,50Hz相关性及100Hz相关性明显,且100Hz相关性大于50Hz相关性。带上耳机可以听到明显“嗡嗡”的放电声音。

     

    3.3 特高频检测

    采用莫克特高频检测仪进行特高频检测,检测位置在环氧树脂套筒底部,检测谱图如图5所示。

    图5 特高频PRPD谱图

     

    一个周期内正负半周均有信号,正半周放电脉冲数多于负半周放电数,属于典型的绝缘类放电。

     

    3.4 特高频时延分析

    采用特高频两点时延的方法进行了定位,一个布置在C相电缆终端根部环氧树脂附近,另一个在2202-2隔离开关处的环氧树脂盆附近,两个传感器相距4.15m,如图6所示。

     

    图6 传感器安装示意图

     

    高速示波器采集到的两传感器检测到的放电信号如图7所示,统计平均值得到时差为10.5ns,特高频的传播速度为30cm/ns,确定放电点在电缆底部法兰上方0.4-0.6m之间。

     

    图7特高频信号时延图

    4.缺陷解体验证

    结合高频、超声、特高频及时延定位等检测结果,确定放电信号来自GIS侧C相电缆终端,且放电现象明显,属于严重缺陷,需立即停电解体。

     

    放完绝缘油,取下环氧套筒后,在应力锥上部发现明显的放电灼烧痕迹,有许多炭黑结晶。如图8所示,经测定在法兰上部0.6-0.8m左右,与特高频定位结果吻合,同时验证了高频检测手段的有效性。

    图8 电缆终端解体图

     

    5.缺陷原因分析

    (1)产生局部放电的原因是由于缺油造成的场强过于集中。

    (2)缺油的原因是因为操作失误注油没有达到规定的标准,或金属护套有沙眼存在渗油现象。

     

    6.反事故措施

    站内联络电缆必须进行全面的状态检测,建议将全面的高频检测和接地环流检测作为普测手段,特高频和超声波作为复测及精准定位的手段

    展开全文
  • 对赌协议的经典案例分析

    万次阅读 2017-04-26 16:07:50
    本文通过对企业风投融资“对赌”失败的案例分析,揭示包括法律风险在内的融资对赌风险,以飨读者。   1 陈晓与摩根士丹利及鼎辉对赌输掉永乐电器  2004年家电连锁市场“市场份额第一位、盈利能力第二位”的...

      先来科普一下什么是对赌协议。

      对赌协议就是收购方(包括投资方)与出让方(包括融资方)在达成并购(或者融资)协议时,对于未来不确定的情况进行一种约定。如果约定的条件出现,投资方可以行使一种权利;如果约定的条件不出现,融资方则行使一种权利。所以,对赌协议实际上就是期权的一种形式。

      民营企业是否应该引入风投?引进风投究竟是“引狼入室”还是找到了好帮手?风投是否应该投资企业?投资企业究竟是能够获得超额利润还是作了“接盘侠”?企业与风投之间因为信息不对称而产生的矛盾与风险,永远都不会消亡;企业在实体经营过程中所面对的市场风险与未知因素,也不会因一纸“对赌”协议而化解。本文通过对企业风投融资“对赌”失败的案例分析,揭示包括法律风险在内的融资对赌风险,以飨读者。

      1 陈晓与摩根士丹利及鼎辉对赌输掉永乐电器

      2004年家电连锁市场“市场份额第一位、盈利能力第二位”的竞争格局下,跑马圈地的能力取决于各自的财力。相比而言,国美与苏宁先后在港股及A股实现上市,打通了资本市场的融资渠道,因而有力支持了各自的市场扩张。

      而未实现上市的永乐电器在资金供给上则困难多了,为了配合自己的市场扩张,陈晓转而开始寻求私募股权基金(PE)的支持。经过大半年的洽谈,永乐电器最终于2005年1月获得摩根士丹利及鼎晖的5000万美元联合投资。其中,摩根士丹利投资4300万美元,占股23.53%;鼎晖投资700万美元,占股3.83%。

      正是这次融资,让陈晓与包括摩根士丹利及鼎晖在内的资本方签下了一纸“对赌协议”,规定了永乐电器2007年净利润的实现目标,陈晓方面则需要根据实现情况向资本方出让股权或者获得股权。

      陈晓要想在这场赌局中不赔股权,意味着他2007年至少要完成6.75亿元的净利润指标。问题是,摩根士丹利设立的利润指标是否合理?永乐电器2002年至2004年的净利润分别为2820万元、1.48亿元和2.12亿元,显然这个盈利水平与6.75亿元的目标还差得太远。而摩根士丹利的理由是,永乐电器过去几年的净利润增长一直保持在50%以上的速度,按照这样的速度计算,2007年实现6.75亿元的目标不存在太大的困难。

      获得融资之后的陈晓,明显加快了在全国扩张的步伐。一方面强势扩张自营连锁店,另一方面大肆收购同行。2005年5月至7月之间,永乐迅速收购了河南通利、厦门灿坤、厦门思文等地域性家电连锁品牌。

      2005年10月14日,永乐电器登陆香港联交所完成IPO,融资超过10亿港元。

      但是,在企业上市的表面光鲜背后,陈晓开始明显感觉到经营寒流的到来,其跨地域扩张的困局开始初现端倪。上市一个月之后,永乐电器无奈对外承认“外地发展不顺”的事实。其2005年全年净利虽然由2004年的2.12亿元大幅增加至3.21亿元,但是其单位面积销售额却下降了2.8%、毛利率下降了0.6%。

      2006年4月24日,永乐公告披露“预计上半年的利润低于去年同期”。此消息发布之后,永乐电器的股价毫无悬念地连续下挫。永乐的投资人摩根士丹利,也在此期间立刻减持了手中50%的永乐股票。

      此时牵动陈晓神经的,或许已不再是股价的下挫以及摩根士丹利的套现,而是一年前签下的那纸对赌协议。按照永乐电器披露的业绩预警,2006年的全年业绩很可能低于2005年的3.21亿元,那么2007年要实现6.75亿元净利润的希望就会变得非常渺茫,这就意味着陈晓要赔3%~6%的企业股权给摩根士丹利。

      有没有什么方法可以快速增加企业的盈利?这个问题,陈晓从2006年年初开始就一直在琢磨。

      2006年7月25日,国美与永乐正式对外公布了两家合并的方案:国美电器通过“现金+股票”的方式,以52.68亿港元的代价全资收购永乐电器,收购完成之后,原永乐的股东全部转变成国美的股东,而永乐则成为国美的全资子公司并从香港联交所退市。

      2006年8月14日,永乐电器公布了该年的半年报,上半年永乐最终获利1501.8万元,相比2005年同期净利润1.4亿元,跌幅高达89%。  随着永乐90%以上的股东接受国美的要约收购,永乐电器退市已成定局,永乐方面承诺的以永乐电器(HK0503)股票与大中进行资本层面股权置换已无法兑现,永乐接受国美要约收购直接构成对大中的违约,最终导致双方合作中止。

      2006年11月,陈晓低调出任国美电器总裁。虽然他在国美拥有少量股权(不足4%),但显然已经不再是当年永乐时代一言九鼎的大股东了,而更像是黄光裕所聘请的职业经理人。

      2 太子奶李途纯对赌英联、摩根士丹利、高盛输掉太子奶

    太子奶曾于1997年底以88888888元夺得中央电视台日用消费品的标王。据传言,该公司董事长李途钝在夺得标王时,身上所剩无几。无疑,太子奶曾经想通过一举夺得标王大赚一笔。但事与愿违,在奶制品同行业来比较的话,在价格、质量、性能各方面指标并不输阵、付出巨额广告费用的太子奶只能在市场中分得极小的一块蛋糕。

      太子奶为实现上市计划,于2006年引入英联、高盛、摩根士丹利等三大投行“对赌”,借款7300万美元给李途纯,之后又介绍花旗集团、新加坡星展银行等6家国际银行,为太子奶提供了5亿元人民币的无抵押、无担保、低息3年期信用贷款。

      根据这份对赌协议,在收到7300万美元注资后的前3年,如果太子奶集团业绩增长超过50%,就可调整(降低)对方股权;如完不成30%的业绩增长,李途纯将会失去控股权。彼时太子奶实现连续10年的复合增长率超过100%,给了李途纯很大的底气。

      借助这些资金,李途纯开始疯狂扩张。2008年,由于高速扩张,太子奶被曝资金链断裂。

      2008年8月,太子奶集团开始陆续被曝资金链断裂,随后陷入了严重的债务危机。三大投行以再注资4.5亿元的承诺让李途纯交出所持的61.6%股权。2009年1月湖南株洲政府注资1亿元,由高科奶业托管太子奶,并从三大投行手中要回61.6%股权,交回李途纯,并抵押给高科奶业代为行权。然而,这些举措并未救活负债累累的太子奶。根据德勤审计的结果显示,集团负债高达26亿元左右。

      在资金链趋于断裂,销售业绩急剧下降的双重压力下,李途纯签订的那份“对赌协议”被迫提前履行,他不得不将自己持有的股权全部出让。

      3 张兰对赌鼎辉输掉俏江南

    2000年,拥有10年餐饮经验与资金积累的“海归”张兰,在北京国贸开办了第一家俏江南餐厅,从此迎来了属于她和俏江南的一个时代。从2000年到2010年,10年间,俏江南通过不断创新的菜品和高端餐饮的定位,在中国餐饮市场上赢得了一席之地。其业务也逐步向多元化发展,衍生出包括兰会所在内的多个业态。

      公开资料显示,俏江南在2000年创建之初即已实现盈利,连续8年盈利之后,2007年,其销售额达10亿元左右。2009年,张兰首次荣登胡润餐饮富豪榜第三名,财富估值为25亿元。

      2008年9月30日,俏江南与鼎晖创投签署增资协议,鼎晖创投注资约合2亿元人民币,占有俏江南10.526%的股权。

      而俏江南与鼎晖创投签署的投资条款也有所谓的“对赌协议”:如果非鼎晖方面原因,造成俏江南无法在2012年底上市,则鼎晖有权以回购方式退出俏江南。2012年底是当初双方约定上市的最后期限。也有说法称,俏江南如果无法在2012年年底上市,另一种结果是张兰将面临失去控制权的风险。

      2011年3月,俏江南向证监会发行部提交了上市申请,但在随后的数月内,俏江南未能收到相关政府部门的书面反馈意见。

      在2012年中国传统春节即将到来之时,证监会披露IPO申请终止审查名单,俏江南赫然在列。至此,俏江南的A股上市之路中止。张兰被迫转战港股。2006年,商务部、证监会、外管局等六部门联合发布《关于外国投资者并购境内企业的规定》(简称“10号文”),其中第11条规定:“境内公司、企业或自然人以其在境内合法设立或控制的公司名义并购与其有关的境内公司,应报商务部审批。当事人不得以外商投资企业境内投资或其它方式,规避前述要求。”

      从2013年年初开始,俏江南的经营状况陷入泥潭,多家门店由几年前的常年盈利转变为月月亏损。对于俏江南未能在港IPO,外界有推测称,当时俏江南已经身陷财务泥潭,难以自拔。

      2014年4月,CVC宣布正式入主俏江南,成为最大股东。CVC并未披露收购价格和股比,不过外界传其持有俏江南82.7%的股权,其中张兰出售的69%股权,作价3亿美元。 

       2015年7月14日,一则关于张兰被“踢出”俏江南董事会的消息再次引发广泛关注。随后俏江南发布声明,称“保华有限公司(保华)代表已于2015年6月被委任成为俏江南集团董事会成员。CVC的委派代表和张兰不再担任俏江南董事会成员,且不再处理或参与俏江南的任何事务”。

      7月17日,张兰委托律师发表声明,全面否认“出局”说法。声明称,商务部反垄断局于2013年11月批准隶属于CVC的甜蜜生活集团与俏江南收购案,收购完成之后,CVC取得了俏江南82.7%的股权。而张兰已于2013年底辞去了俏江南相关公司的董事和法人等职务,因此,不存在张兰2015年7月14日退出俏江南董事会的情况。  张兰最终失去俏江南控制权。

      4 吴长江引入软银赛富和施耐德后被逼出雷士照明

    1998年底,吴长江出资45万元,他的另外两位同学杜刚与胡永宏各出资27.5万元,以100万元的注册资本在惠州创立了雷士照明。从股权结构看,吴长江是占比45%的单一大股东,而相对两位同学的合计持股,他又是小股东。随着企业的做大,自2002年起“事情正在起变化”,股东之间的分歧开始悄然孕育,裂痕随即产生。

      2005年,随着雷士的销售渠道改革,三位股东的矛盾全面爆发,其他两位股东激烈反对吴长江的改革方案。结果是吴长江支付给两位股东个八千万,两位股东退出雷士照明。但是雷士账上并没有足够支付股东款的现金。最终达成的折中方案是,两位股东先各拿5000万,剩余款项半年内付清。在兑现了一个亿的股东款之后,雷士账上几乎变成“空壳”,雷士照明极度缺钱。  2006年8月,在毛区健丽的牵线搭桥下,软银赛富正式决定投资雷士。8月14日,软银赛富投入的2200万美元到账,占雷士股权比例35.71%。  两年之后的2008年8月,雷士照明为了增强其制造节能灯的能力,以现金+股票的方式收购了世通投资有限公司(其旗下的三友、江山菲普斯及漳浦菲普斯专事节能灯灯管及相关产品的制造),其中现金部分须支付4900余万美元。  当时雷士并没有足够的现金来支付这笔收购款,账上现金及存款仅有3000万美元。为了完成此次收购,雷士照明不得不再次寻求私募融资。在该次融资中,高盛与软银赛富联合向雷士照明投入4656万美元,其中高盛出资3656万美元、软银赛富出资1000万美元。  此次融资,吴长江的持股比例因稀释而失去了第一大股东地位,持股34.4%;而赛富则因先后两次投资,持股比例超越吴长江达到36.05%,成为第一大股东;高盛以11.02%的持股比例成为第三大股东。  2010年5月20日,雷士照明登陆港交所,发行6.94亿股新股(占发行后总股本的23.85%),发行价2.1港元/股,募资14.57亿港元。  2011年7月21日,雷士引进法国施耐德电气作为策略性股东,由软银赛富、高盛联合吴长江等六大股东,以4.42港元/股(较当日收盘价溢价11.9%)的价格,共同向施耐德转让2.88亿股股票。施耐德耗资12.75亿港元,股份占比9.22%,因此而成为雷士照明第三大股东。  从雷士照明的股权结构来看,创始人吴长江早已失去第一大股东地位,而软银赛富在雷士上市以前就俨然已是相对控股的第一大股东。而失去第一大股东地位的吴长江,并未意识到自己面临局势的危险性。吴长江非但不担心自己的控制权旁落,反而在上市以后还大幅减持股票,直到转让部分股权给施耐德之后,吴长江(包括其个人及通过全资公司NVC合计)的持股比例下降到了17.15%的最低点。而赛富则还拥有18.48%的持股比例。  当财务投资人股东引荐大鳄型的产业投资人进入企业时,其中暗含的含义已经相当清晰了。以黑石、凯雷、KKR等为代表的PE机构,专门猎食性地入股一些价值被低估或者暂时陷入困境的企业,经过一番整合之后再将企业打包或者分拆出售给产业大鳄,而PE投资人则借此一进一出获得超额暴利。华尔街著名的记实商战图书《门口的野蛮人》,已经将此种情形描述得精彩纷呈。  2012年5月25日,吴长江被毫无征兆地“因个人原因”而辞去了雷士照明一切职务,而接替他出任董事长的则是软银赛富的阎焱,接替他出任CEO的则是来自于施耐德并在施耐德工作了16年的张开鹏。而据雷士内部人士透露,张开鹏与阎焱是南京航空航天大学的校友。


      5“真功夫”蔡达标引入中山联动和今日资本后身陷囹圄

    1994年,潘宇海和蔡达标在东莞长安镇开了一间“168蒸品店”,后来逐渐走向全国连锁,并于1997年更名为“双种子”,最终更名为“真功夫”。真功夫的股权结构非常简单,潘宇海占50%,蔡达标及其妻潘敏峰(潘宇海之姐)各占25%。2006年9月,蔡达标和潘敏峰协议离婚,潘敏峰放弃了自己的25%的股权换得子女的抚养权,这样潘宇海与蔡达标两人的股权也由此变成了50:50。

      2007年蔡达标主导“真功夫”引入了两家风险投资基金:内资的中山联动和外资的今日资本,共注入资金3亿元,各占3%的股份。这样,融资之后,“真功夫”的股权结构变成:蔡、潘各占47%,VC各占3%,董事会共5席,构成为蔡达标、潘宇海、潘敏峰以及VC的派出董事各1名。

      引入风险投资之后,公司要谋求上市,那么打造一个现代化公司管理和治理结构的企业是当务之急。但蔡达标在建立现代企业制度的努力触及另一股东潘宇海的利益,“真功夫”在蔡达标的主持下,推行去“家族化”的内部管理改革,以职业经理人替代原来的部分家族管理人员,先后有大批老员工离去。公司还先后从麦当劳、肯德基等餐饮企业共引进约20名中高层管理人员,占据了公司多数的要职,基本上都是由蔡总授职授权,潘宇海显然已经被架空。

      双方矛盾激化。2011年4月22日,广州市公安机关证实蔡达标等人涉嫌挪用资金、职务侵占等犯罪行为,并对蔡达标等4名嫌疑人执行逮捕。

      蔡潘双方对真功夫的混乱争夺让今日资本顶不住股东压力,而选择退出。2012年11月30日,今日资本将旗下今日资本投资—(香港)有限公司(下称今日资本香港公司)所持有真功夫的3%股权悉数转让给润海有限公司。至此,真功夫股权又再次重回了蔡潘两家对半开的局面。

      三年之后,真功夫原总裁蔡达标一案尘埃落定。根据广州中院二审判决,蔡达标构成职务侵占罪和挪用资金罪被维持14年刑期。随着蔡达标刑事案件终审判决生效,蔡达标所持有的41.74%真功夫股权已进入司法拍卖程序,有传言股权估值高达25亿元。

      6冷杉投资、硅谷天堂等27家PE深陷山东瀚霖上市对赌

    2008年,山东瀚霖成立,公司主要是以石油副产品轻蜡油为原料,利用微生物发酵法从事长碳链二元酸系列产品及下游产品研发、生产及销售的生物高新技术企业。长碳链二元酸微生物发酵法的发明人、中国科学院陈远童教授被特聘为公司的首席科学家。

      在2010年,山东瀚霖在《股权融资商务计划书》中称:公司计划集资30亿元人民币,5年内分三期完成6万吨/年的长链二元酸生产线。第一期工程为1万吨/年,2009年10月份开始正式投产,当年销售收入5000万元,实现净利润1700万元。第二期工程2万吨/年2009年11月正式开工建设,计划2010年6月建成,成为世界最大的长链二元酸生产基地。预计2010年实现净利润3亿元。三期工程3万吨/年建成后,总生产能力达到6万吨/年,每年总产值将达到30亿元以上,利润超过10亿元。

      山东瀚霖以2012年上市为对赌标的,在2011年以“忽悠”方式引入了27家PE机构投资14.08亿资金突击入股,其中包括知名PE机构硅谷天堂、中兴通讯旗下创投公司中兴合创。

      投资山东瀚霖的机构和企业共为27家,投资金额高达1.76亿元,机构占股为28.95%。在这27家机构和企业中,出资额最大的是5000万元,投资方为烟台市广信投资发展有限责任公司。其次为青岛铜城投资咨询有限公司,投资额为1600万。新疆东凡股权投资合伙企业和天津合信股权投资基金合伙企业出资紧随其后。其中,包括知名PE机构天津硅谷天堂合盈股权投资基金合伙企业(简称“硅谷天堂”)、中兴通讯旗下创投公司中兴合创,分别认购700万出资额和500万出资额,分别投资了5600万元和4000万元。其余的PE机构出资额多在500万元左右,投资额在4000万左右。

      除两家机构外,其余的都是在2011年突击进入山东瀚霖,而且多集中在2011年下半年。如此高密度地投资山东瀚霖的原因就是:彼时山东瀚霖准备2012年上市,而签订的合同内容对赌的就是2012年上市成功,否则回购股份。

      2012年,山东瀚霖上市失败,按照对赌协议,若在2012年在中国中小板或者创业板上市失败,则曹务波要回购股份。但官司缠身的曹务波无力偿还,于是2013年上半年,冷杉资本开始起诉曹务波。

      2014年冷杉资本冻结了山东瀚霖的股权。

      至此,27家PE退出无望,14亿打了水漂。

      7“海富投资”诉“甘肃世恒”履行对赌条款最高法惨胜

    2007年,苏州工业园区海富投资有限公司(PE投资机构,简称海富投资)与甘肃世恒有色资源再利用有限公司(目标公司,简称甘肃世恒)、香港迪亚有限公司(甘肃世恒原唯一股东,简称香港迪亚)、陆波(甘肃世恒的实际控制人)签署增资协议,约定海富投资向甘肃世恒现金增资2000万元人民币。增资后,甘肃世恒变为中外合资企业。

      增资协议第7条第2款,即业绩补偿条款(媒体报道多用对赌条款来简称本条内容,笔者以为不妥。实际上,对赌条款包括业绩补偿、上市时间对赌、股权调整等多种方式,本条内容只涉及业绩补偿,并未涉及其他对赌条款,因此不宜以对赌条款笼统地称呼)约定:若甘肃世恒2008年净利润完不成3000万元人民币,海富投资有权要求甘肃世恒补偿,若甘肃世恒未能履行补偿义务,海富投资有权要求香港迪亚补偿,并约定了补偿金额的计算方式。

      海富投资于2007年11月2日依约向甘肃世恒缴存了出资款2000万元人民币,其中114万余元认缴新增注册资本,1885万余元计入资本公积金。

      2008年2月29日,甘肃省商务厅批准了增资协议、合营合同和公司章程。随后,甘肃世恒办理了相应的工商变更登记。

      2008年,甘肃世恒净利润不足3万元人民币,远未达到约定水平,由此触发了增资协议中的业绩补偿条款。

      1.一审。经协商无果后,2009年,海富投资将甘肃世恒、香港迪亚、陆波诉至兰州市中级人民法院,要求支付协议补偿款1998万元人民币。2010年,一审判决驳回海富投资的全部诉讼请求。  海富投资与甘肃世恒的对赌协议被判无效。

      2.二审。海富投资不服一审判决,向甘肃省高级人民法院上诉,请求撤销一审判决,支持其诉讼请求。2011年,二审判决撤销一审判决,甘肃世恒与香港迪亚共同返还海富投资1885万元人民币及利息。

      海富投资与甘肃世恒的对赌协议被判无效。

      3.再审。甘肃世恒和香港迪亚不服,向最高人民法院申请再审,请求撤销二审判决,维持一审判决。2012年,最高人民法院判决撤销二审判决,香港迪亚向海富投资支付协议补偿款1998万元人民币,驳回海富投资的其他诉讼请求。

      海富投资与甘肃世恒的对赌协议被判部分无效。

      从2008年出现对赌纠纷到2012年最高法院一锤定音,四年时间,海富投资不仅承担着巨额的投资成本,而且背负着不知何时终结的诉讼时间成本,可以说海富投资在本次风投中彻底失败。

      8贝恩资本折戟国美18亿入股5年后20亿退出

    贝恩资本是国际性私人股权投资基金,管理资金超过650亿美元,涉及私人股权、风险投资资金、上市股权对冲基金和杠杆债务资产管理。

      2008年11月17日,黄光裕和财务总监周亚飞被相关部门带走调查。紧接着,国美财务遭遇麻烦,资金链吃紧,且还面临赎回一笔可转换债券的压力(国美此前在2007年5月发行过一笔46亿元的可转换债,持有人可于2010年5月要求国美赎回)。

      同时,2008年正值全球金融危机,市场现金几乎枯竭,国美电器内外交困。截至2008年末,其应付票据及银行借贷已达86.57亿元,而应付账款及应付票据更是高达129亿元。

      2009年1月,陈晓临危受命,接替黄光裕任国美董事局主席。

      2009年4月,大股东黄光裕同意国美电器的债务重组方案。经陈晓引荐,国美电器引入贝恩。据报道,当时合作方案中隐含着“保证黄氏家族的控股地位”,并以“贝恩不会绝对控股国美”为前提。最终,贝恩在国美电器当时32.36亿港元的融资中认购了总价18.04亿港元的七年期可换股债券,国美电器才逐步走出危机恢复增长。

      2010年9月,在“黄陈大战”的股东大会召开前夕,贝恩资本将所持有的18.04亿港元国美电器可转换债全部转股,转股价格为1.108港元/股,转股股份为国美电器16.66亿股,占股比例为9.98%的股权。转股后贝恩成为仅次于黄光裕的第二大股东。

      在贝恩资本进入国美的三年里,国美电器一直受困于内乱而频繁改变策略。然而也就在这两三年内,整个家电连锁产业的态势已经发生了翻天覆地的变化。

      老对手苏宁电器已经在几年间全面超越国美,而国美在电商上的犹豫不决又使其早已开展的电商业务一直业绩平平。当苏宁易购在2011年销售额达到59亿元时,国美电器网上商城的销售额仅有10亿元。

      2011年3月,陈晓辞去国美职务,由张大中接任国美电器董事会主席。不过,内耗加电商崛起及市场低迷,令国美电器2012年亏损超7亿元。

      2015年1月22日晚,国美电器发布业绩预告,2014年综合毛利率预计将超过18%,净利润将同比增长约40%。按国美电器2013年净利润8.9亿元推算,预计其2014年净利润将超12亿元。

      同在1月22日当天,国美电器第二大股东贝恩,尽售其所持国美电器的9.2亿股,以较收市价折让2.5%-5.17%的条件套现约10.6亿元。贝恩退出后,国美第二大股东不再是贝恩,变为贝莱德,其持股比例由2014年1月底7.05%增至目前的7.73%。

      公开数据显示,贝恩此次悉售国美股权,加上去年7月的配售,两次套现共约20亿元。相比2009年贝恩以18.04亿元认购国美股份,持股5年半,其账面仅赚了1.96亿元,投资回报率约11%。

      贝恩退出后,1月22日至1月24日,国美股价连跌三天。第四天企稳回升。

      综上,风险投资作为财务投资人一般只关心企业能否提供超额资本回报,而不去考虑企业的健康长远发展,当然对企业控股权也无太大兴趣。但财务投资人一旦与产业投资人合作,企业家只有认命交出企业控制权的选择了。总体上说,我国的民营企业在面对风险投资机构时,由于相关融资与法律经验不足,常常处于任人宰割的弱势地位。民营企业只有借助外力财务顾问与法律顾问,才能有效对抗风投机构,不至于在融资谈判与操作过中处处受制于人,最终难以圆满。

    可是,作为时代定制一个历经风雨创业八个春秋的我来讲,隐约的伤痛然我顿悟到更沉重的一句话应该是:卓越的资本合伙人比资本家的金币更重要,马云最应该说一句:蔡,love u forever。

    ——主体节选自互联网


    展开全文
  • 含义为:替换字符串 replace(原字段,“原字段旧内容“,“原字段新内容“,) REGEXP_REPLACE用法 (正则表达式) TO_NUMBER(REGEXP_REPLACE(TYPENAME,’[^0-9]’)) FLAG 语句: update sys_frmattachmentdb ...

    -----------------------------------------------总结、提高------------------------------------------------------
    FineReport帮助文档

    • CONCAT (Finereport报表含有参数的标题)
    =CONCATENATE (LEFT($dtFromDate, 4), "年", $cmbGroup, "组AOI缺陷分类表")
    -- SQL中是CONCAT,同   ||
    
    • 时间参数处理方法
    SELECT 
     COUNT(CODE)QTY, ABNORMAL_DESC
      FROM IMP_PROD_ABNORMAL
    WHERE SER='AOI_Abnor'
    AND CLASSIFY='${cmbGroup}'
    AND TO_CHAR(OCCUR_DATE,'YYYYMMDD') BETWEEN  TO_CHAR(CASE WHEN TO_CHAR(TO_DATE(REPLACE('${dtEndDate}','-',''),'yyyymmdd')-1,'D') < '4' 
    THEN  TO_DATE(REPLACE('${dtEndDate}','-',''),'yyyymmdd')-7+4-TO_CHAR(TO_DATE(REPLACE('${dtEndDate}','-',''),'yyyymmdd')-1,'D')
    WHEN TO_CHAR(TO_DATE(REPLACE('${dtEndDate}','-',''),'yyyymmdd')-1,'D') >= '4' 
    THEN TO_DATE(REPLACE('${dtEndDate}','-',''),'yyyymmdd')-TO_CHAR(TO_DATE(REPLACE('${dtEndDate}','-',''),'yyyymmdd')-1,'D')+4 END,'YYYYMMDD')
    AND  REPLACE('${dtEndDate}','-','')
    --${IF(LEN(cmbWeek) == 0,"","AND 'WK'||TO_CHAR(OCCUR_DATE+4,'IW') IN ('" + cmbWeek + "')")}
    GROUP BY ABNORMAL_DESC
    

    其中,REPLACE函数的用法:
    使用的函数为replace()

    含义为:替换字符串

    replace(原字段,“原字段旧内容“,“原字段新内容“,)

    REGEXP_REPLACE用法 (正则表达式)
    TO_NUMBER(REGEXP_REPLACE(TYPENAME,’[^0-9]’)) FLAG

    语句:

    update sys_frmattachmentdb set filefullname = replace(filefullname,'历城区,'北京区‘)

    2019/6/4

    • NVL 、NVL2用法
    NVL2(MACHINE_TIME,(MACHINE_TIME-RELEASE_TIME)*24,(sysdate-RELEASE_TIME)*24)  RELEASE_DURATION
    
     WHERE 1=1
           AND MATERIALS_TYPE = '${cmbMATERIALS_TYPE}'
           ${if(len(cmbPRD_SPECNAME)==0," " ," AND PRD_SPECNAME IN ('"+cmbPRD_SPECNAME+"')")}
           ${if(len(cmbLOTNAME)==0," " ," AND LOTNAME IN ('"+cmbLOTNAME+"')")}
           AND RELEASE_TIME  BETWEEN DATE '${dtReleaseStart}' AND DATE '${dtReleaseEnd}'
           ${IF(LEN(ST)*LEN(ET)==0,"","and MACHINE_TIME  between to_date('"+ST+"','YYYY-MM-DD') and to_date('"+ET+"','YYYY-MM-DD')")}
           ${if(chkDura == true,"AND NVL2(MACHINE_TIME,(sysdate-RELEASE_TIME),(MACHINE_TIME-RELEASE_TIME))>24","")}
           ${if(len(cmbEVENT_USER1)==0," " ," AND EVENT_USER1 IN ('"+cmbEVENT_USER1+"')")}
           ${if(len(cmbEVENT_USER2)==0," " ," AND EVENT_USER2 IN ('"+cmbEVENT_USER2+"')")}
    

    2019/6/6


    TO_CHAR(ADD_MONTHS(SYSDATE-1,-3),'YYYYMM')
    

    注意ADD_MONTHS的用法:

    add_months 函数主要是对日期函数进行操作

    add_months 有两个参数,第一个参数是日期,第二个参数是对日期进行加减的数字(以月为单位的

    TRUNC用法:

    select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss'),
              to_char(trunc(sysdate), 'yyyy-mm-dd hh24:mi:ss')from dual t;--sysdate和trunc(sysdate)是不一样的 sysdate在当天的零时零分零秒等于trunc(sysdate)
    
    select trunc(sysdate, 'dd'), trunc(sysdate) from dual t; --今天 20140703 零时零分零秒
    select to_char(trunc(sysdate, 'dd'), 'yyyy/mm/dd hh24:mi:ss'),
           to_char(trunc(sysdate), 'yyyy/mm/dd hh24:mi:ss')
      from dual;
    
    
    select trunc(sysdate-to_date('20140709 23:12:12','yyyy/mm/dd hh24:mi:ss')) from dual t;--两个日期相差的天数
    select trunc(sysdate-1) from dual t;--昨天
    select trunc(sysdate+1) from dual t;--明天
    
    select trunc(sysdate, 'yy') from dual;--当年第一天
    select trunc(sysdate, 'year') from dual;--当年第一天
    select trunc(sysdate, 'yyyy') from dual;--当年第一天
    
    select trunc(sysdate, 'q') from dual;--当前时间所在的季度的第一天
    
    select trunc(sysdate, 'mm') from dual;--当月第一天
    select trunc(sysdate, 'month') from dual;--当月第一天
    
    
    
    select trunc(sysdate, 'd') from dual;--返回本周的第一天(周日为第一天)
    select trunc(sysdate,'day') from dual;--返回本周的第一天(周日为第一天)
    
    select trunc(sysdate, 'iw') from dual;--本周第二天(周日为第一天)
    
    select trunc(sysdate, 'hh') from dual; --当前时间,精确到小时
    select trunc(sysdate, 'hh24') from dual;--当前时间。精确到小时
    
    select trunc(sysdate, 'mi') from dual;--当前时间。精确到分钟 没有精确到秒的精度
    

    改天整理

    时间参数处理

      AND TO_CHAR (OCCUR_DATE,'YYYYMM')=' ${dtBL_Year}' || '${dtBL_Mon}'
    

    – 年、月分开做筛选条件的情况

    展开全文
  • 8.1 系统评价决策模型概论 8.1.1 问题的引入 8.1.2 系统评价决策模型的基本概念 8.1.3 系统评价决策模型的要素 8.1.4 系统评价决策模型的...8.2 案例分析-汽车选购 8.2.1 问题引入 8.2.2 决策矩阵的规范化 ...
  • 02【简历】重要性,撰写要点,经典案例分析 简历七大模块:基本信息,教育背景,荣誉奖励,实习经历,项目经历,个人技能,其他(兴趣爱好,自我评价) 【Star法则】: STAR法则,即为Situation Target Action ...
  • PAGE / NUMPAGES 1-2-1典型结构案例分析结构是怎样受力的 使用时间 使用人 一目标展示 1.理解结构是为了承受力和抵抗变形的本质 2.通过对简单结构案例的学习能尝试对生活中常见结构作受力和变形分析 3.通用本节课的...
  • 3 个经典的卷积神经网络案例分析

    千次阅读 2018-12-12 19:20:00
    本文将以 Alex-Net、VGG-Nets、Network-In-Network 为例,分析几类经典的卷积神经网络案例。在此请读者注意,此处的分析比较并不是不同网络模型...
  • Hadoop之企业案例分析

    2019-06-13 20:00:02
    Hadoop之企业案例分析 目录 海量日志数据,提取出某日访问百度次数最多的那个IP 有一个1G大小的一个文件,里面每一行是一个词,词的大小不超过16字节,内存限制大小是1M。返回频数最高的100 个词 有 10 个文件,每...
  • 本书系统地介绍了电子元器件失效分析技术及典型分析案例。全书分为基础篇和案例篇。基础篇阐述电子元器件失效分析的目的和意义、失效分析程序、失效分析技术以及失效分析主要仪器设备与工具;案例篇按照元器件门类...
  • 软件工程工程伦理案例分析A CASE (Computer-Aided Software Engineering) tool is a non-exclusive term used to indicate any form of automated support for software engineering. In an increasingly ...
  • SPSS典型相关分析案例

    万次阅读 2014-12-10 17:58:20
    相关分析,两个变量之间密切程度的一种常见统计分析方法,能够简单有效说明两变量间存在什么关系,这些关系的常见描述语句有:线性相关、正相关、负相关等。 【数据集说明】 某公司员工的基本情况,数据集含3...
  • 数据挖掘案例分析

    2015-04-25 19:25:00
    数据挖掘应用目前在国内的基本结论是“大企业成功案例少,中小企业需求小”。但是对于市场来说,如果...这 是沃尔玛的经典案例:一般看来,啤酒和尿布是顾客群完全不同的商品。但是沃尔玛一年内数据挖掘的结果显示,...
  • SPSS因子分析经典案例分享

    万次阅读 多人点赞 2014-12-10 18:07:32
    因子分析已经被各行业广泛应用,各种案例琳琅满目,以前在百度空间发表过相关文章,是以每到4至6月,这些文章总会被高校毕业生扒拉一遍,也总能收到各种魅惑的留言,因此,有必要再次发布这经典案例以飨读者。...
  • 【系统分析师之路】2016年系统分析师下午案例分析真题
  • 中文名: 电子商务应用与重构案例分析 作者: 覃征 资源格式: PDF 版本: 文字版 出版社: 高等教育出版社书号: 9787040132953发行时间: 2003年12月 地区: 大陆 语言: 简体中文 简介: 内容简介: 本书是高等学校...
  • 该文件含有40个MATLAB统计分析与应用经典程序,便于大学生或研究生参考,对MATLAB的学习以及论文写作有重要意义
  • 软件架构案例分析和最佳实践

    千次阅读 2014-12-24 11:11:25
    第一单元: 软件架构成果(视图和架构文档)和软件架构驱动因素 1、软件架构的视图 (1)软件架构视图的意义, 软件架构...(5)典型案例分析:结合多个项目案例,分析真实项目软件架构视图 2、软件架构的文档编写
  • AI可以通过分析每个学生的学习模式来解决这个问题。基于人工智能的LMS可以识别学生的优势和劣势,并针对学习中的特定差距提出课程改进建议。通过弥补这些差距,人工智能最终将改善学习曲线。 现在国内很多教育行业的...
  • 为建立符合中国国情的软件开发过程和组织体系,培训中心特举办“软件项目管理案例分析”培训班,具体事宜通知如下: 一、培训对象 软件开发机构高级管理人员、项目经理、系统架构师、系统分析师、资深开发人员、...
  • 典型的就是 Hive 的 MapJoin 语法,如果 join 的一张表比较小,比如只有几 MB,那么就可以用 MapJoin 进行连接, Hive 会将这张小表当作 Cache 数据全部加载 到所有的 Map 任务中 ,在 Map 阶段完成 join 操作,无需...
  • IT治理——标准、框架与案例分析

    热门讨论 2011-12-08 18:16:10
    本书系统介绍了国内外公认以及ITGov自主创新的IT治理标准、框架和最佳实践,并辅以我国政府部门和企业推进信息化工作的典型案例。该书为新型的信息化领导者提供了一部国际国内IT治理及最佳实践“集萃式的方法与案例...
  • 从上面的例子来看, 自然意义不大, 但是很多东西的确用递归思维会更加简单…… 经典的例子就是斐波那契数列(Fibonacci sequence),又称黄金分割数列、 因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子...
  • 真正理解线程上下文类加载器(多案例分析

    万次阅读 多人点赞 2016-09-25 13:31:36
    线程上下文类加载器破坏了“双亲委派模型”,可以在执行线程中抛弃双亲委派加载链模式,使上层代码可以逆向使用下层的系统类加载器。本文通过JDBC和Tomcat两个案例分析,详细解释了其中的原理。
  • 案例1主题: 主成分分析及学生成绩神秘联系分析 案例2主题: 因子分析及学生成绩神秘联系分析 案例一:目的与内容 学生的考试是评估学生的学习程度及能力,当我们只想知道学生的学习程度如何时,可借由一份良好的...
  • 这篇文章将详细讲解逆向分析OllyDbg动态调试工具的基本用法,包括界面介绍、常用快捷键和TraceMe案例分析。 这些基础性知识不仅和系统安全相关,同样与我们身边常用的软件、文档、操作系统紧密联系,希望这些知识对...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 43,409
精华内容 17,363
关键字:

典型案例分析的意义