Parameter index out of range (2 > number of parameters, which is 1).原因及处理

1、在运行ssm项目时,报Parameter index out of range (2 > number of parameters, which is 1)异常

2、原因
mapper文件中的动态SQL中select标签中有快捷方式注释的语句

 <select id="findById" parameterType="integer" resultMap="findByIdResultMap">
        select *
        from t_setmeal
        where id = #{id}
         #         SELECT
    #             s.*,c.id gid,c.name gname,c.helpCode ghelpCode,c.code gcode,c.attention gattention,c.sex gsex,c.remark gremark,i.id iid,i.name iname,i.code icode, i.sex isex, i.age iage, i.price iprice, i.type itype, i.attention iattention, i.remark iremark
    #         FROM
    #             t_setmeal s
    #                 LEFT JOIN t_setmeal_checkgroup sc ON s.id = sc.setmeal_id
    #                 LEFT JOIN t_checkgroup c ON sc.checkgroup_id = c.id
    #                 LEFT JOIN t_checkgroup_checkitem cc ON c.id = cc.checkgroup_id
    #                 LEFT JOIN t_checkitem i ON cc.checkitem_id = i.id
    #         WHERE s.id = #{id}
    </select>

3、处理
删除标签中快捷键注释的语句或修改成正确的注释语句

 <select id="findById" parameterType="integer" resultMap="findByIdResultMap">
        select *
        from t_setmeal
        where id = #{id}
 </select>
  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
二级减速器课程设计说明书,全英文书写 《Machine Parts Design》 Design Specification Topic Designation of Reducer College College of Mechanical and Electrical Engineering Major Mechanical Engineering Class 16机械工程3(国际化) No. of team Team 1 ID/Name 陈旭颖 16211452104 方 琢 16211452105 李成雍 16211452106 Instructor Zhang Yi Date submitted 2019.01.11 Contents Abstract 1 Chapter 1 Course Design Task Book 3 1.1 Purpose 3 1.2 Description of design project 3 1.3 Design Data 4 Chapter 2 Integral Design Scheme of Transmission Device 4 2.1 Transmission Scheme 4 2.2 Advantages and Disadvantages of this Scheme 4 Chapter 3 Selection of Motor 5 3.1 Motor Type Selection 5 3.2 Determination of the Efficiency of the Transmission 5 3.3 Selection of the motor capacity 5 3.4 Determination of the total transmission ratio and distribution transmission ratio of the transmission device 7 Chapter 4 Calculation of Dynamic Parameters 8 Chapter 5 Designation and calculation of high speed gear 11 5.1 Selection of gear type, accuracy grade, material and number of teeth 11 5.2 Design according to tooth surface contact fatigue strength 11 5.3 Determination of the sizes of transmission 15 5.4 Check the bending fatigue strength of tooth root 15 5.5 Calculations of other geometric dimensions of gear transmission 19 5.6 Summary of gear parameters and geometric dimensions 20 Chapter 6 Calculation of low-speed gear 21 6.1 Selection of gear type, accuracy grade, material and number of teeth 21 6.2 Designation according to tooth surface contact fatigue strength 22 6.3 Determination of the sizes of transmission 25 6.4 Check the bending fatigue strength of tooth root 26 6.5 Calculations of other geometric dimensions of gear transmission 30 6.6 Summary of gear parameters and geometric dimensions 30 Chapter 7 The designation of the shaft 32 7.1 Calculateion of High-speed shaft design 32 7.2 Calculation of jack shaft design 39 7.3 Calculation of low speed shaft 47 Chapter 8 Rolling bearing life check 53 8.1 Bearing check on high speed shaft 53 8.2 Bearing check on the jack shaft 55 8.3 Bearing check on the low speed shaft 57 Chapter 9 Key connection design calculation 58 9.1 Calculation check of coupling key connection 58 9.2 Calculation check of low speed pinion’s key connection 59 9.3 Calculation check of high speed main gear’s key connection 59 9.4 Calculation check of low speed main gear’s key connection 59 Chapter 10 Coupling selection 60 10.1 Coupling on the high speed shaft 60 10.2 Coupling on the low speed shaft 60 Chapter 11 Seal and lubricate the reducer 61 11.1 Selection of sealing 61 11.2 Gear lubrication 61 11.3 Bearing lubrication 62 Chapter 12 Reducer accessory 63 12.1 Oil level indicator 63 12.2 Ventilator 63 12.3 Drain plug 64 12.4 Peephole cover 65 12.5 Positioning pin 66 12.6 Cover screw 67 12.7 Lifting device 68 Chapter 13 Main structural dimensions of reducer housing 70 Chapter 14 Drawing of structure analysis of reduce 72 14.1 Drawing of assembly 72 14.2 Housing 73 14.3 Drawing of gears 74 14.4 Drawing of shafts 78 Chapter 15 Conclusion 81 15.1 Summary 81 15.2 Job description of team members 82 Reference 83 Attachment 84 Abstract Belt conveyor is a kind of friction driven to transport materials in a continuous way machinery. It Is mainly composed of irame conveyor belt, supporting roller, roller, tensioning device and belt conveyor motor device. It can put the material on a certain conveying line and form a conveying process of material from the initial feeding point to the final unloading point. It can not only carry out the transport of broken bulk materials, but also the transport of finished articles. In addition to the pure material transport, it can also cooperate with the requirements of the technological process in the production process of various industrial enterprises to form a rhythmic assembly line. Belt conveyor is widely used in metallurgy, coal, transportation, water and electricity, chemical and other departments, because it has a large amount of transport, simple structure, convenient maintenance, low cost, strong versatility and other advantages. Belt conveyor is also used in building materials, power, light industry, food, ports, ships and other departments. Main contents of this manual is for the design of belt conveyor drive system, the V belt transmission and twoestage cylindrical gear reducer, used in the design and calculation to the "machine design foundation", "mechanical drawing" "tolerance and interchangeability", “theoretical mechanics" courses, such as knowledge, and use AutoCAD software to carry on the drawing, so the comprehensive practice is a very important link, is also a comprehensive, standardized training in practice. Through this training, so that we have been in many aspects of training and training. It is mainly reflected in the following aspects. (1) we have cultivated the design idea of combining theory with practice, trained our ability to comprehensively apply the basic theory of mechanical design course and other related courses, analyze and solve practical engineering problems in combination with production practice, and consolidated, deepened and expanded the knowledge of relevant mechanical design. (2) through the standard mechanical parts. common mechanical transmission or simple mechanical design, so that we master the general mechanical design procedures and methods. establish a correct engineering desrgn Ideas. cultivate independence. comprehensive. Scientific engineering design ability and innovation ability. (3) in addition, it cultivates our ability to consult and use manuals, atlas and other relevant technical data, as well as the ability in calculation, drawing data processing and computer, aided design. (4) enhanced our understanding and application of the functions of Word and AutoCAD in office software. Keywords: reducer, transmission device, design, calculation, CAD Chapter 1 Course Design Task Book 1.1 Purpose According to the diagam of the belt conveyor system: (1) Plan and analysis of transmission device; (2) Selection of motor and calculation of kinematic and dynamic parameters in conveyor system; (3) Design of transmission parts (e.g. gear, worm or belt, etc.); (4) Design of shaft; (5) Design of bearing and its assemblies; (6) Selection and confirmation of key and coupling; (7) Design of lubrication; (8) Housing, framework and accessories; (9) Drawing of assembly and its components; (10) Design specification 1.2 Description of design project (a) running on two shifts per day in one-direction continuously; (b) stable loading; (c) starting with idling; (d) indoor setting with dust; (e) usage period: 10 years, minor overhaul period: 1 year, and overhaul period: 3 years; (f) power source is alternating three-phase voltage; (g) small-batch production in medium scale machinery plant; (h) allowed tolerance of conveyor speed is ± 5%. Working hours per day: 16 hours, working life: 10 years, working days per year: 300 days, equipped with three-phase AC power supply, voltage 380/220 V. 1.3 Design Data Working force of conveyor, F 2900N Speed of conveyor, v 1.5m/s Diameter, D 410mm Chapter 2 Integral Design Scheme of Transmission Device 2.1 Transmission Scheme Analysis of transmission scheme v-belt transmission is adopted . Considering the requirements of the project , I chose this scheme . Its transmission diagram is shown in figure 1-1. The transmission scheme has been given, and the reducer is a two-stage cylindrical gear reducer. 2.2 Advantages and Disadvantages of this Scheme The extemal outline size of this scheme is large, with good shock absorption capacity, low manufacturing, stability accuracy with low cost, and overload protection. But because the gear relative to the bearing of the two-stage cylindrical gear reducer is arranged asymmetrically, the load distribution along the tooth direction is uneven, and the shaft stiffness is required. Chapter 3 Selection of Motor 3.1 Motor Type Selection According to the use of the Y-series general purpose fully closed self-cooled three-phase asynchronous motor. 3.2 Determination of the Efficiency of the Transmission According to table 2-1, we got: The Efficiency of coupling:η1=0.99 The Efficiency of rolling bearing:η2=0.99 The Efficiency of closed cylindrical gears:η3=0.98 The Efficiency of Working Machine:ηw=0.97 Total efficiency from motor to machine: ηa=η1×η24×η32×ηw=0.877 3.3 Selection of the motor capacity The power required by the working machine Pw: Rated power required by motor Pd: Work speed of transmission belt wheels nw: According to the recommended reasonable transmission ratio range in table 2-2, the transmission ratio range of the expanded two-stage gear reducer ia=8 ~ 40, the transmission ratio range of v-belt transmission is ib=2~4, so the theoretical transmission ratio range is=16~160. The optional speed range of the motor : nd=is*nw=(16 ~ 160) 69.91=559--2796r/min. After comprehensive consideration of price, weight, transmission ratio and other factors, the selected three-phase asynchronous motor model : Y132M2-6 . Rated power Pen=5.5kW,Full load speed nm=960r/min,Synchronous speed nt=1000r/min。 Serial Number Motor Type Synchronous Speed/(r/min) Rated Power/kW Full Speed/(r/min) 1 Y160M2-8 750 5.5 720 2 Y132M2-6 1000 5.5 960 3 Y132S-4 1500 5.5 1440 4 Y132S1-2 3000 5.5 2900 Figure 3-1 main size parameters of the motor Height of Center Dimensionof overall Dimensionof base mounting Diameter of anchor bolt hole Size of Axis stretch Size of key H L×HD A×B K D×E F×G 132 515×315 216×178 12 38×80 10×33 3.4 Determination of the total transmission ratio and distribution transmission ratio of the transmission device (1)Calculation of total transmission ratio According to the selected fullload speed of the motor nm and the drive shaft speed of the motor nw,we can calculate the total transmission ratio of the transmission device ia: (2)Allocate transmission ratio High speed stage transmission ratio i1 Then the transmission ratio of low-speed stage i2 Total transmission ratio of reducer ib Chapter 4 Calculation of Dynamic Parameters (1)The speed of each shaft: High speed shaft : Jack shaft : Low speed shaft : The working machine shaft : (2)Input power of each shaft: High speed shaft : Jack shaft : Low speed shaft : The working machine shaft : Then the output power of each shaft: High speed shaft : Jack shaft : Low speed shaft : The working machine shaft : (3)Input torque of each shaft: Motor shaft : High speed shaft : Jack shaft : Low speed shaft : The working machine shaft : Then the torque of each shaft: High speed shaft : Jack shaft : Low speed shaft : The working machine shaft : The rotational speed, power and torque of each shaft are listed in the following table name of the shaft rotating speed n /(r/min) power P/kW torque T/(N•m) Motor shaft 960 4.96 49.34 High speed shaft 960 4.91 48.84 Jack shaft 222.74 4.76 204.09 Low speed shaft 69.82 4.62 631.92 The working machine shaft 69.82 4.35 594.99 Chapter 5 Designation and calculation of high speed gear 5.1 Selection of gear type, accuracy grade, material and number of teeth 1. According to the transmission scheme, helical cylindrical gear transmission is selected,Pressure angle α=20°,Primary spiral Angle β=12°。 2. Refer to table 10-6 for level 7 accuracy. 3. Material selection : According to table 10-1, Pinion chosen: 40Cr (quenched and tempered), hardness: 280HBS; Main gear: 45 (quenched and tempered), hardness: 240HBS. 4. Number of pinion teeth: z1=24,number of main gear teeth: z2=z1×i=24×4.31=103. 5.2 Design according to tooth surface contact fatigue strength 1. The diameter of the dividing circle of the pinion is calculated by formula (10-24),that is: (1) Determine the values of each parameter in the formula (1) Choose KHt=1.3 (2) Calculate the torque T transmitted by the pinion: (3) According to table 10-7, the tooth width coefficient: φd=1 (4) According to figure 10-20, regional coefficient: ZH=2.47 (5) According to table 10-5, the elastic influence coefficient of the material: ZE=189.8√MPa. (6)The contact fatigue strength Zε is calculated by formula (10-9). (7) The spiral Angle coefficient Zβ can be obtained from the formula. (8) Calculate the allowable contact fatigue stress[σH] According to figure 10-25d, the contact fatigue limit of pinion and large gear is respectively The stress cycle number is calculated from equation (10-15): Contact fatigue coefficients were obtained from FIG. 10-23 If the failure probability is 1% and the safety coefficient S=1,then: Take the smaller one of [σH]1 and [σH]2as the contact fatigue allowable stress of the gear pair, that is: (2) Calculate the diameter of the dividing circle of the pinion 2. Adjust the diameter of the dividing circle of the pinion (1) Data preparation before calculating actual load coefficient. (1) Circumferential velocity ν (2) Tooth width b (2) Calculate the actual load coefficient KH (1) According to table 10-2, KA=1 (2) According to v=1.827m/s and the accuracy of level 7, the dynamic load coefficient can be obtained from figure 10-8, Kv=1.035 (3) The circular force of a gear. In table 10-3, the load distribution coefficient between teeth was KH =1.4 When the accuracy of level 7 and the relative support of pinion are arranged asymmetrically by interpolation method, according to table 10-4, the distribution coefficient of load in tooth direction KHβ=1.417 Thus, the actual load coefficient KH is obtained (3) According to equation (10-12) and the actual load coefficient, the diameter of the dividing circle d1 can be obtained (4) Determine the modulus of 5.3 Determination of the sizes of transmission 1. Computing center distance a 2. The helix Angle is corrected according to the center distance after rounding β=12°19'58" 3. Calculate the dividing circle diameter d1 ,d2of small and big gear 4. Calculate the tooth width b Take B1=55mm, B2=50mm 5.4 Check the bending fatigue strength of tooth root The fatigue strength condition of tooth root bending: (1)T、mn and d1 are like the previous Tooth width: b=b2=50 Tooth shape coefficient YFa and stress correction coefficient YSa, the equivalent number of teeth: The equivalent number of teeth of pinion Zv1: Equivalent number of teeth of main gear Zv2: The tooth shape coefficient is obtained from FIG. 10-17 The stress correction coefficient is obtained from FIG. 10-18 (1) Choose load factor KFt=1.3 (2) From equation (10-18), the coincidence coefficient of bending fatigue strength Yε can be calculated Have a type: (3) From equation (10-19), obtain the spiral Angle coefficient of bending fatigue strength Yβ (2) Circumferential velocity (3) Aspect ratio b/h According to v=2.47m/s, level 7 accuracy, dynamic load coefficient can be found from figure 10-8, Kv=1.047 According to table 10-3 , load distribution coefficients between teeth KFα=1.4 According to table 10-4, KH =1.42 and b/h=50/4.5=11.111. According to figure 10-13, KF =1.079. Then the load coefficient is: According to FIG. 10-24c, the tooth root bending fatigue limit of pinion and big gear is respectively The bending fatigue coefficient KFN1 ,KFN2 was obtained from FIG. 10-22 The bending fatigue safety factor S=1.25, from equation (10-14) Check the bending fatigue strength of tooth root The bending fatigue strength of tooth root meets the requirement, and the ability of pinion to resist bending fatigue damage is greater than that of large gear. (4) The circular velocity of a gear Level 7 accuracy is appropriate. 5.5 Calculations of other geometric dimensions of gear transmission (1)Calculate the height of addendum tooth, dedendum tooth and total tooth (2)Calculate the addendum circle diameters of small and large gears (3)Calculate the diameter of dedendum circle of small and large gears 5.6 Summary of gear parameters and geometric dimensions Code name Calculated formula Pinion Main gear Modulus m 2 2 Spiral Angle β left-handed 12°19'58" right-handed 12°19'58" Coefficient of addendum height ha* 1.0 1.0 Tip clearance coefficient c* 0.25 0.25 Number of teeth z 24 103 Width of teeth B 55 50 Height of addendum teeth ha m×ha* 2 2 Height of dedendum teeth hf m×(ha*+c*) 2.5 2.5 Diameter of the dividing circle d 49.134 210.866 Addendum circle diameter da d+2×ha 53.134 214.866 Dedendum circle diameter df d-2×hf 44.134 205.866 Figure 5-1 structure diagram of high-speed main gear Chapter 6 Calculation of low-speed gear 6.1 Selection of gear type, accuracy grade, material and number of teeth 1. According to the transmission scheme, choose helical cylindrical gears,The pressure off for alpha = 20 °, primary spiral Angle beta = 12 °. 2. Refer to table 10-6 , choose level 7 accuracy. 3. Material selection According to table 10-1, choose pinion 40Cr (quenching and tempering), and the hardness was 280HBS; choose main gear 45 (quenching and tempering), and the hardness was 240HBS 4. Select the number of pinion teeth z1=25, then the number of large gear teethz2=z1×i=25×3.19=81. 6.2 Designation according to tooth surface contact fatigue strength 1. From formula (10-24), the diameter of the dividing circle of the pinion is calculated, i.e (1) Determine the values of each parameter in the formula (1) Choose KHt=1.3 (2) Calculate the torque transmitted by the pinion: (3) From table 10-7, the tooth width coefficient is φd=1 (4) From figure 10-20, Regional coefficient ZH=2.47 (5) From table 10-5, the elastic influence coefficient of the material ZE=189.8√MPa。 (6) From equation (10-9), the coincidence coefficient is used to calculate the contact fatigue strength Zε. (7) From the formula, the spiral Angle coefficient Zβ. (8) Calculate the allowable contact fatigue stress[σH] According to figure 10-25d, the contact fatigue limit of pinion and big gear is respectively From equation (10-15) , the number of stress cycles can be calculated : From figure10-23, check the contact fatigue coefficient If the failure probability is 1% and the safety coefficient S=1, then Take the smaller one of [σH]1 and [σH]2as the contact fatigue allowable stress of the gear pair, that is: (2) Calculate the diameter of the dividing circle of the pinion 2.Adjust the diameter of the dividing circle of the pinion (1) Data preparation before calculating actual load coefficient. (1) Circumferential velocity ν (2) Tooth width b (2) Calculate the actual load coefficient KH (1) According to table 10-2, KA=1 (2) According to v=0.666m/s and the accuracy of level 7, the dynamic load coefficient can be obtained from figure 10-8, Kv=1.013 (3) The circular force of a gear. In table 10-3, the load distribution coefficient between teeth was KH =1.2 When the accuracy of level 7 and the relative support of pinion are arranged asymmetrically by interpolation method, according to table 10-4, the distribution coefficient of load in tooth direction KHβ=1.421 Thus, the actual load coefficient KH is obtained (3) According to equation (10-12) and the actual load coefficient, the diameter of the dividing circle d1 can be obtained (4) Determine the modulus of 6.3 Determination of the sizes of transmission 1. Computing center distance a 2.The helix Angle is corrected according to the center distance after rounding β=12°43'9" 3. Calculate the dividing circle diameter d1 ,d2of small and big gear 4. Calculate the tooth width b Take B1=85mm B2=80mm 6.4 Check the bending fatigue strength of tooth root The fatigue strength condition of tooth root bending: (1)T、mn and d1 are like the previous Tooth width: b=b2=80 Tooth shape coefficient YFa and stress correction coefficient YSa, the equivalent number of teeth: Equivalent number of teeth of pinion Zv1: Equivalent number of teeth of main gear Zv2: The tooth shape coefficient is obtained from FIG. 10-17 The stress correction coefficient is obtained from FIG. 10-18 (1) Choose load factor KFt=1.3 (2) From equation (10-18), the coincidence coefficient of bending fatigue strength Yε can be calculated Have a type: (3) From equation (10-19), obtain the spiral Angle coefficient of bending fatigue strength Yβ (2) Circumferential velocity (3) Aspect ratio b/h According to v=0.9m/s, level 7 accuracy, dynamic load coefficient can be found from figure 10-8, Kv=1.017 According to table 10-3 , load distribution coefficients between teeth KFα=1.4 According to table 10-4, KHβ =1.427 and b/h=80/6.75=11.852. According to figure 10-13, KF =1.08. Then the load coefficient is: According to FIG. 10-24c, the tooth root bending fatigue limit of pinion and big gear is respectively The bending fatigue coefficient KFN1 ,KFN2 was obtained from FIG. 10-22 The bending fatigue safety factor S=1.25, from equation (10-14) Check the bending fatigue strength of tooth root The bending fatigue strength of tooth root meets the requirement, and the ability of pinion to resist bending fatigue damage is greater than that of large gear. (4) The circular velocity of a gear Level 7 accuracy is appropriate. 6.5 Calculations of other geometric dimensions of gear transmission (1)Calculate the height of addendum tooth, dedendum tooth and total tooth (2)Calculate the addendum circle diameters of small and large gears (3)Calculate the diameter of dedendum circle of small and large gears 6.6 Summary of gear parameters and geometric dimensions Code name Calculated formula Pinion Main gear Modulus m 3 3 Spiral Angle β left-handed 12°43'9" right-handed 12°43'9" Coefficient of addendum height ha* 1.0 1.0 Tip clearance coefficient c* 0.25 0.25 Number of teeth z 25 81 Width of teeth B 85 80 Height of addendum teeth ha m×ha* 3 3 Height of dedendum teeth hf m×(ha*+c*) 3.75 3.75 Diameter of the dividing circle d 76.887 249.113 Addendum circle diameter da d+2×ha 82.887 255.113 Dedendum circle diameter df d-2×hf 69.387 241.613 Figure 6-1 Low speed large gear structure drawing Chapter 7 The designation of the shaft 7.1 Calculateion of High-speed shaft design 1. Select the material on the shaft and determine the allowable stress Because the reducer is a general machine, there is no special requirement, so 40Cr (quenched and tempered) is selected, the hardness is 280HBS, check the table15-1,take σb=735MPa, σ-1b=60MPa 2. The minimum diameter of the shaft estimated according to the initial torsion strength Check table 15-3, take A0=112,so Shaft ends have 1 keyway, therefore, the axle diameter should be increased by 5% According to the table, the diameter of the standard axle hole is 22mm, so d=22 Figure 7-1 Schematic diagram of high-speed shaft (1) The minimum diameter of the input shaft is obviously d12, where the coupling is mounted. In order to adapt the selected shaft diameter d12 to the coupling aperture, the type of coupling should be selected. The calculated torque of the coupling Tca = KA×T, according to the table, thinking about the stability, we choose KA = 1.3, then: According to the condition that the torque Tca of the coupling should be less than the nominal torque of the coupling, refer to standard GB t4323-2002 or design manual, choose LX3 type coupling. The aperture of the semi-coupling is 22mm, the hub hole length of the semi-coupling and the shaft is 52mm. Choose ordinary flat keys,A type keys, b×h = 6×6mm(GB T 1096-2003), bond length L=40mm。 (2) Initial selection of rolling bearing. Since the bearing is subject to both radial and axial forces, angular contact bearing is selected. Referring to the work requirements and according to d23 = 27mm, select 7206AC angular contact bearing from bearing product catalog, its size: d×D×B = 30×62×16mm, so d34 = d78 = 30 mm. The positioning shaft shoulder height of 7206AC type bearing is found in the manual, h = 3 mm,then choose d45 = d67 = 36 mm. (3)Because the diameter of the gear is small, in order to ensure the strength of the gear wheel body, the gear and the shaft should be made into one and become the gear shaft. So l56 = 55 mm, d56 = 53.134 mm. (4) Thickness of bearing end covere=10, thickness of the gasketΔt=2. According to the bearing end cover for easy assembly and disassembly, ensure that the outer end face of the bearing end cover has a certain distance from the end face of the coupling, K=24; Screw C1=22mm, C2=20mm, thickness of box seat wall δ=8mm, then: (5) Take small spacing distance of enclosure wall Δ1 = 10 mm, the distance between high speed main gear and low speed pinion Δ3 = 15 mm distance. Considering about the housing casting error, when determining the position of rolling bearing, a distance Δ from inner wall of box should be taken, take Δ = 10 mm, the width of low speed pinion b3=85mm, then: At this point, the diameter and length of each section of the shaft have been preliminarily determined. Shaft section 1 2 3 4 5 6 7 Diameter / mm 22 27 30 36 53.134 36 30 Length/ mm 52 65 28 105.5 55 8 28 3. Stress analysis of the shaft The circumferential force on a high speed pinion Ft1 (d1 is the diameter of the indexing circle of the high-speed pinion) Radial force on a high speed pinion Fr1 Axial force on a high speed pinion Fa1 According to 7206AC angular contact manual, pressure center a=18.7mm Distance between the center point of the first shaft and the bearing pressure center l1: Distance from bearing pressure center to gear fulcrum l2: Distance between gear midpoint and bearing pressure center l3: (1) Calculate the supporting reaction of the shaft Horizontal support reaction: Vertical support reaction: (2) Calculate the bending moment of the shaft, and draw the bending moment diagram The horizontal bending moment at section C: The vertical bending moment at section C: Bending moment diagram of horizontal plane (fig.b) and vertical plane (fig.c). The resultant bending moment at section C: (3) Make composite bending moment diagram (figure d) Make torque diagram (figure e) Figure 7-2 High - speed shaft force and bending moment diagram 4. Check the strength of the shaft Because the bending moment on the left side of C is large and the action has torque, the left side of C is the dangerous section. The bending section coefficient W: The torsion cross section coefficient WT: The maximum bending stress: The shear stress: Check and calculate according to the strength of bending and torsion. For the shaft of one-way drive, torque is processed according to pulsating cycle. Therefore, the reduced coefficient is adopted α=0.6, then the equivalent stress is (10) Check the table, get 40Cr(tempering and tempering) treatment, and the limit of tensile strength σB=735MPa; Then the allowable bending stress of the axis [σ-1b]=60MPa, σca<[σ-1b], so the strength is good. 7.2 Calculation of jack shaft design 1. Select the material on the shaft, and determine the allowable stress Because the reducer is a general machine, there is no special requirements, so choose 45 (quenched and tempered), the hardness: 240HBS. Referring table 15-1, take σb=640MPa, σ-1b=60MPa 2. According to the initial torsion strength, the minimum diameter of the shaft estimated Refer to table 15-3, take A0=112, then: Since the minimum diameter of the shaft section is all rolling bearings, the standard diameter d=35mm is selected. Figure 7-3 Diagram of intermediate shaft (1) Initial selection of rolling bearing. The minimum diameters of the intermediate shaft are d12 and d56 for mounting the rolling bearing. Because the bearing is subject to both radial and axial forces, angular contact bearing is chosen. Referring to the requirement of working and according to dmin = 31.08 mm, from the bearing catalogue, selsct angular contact bearing 7207AC, its size: d×D×B = 35×72×17mm, so d12 = d56 = 35 mm. (2) At the installation of the big gear, take the diameter of the shaft section d45 = 38mm; Positioning by oil baffle ring is taken between the right end of the gear and the right bearing. It is known that the width of the hub of the high-speed large gear wheel b2 = 50mm, in order to press gears reliably, this section should be slightly shorter than the width of the hub, then take l45 = 48 mm. Shaft shoulder positioning is adopted in the left end of the gear, the height of shaft shoulder h = (2~3)R. Refer to the table with trunnion d45 = 38 mm, take h = 5 mm, then the diameter of Collar point d34 = 48 mm. Collar width b≥1.4h, take l34 = 15 mm. (3) Left end rolling bearing adopts oil baffle ring for axial positioning. (4) Considering about material and machining economy, low speed pinion and shaft should be designed and manufactured separately. It is known that the hub width of the low-speed pinion is b3= 85mm, in order to make the end face of oil retaining ring press the gear reliably, this section should be slightly shorter than the width of the hub, so take l23 = 83 mm,d23=38mm。 (5) Take the distance between the low-speed pinion and the inner wall of the boxΔ1 =10 mm, the distance between the high speed big gear and the inner wall of the box Δ2 =12.5 mm, the distance between high speed main gear and low speed pinionΔ3=15mm. Consider housing casting error, when determining the position of rolling bearing, should be from a distance Δ casing wall, take Δ = 10 mm, then: At this point, the diameter and length of each section of the shaft have been preliminarily determined. Shaft section 1 2 3 4 5 Diameter/ mm 35 38 48 38 35 Length/ mm 39 83 15 48 41.5 3. Force analysis of the shaft The circumferential force on a high speed pinion Ft2 (d2 is the diameter of the indexing circle of the high-speed pinion) Radial force on a high speed pinion Fr2 Axial force on a high speed pinion Fa2 Circumferential force on the low-speed pinion Ft3 (d3 is the dividing circle diameter of the low-speed pinion) Radial force on a low speed pinion The axial force on a low speed pinion According to 7207AC angular contact manual, pressure center a=21mm Distance from bearing pressure center to middle point of low-speed pinion: Distance from the midpoint of the low-speed pinion to that of the high-speed large gear: Distance from the middle point of the high-speed large gear to the bearing pressure center: (1) Calculate the reaction force of the shaft Horizontal support reaction Vertical support reaction (2) Calculate the bending moment of the shaft and draw the bending moment diagram The horizontal bending moment at section B The horizontal bending moment at section C The vertical bending moment at section C The vertical bending moment at section B Draw the bending moment diagram of horizontal plane (fig.b) and vertical plane (fig.c) The resultant bending moment at section B The synthetic bending moment of section C: Make composite bending moment diagram (figure d) Make torque diagram (figure e) Figure 7-4 force and bending moment of jack shaft 4. Check the strength of the shaft Because the bending moment on the left side of B is large and the action has torque, the left side of B is the dangerous section. Its bending section coefficient: Its torsion cross section coefficient: The maximum bending stress: Its shear stress: Check and calculate according to the strength of bending and torsion. For the shaft of one-way drive, torque is processed according to pulsating cycle. Therefore, the reduced coefficient is adopted α=0.6, then the equivalent stress is Check the table, get 40Cr(tempering and tempering) treatment, and the limit of tensile strength σB=640MPa; Then the allowable bending stress of the axis [σ-1b]=60MPa, σca<[σ-1b], so the strength is good. 7.3 Calculation of low speed shaft 1. Select the material on the shaft, and determine the allowable stress Because the reducer is a general machine, there is no special requirements, so choose 45 (quenched and tempered), the hardness: 240HBS. Referring table 15-1, take σb=640MPa, σ-1b=60MPa 2. According to the initial torsion strength, the minimum diameter of the shaft estimated Refer to table 15-3, take A0=112, then: Shaft end has 1 keyway, so increase shaft diameter by 7% According to the table, the diameter of the standard axle hole is 50mm, so d=50 Figure 7-5 Schematic diagram of low-speed shaft (1) The minimum diameter of the output shaft is obviously the diameter d1 of the shaft where the coupling is mounted. In order to make the selected shaft diameter d1 match the coupling aperture, it is necessary to select the type of coupling.The calculated torque of the coupling Tca = KA×T, refer to the table, consider about stability, then take KA = 1.3,thus: According to the condition that the torque Tca of the coupling should be less than the nominal torque of the coupling, check the standard GB t4323-2002 or the design manual, choose LX4 type coupling. The aperture of the semi-coupling is 50mm, the hub hole length of fitness of the semi-coupling and the shaft is 112mm. Choose ordinary flat bond, A type bond, b×h = 14×9mm(GB T 1096-2003), length of bond L=100mm. (2) Initial selection of rolling bearing. Because the bearing is subject to both radial and axial forces, angular contact bearing is chosen. According to work requirements and d23 = 55mm, angular contact bearing 7212AC is selected from the bearing product catalog, its size: d×D×B = 60×110×22mm, so d34 = d78 = 60 mm. Positioning of bearing oil retaining ring. According to the manual, the positioning shaft shoulder height of type 7212AC bearing is h = 4.5mm, so d45 = 69mm (3) Take the diameter of the shaft section where the gear is mounted d67 = 63 mm;The width of the low-speed large gear hub is known as b4 = 80 mm,in order to make the end face of the oil retaining ring press the gear reliably, this shaft segment should be slightly shorter than the width of the hub, so l67 = 78mm. The left end of the gear is fixed by the shaft shoulder. The height of shaft shoulder h = (2~3)R,The diameter of the shaft d67 = 63 mm, so take h = 10 mm, then the diameter at the collar d56 = 83 mm, take l56=10mm. (4) Thickness of bearing end cover e=10, the thickness of the gasket Δt=2. According to the ease of mounting and dismounting of the bearing end cover, ensure that the outer end face of the bearing end cover has a certain distance from the end face of the coupling K=24, screw C1=22mm, C2=20mm, box seat wall thickness δ=8mm, then: (5) Assume the distance between low level main gear and inner box wall Δ 2 = 12.5 mm, the distance between high speed main gear and low speed pinion Δ 3 = 15 mm distance. Consider housing casting error, when determining the position of rolling bearing, should be from a distance Δ casing wall, assume Δ = 10 mm, then: At this point, the diameter and length of each section of the shaft have been preliminarily determined. Shaft section 1 2 3 4 5 6 7 Diameter 50 55 60 69 83 63 60 Length 112 59 44.5 57.5 10 78 46.5 3. Force analysis of the shaft Circumferential force on the low-speed big gear (d4 is the dividing circle diameter of the low-speed big gear) The radial force on a large low speed gear The axial force exerted on a large low-speed gear Refer to the manual with 7212AC angular contaction, know pressure center a=30.8mm (1)Calculate the supporting reaction of the shaft Horizontal support reaction Vertical support reaction (2) Calculate the bending moment of the shaft and draw the bending moment diagram The horizontal bending moment at section C The vertical bending moment at section C Draw the bending moment diagram of horizontal plane (fig.b) and vertical plane (fig.c) The resultant bending moment at section C (3) Make composite bending moment diagram (figure d) Make torque diagram (figure e) Figure 7-6 Diagram of force and bending moment of low speed shaft 4. Check the strength of the shaft Because the bending moment on the left side of C is large and the action has torque, the left side of C is the dangerous section Its bending section coefficient: Its torsion cross section coefficient: The maximum bending stress: Its shear stress: Check and calculate according to the strength of bending and torsion. For the shaft of one-way drive, torque is processed according to pulsating cycle. So the reduced coefficient =0.6, then the equivalent stress: Refer to the the table, get 45(tempering) treatment, tensile strength limitσB=640MPa,then the allowable bending stress of the axis[σ-1b]=60MPa, σca<[σ-1b], so the strength is good. Chapter 8 Rolling bearing life check 8.1 Bearing check on high speed shaft Bearing code d(mm) D(mm) B(mm) Cr(kN) C0r(kN) 7206AC 30 62 16 22 14.2 Adopt 7206AC angular contact ball bearing, inner diameter d=30mm, outer diameter D=62mm, width B=16mm, Basic dynamic load rating Cr=22kN,Rated static load C0r=14.2kN. Life expectancy is Lh=48000h. According to the horizontal and vertical bearing reaction calculated previously, we can calculate the resultant bearing reaction: Axial force Fae=435N According to the calculations, bearing 1 is "pressed", while bearing 2 is “relaxing”. Refer to the table, X1=0.41,Y1=0.87,X2=1,Y2=0 Refer to the table, ft=1,fp=1 Then, take the bigger one into Bearing life is sufficient. 8.2 Bearing check on the jack shaft Bearing code d(mm) D(mm) B(mm) Cr(kN) C0r(kN) 7207AC 35 72 17 29 19.2 Adopt 7207AC angular contact ball bearing, inner diameter d=35mm, outer diameter D=72mm, width B=17mm, Basic dynamic load ratingCr=29kN, Rated static load C0r=19.2kN Life expectancy is Lh=48000h. According to the horizontal and vertical bearing reaction calculated previously, we can calculate the resultant bearing reaction: Axial force Fae=775N According to the calculations, bearing 1 is "pressed", while bearing 2 is “relaxing”. Refer to the table, X1=0.41,Y1=0.87,X2=1,Y2=0 Refer to the table, ft=1,fp=1 Then, take the bigger one into Bearing life is sufficient. 8.3 Bearing check on the low speed shaft Bearring code d(mm) D(mm) B(mm) Cr(kN) C0r(kN) 7212AC 60 110 22 58.2 46.2 Adopt 7212AC angular contact ball bearing, inner diameter d=60mm, outer diameter D=110mm, width B=22mm, Basic dynamic load rating Cr=58.2kN,Rated static load C0r=46.2kN Life expectancy is Lh=48000h。 According to the horizontal and vertical bearing reaction calculated previously, we can calculate the resultant bearing reaction: Axial force Fae=1145N According to the calculations, bearing 1 is "pressed", while bearing 2 is “relaxing”. Refer to the table, X1=0.41,Y1=0.87,X2=1,Y2=0 Refer to the table, ft=1,fp=1 Then, take the bigger one into Bearing life is sufficient. Chapter 9 Key connection design calculation 9.1 Calculation check of coupling key connection The chosen type of key is A-type: 6×6(GB/T 1096-2003) Working length of key: l=L-b=40-6=34mm Contact height of the hub keyway: k=h/2=3mm According to the material of the coupling which is 45 and the stability of loading, we can get [σp]=120MPa, then it’s compression strength is It meets the strength requirement. 9.2 Calculation check of low speed pinion’s key connection The chosen type of key is A-type: 10×8(GB/T 1096-2003) Working length of key: l=L-b=70-10=60mm Contact height of the hub keyway: k=h/2=4mm According to the material of the low speed pinion which is 40Cr and the stability of loading, we can get [σp]=120MPa, then it’s compression strength is It meets the strength requirement. 9.3 Calculation check of high speed main gear’s key connection The chosen type of key is A-type: 10×8(GB/T 1096-2003) Working length of key: l=L-b=36-10=26mm Contact height of the hub keyway: k=h/2=4mm According to the material of the high speed main gear which is 45 and the stability of loading, we can get [σp]=120MPa, then it’s compression strength is It meets the strength requirement. 9.4 Calculation check of low speed main gear’s key connection The chosen type of key is A-type: 18×11(GB/T 1096-2003) Working length of key: l=L-b=63-18=45mm Contact height of the hub keyway: k=h/2=5.5mm According to the material of the low speed main gear which is 45 and the stability of loading, we can get [σp]=120MPa, then it’s compression strength is It meets the strength requirement. Chapter 10 Coupling selection 10.1 Coupling on the high speed shaft (1)Calculate the load on the coupling Refer to the table, the load coefficient of the coupling is KA=1.3 Then calculate the torque is Tc=KA×T=1.3×48.84=63.5N•m (2)Select the type of coupling Primary coupling model is LX3 elastic pin coupling (GB/ t4323-2002). Refer to the table, Nominal torque Tn=1250N•m, Allowable speed[n]=4700r/min, thus: Tc=63.5N•m<Tn=1250N•m n=960r/min<[n]=4700r/min Therefore, the coupling meets the requirements and is suitable. Refer to the table, the active end aperture of the coupling is38mm, shaft hole length is 82mm. The aperture of the driven end is 22mm, axis hole length is 52mm. 10.2 Coupling on the low speed shaft (1)Calculate the load on the coupling Refer to the table, the load coefficient of the coupling is KA=1.3 Then calculate the torque is Tc=KA×T=1.3×631.92=821.5N•m (2)Select the type of coupling Primary coupling model is LX3 elastic pin coupling (GB/ t4323-2002). Refer to the table, Nominal torque Tn=2500N•m, Allowable speed[n]=3870r/min, thus: Tc=821.5N•m<Tn=2500N•m n=69.82r/min<[n]=3870r/min Therefore, the coupling meets the requirements and is suitable. Refer to the table, the active end aperture of the coupling is 50mm, shaft hole length is 112mm. The aperture of the driven end is 42mm, axis hole length is 112mm. Chapter 11 Seal and lubricate the reducer 11.1 Selection of sealing In order to prevent the leakage of lubricant inside the box and the entry of external impurities into the box to affect the work of the box, between the parts that make up the box, such like the box cover and the box seat, the output of the overhanging shaft, the input shaft and the bearing cover, different types of sealing devices are required. For the joint surface without relative motion, commonly used sealant, oil resistant rubber gasket, etc. For the sealing of rotating parts such as overhanging shaft, different seals and structures should be considered according to their different motion speed and sealing requirements. In this design, because the relative speed of sealing interface is small, contact seal is adopted. The velocity between the input shaft and the bearing cover is V <3m/s, the velocity between the output shaft and the bearing cover is also V 1.2δ 12mm Distance between gear face and inner box wall △2 >δ 12.5mm Case cover and seat rib thickness m1、m m1≈0.85×δ1、m≈0.85×δ 8mm、8mm Outer diameter of high speed bearing end cap D1 D+(5~5.5)d3;D--bearing outer diameter 102mm Outer diameter of end cover of jack bearing D2 D+(5~5.5)d3;D--bearing outer diameter 112mm Outer diameter of low speed bearing end cap D3 D+(5~5.5)d3;D--bearing outer diameter 150mm Chapter 14 Drawing of structure analysis of reduce 14.1 Drawing of assembly 14.2 Housing 14.3 Drawing of gears High speed main gear Low speed pinion 14.4 Drawing of shafts High speed shaft Jack speed shaft Low speed shaft Chapter 15 Conclusion 15.1 Summary After hard work, I finally finished the mechanical design course. In the process of this operation, I encountered many difficulties. The repeated calculation and the design scheme modification exposed my lack of knowledge and experience in this aspect in the early stage, and I learned the lesson of blind calculation. As for drawing assembly drawing and part drawing, due to sufficient preliminary calculation, the whole process took less than three days. During this period, I also received a lot of help from my classmates and teachers. Here I would like to express my most sincere thanks to them. Although the time of this assignment is long and the process is tortuous, for me, the biggest gain is the method and ability. The ability to analyze and solve problems. In the whole process, I found that what students like us most lack is experience, no perceptual knowledge, empty theoretical knowledge, and some things may be out of touch with the reality. In general, I think doing this type of homework is of great help to us. It requires us to systematically connect the relevant knowledge we have learned, expose our shortcomings and make improvements. Sometimes a person's power is limited, the wisdom of all people, I believe our work will be more perfect! Due to the limited time, there are many shortcomings in this design, such as the huge box structure and large weight. The gear calculation is not accurate enough and other defects, I believe, through this practice, I can avoid a lot of unnecessary work in the future design, have the ability to design a more compact structure, transmission more stable and accurate equipment. 15.2 Job description of team members Team leader: 陈旭颖 Finish the designation and calculation of transmission device, motor, dynamic parameters, rolling bearings, keys and couplings. Draw the CAD of assembly drawing and reducer housing drawing. Write the design specification. Team members: 方琢 Finish the designation and calculation of high speed gear, jack gear and low speed gear. Draw the CAD of high speed gear, jack gear and low speed gear. 李成雍 Finish the designation and calculation of high speed shaft, intermediate shaft and low speed shaft. Draw the CAD of high speed shaft, intermediate shaft and low speed shaft. Reference [1] Kunwoo Lee, Principles of CAD/CAM/CAE Systems, Pearson, Jan., 1999. [2] Chris McMahon and Jimmie Browne, CAD/CAM Principles, Practices and Manufacturing Management (2/e), Prentice Hall, July, 1999. [3] Andrew D. Dimarogonas, Machine Design - A CAD Approach, John Wiley & Sons, Dec. 2000. [4] E. Paul Degarmo, J. T. Black and Ronald A. Kohser, Materials and Processes in Manufacturing (11th edition), Wiley, Dec. 2011. [5] 李育锡. 机械设计课程设计(第⼆版). 北京:⾼等教育出版社. in Chinese [6] 陈秀宁. 机械设计课程设计(第四版). 杭州:浙江⼤学出版社. 2010. in Chinese [7] 吴宗泽. 机械设计课程设计. 北京:⾼等教育出版社. 2007. in Chinese [8] 闻邦椿. 机械设计⼿册 1-6 卷(第五版). 北京:机械⼯业出版社. 2011. in Chinese Attachment 1.The drawing of assembly; 2.The drawing of reducer housing; 3.The drawing of pinion; 4.The drawing of main gear; 5.The drawing of low speed shaft; 6.The drawing of jack shaft; 7.The drawing of high speed shaft;
Version 1.7 ----------- - ADD: Delphi/CBuilder 10.2 Tokyo now supported. - ADD: Delphi/CBuilder 10.1 Berlin now supported. - ADD: Delphi/CBuilder 10 Seattle now supported. - ADD: Delphi/CBuilder XE8 now supported. - ADD: Delphi/CBuilder XE7 now supported. - ADD: Delphi/CBuilder XE6 now supported. - ADD: Delphi/CBuilder XE5 now supported. - ADD: Delphi/CBuilder XE4 now supported. - ADD: Delphi/CBuilder XE3 now supported. - ADD: Delphi/CBuilder XE2 now supported. - ADD: Delphi/CBuilder XE now supported. - ADD: Delphi/CBuilder 2010 now supported. - ADD: Delphi/CBuilder 2009 now supported. - ADD: New demo project FlexCADImport. - FIX: The height of the TFlexRegularPolygon object incorrectly changes with its rotation. - FIX: Added division by zero protect in method TFlexControl.MovePathSegment. - FIX: The background beyond docuemnt wasn't filled when TFlexPanel.DocClipping=True. - FIX: In "Windows ClearType" font rendering mode (OS Windows mode) the "garbage" pixels can appear from the right and from the bottom sides of the painted rectangle of the TFlexText object. - FIX: The result rectangle incorrectly calculated in the TFlexText.GetRefreshRect method. - FIX: Added FPaintCache.rcPaint cleanup in the TFlexPanel.WMPaint method. Now it is possible to define is the drawing take place via WMPaint or via the PaintTo direct call (if rcPaint contain non-empty rectangle then WMPaint in progress). - FIX: The TFlexPanel.FPaintCache field moved in the protected class section. Added rcPaint field in FPaintCache that represents drawing rectangle. - ADD: In the text prcise mode (TFlexText.Precise=True) takes into account the rotation angle (TFlexText.Angle). - FIX: Removed FG_NEWTEXTROTATE directive (the TFlexText Precise mode should be used instead). - FIX: The TFlexRegularPolygon object clones incorrectly drawed in case when TFlexRegularPolygon have alternative brush (gradient, texture). - ADD: Add TFlexPanel.InvalidateControl virtual method which calls from TFle
Soft computing and nature-inspired computing both play a significant role in developing a better understanding to machine learning. When studied together, they can offer new perspectives on the learning process of machines. The Handbook of Research on Soft Computing and Nature-Inspired Algorithms is an essential source for the latest scholarly research on applications of nature-inspired computing and soft computational systems. Featuring comprehensive coverage on a range of topics and perspectives such as swarm intelligence, speech recognition, and electromagnetic problem solving, this publication is ideally designed for students, researchers, scholars, professionals, and practitioners seeking current research on the advanced workings of intelligence in computing systems. Chapter 1 ApplicationofNatured-InspiredAlgorithmsfortheSolutionofComplexElectromagnetic Problems................................................................................................................................................. 1 Massimo Donelli, University of Trento, Italy Inthelastdecadenature-inspiredOptimizerssuchasgeneticalgorithms(GAs),particleswarm(PSO), antcolony(ACO),honeybees(HB),bacteriafeeding(BFO),firefly(FF),batalgorithm(BTO),invasive weed(IWO)andothersalgorithms,hasbeensuccessfullyadoptedasapowerfuloptimizationtools inseveralareasofappliedengineering,andinparticularforthesolutionofcomplexelectromagnetic problems.Thischapterisaimedatpresentinganoverviewofnatureinspiredoptimizationalgorithms (NIOs)asappliedtothesolutionofcomplexelectromagneticproblemsstartingfromthewell-known geneticalgorithms(GAs)uptorecentcollaborativealgorithmsbasedonsmartswarmsandinspired byswarmofinsects,birdsorflockoffishes.Thefocusofthischapterisontheuseofdifferentkind ofnaturedinspiredoptimizationalgorithmsforthesolutionofcomplexproblems,inparticulartypical microwavedesignproblems,inparticularthedesignandmicrostripantennastructures,thecalibration ofmicrowavesystemsandotherinterestingpracticalapplications.Startingfromadetailedclassification andanalysisofthemostusednaturedinspiredoptimizers(NIOs)thischapterdescribesthenotonly thestructuresofeachNIObutalsothestochasticoperatorsandthephilosophyresponsibleforthe correctevolutionoftheoptimizationprocess.Theoreticaldiscussionsconcernedconvergenceissues, parameterssensitivityanalysisandcomputationalburdenestimationarereportedaswell.Successively abriefreviewonhowdifferentresearchgroupshaveappliedorcustomizeddifferentNIOsapproaches forthesolutionofcomplexpracticalelectromagneticproblemrangingfromindustrialuptobiomedical applications.ItisworthnoticedthatthedevelopmentofCADtoolsbasedonNIOscouldprovidethe engineersanddesignerswithpowerfultoolsthatcanbethesolutiontoreducethetimetomarketof specific devices, (such as modern mobile phones, tablets and other portable devices) and keep the commercialpredominance:sincetheydonotrequireexpertengineersandtheycanstronglyreducethe computationaltimetypicalofthestandardtrialerrorsmethodologies.Suchusefulautomaticdesigntools basedonNIOshavebeentheobjectofresearchsincesomedecadesandtheimportanceofthissubject iswidelyrecognized.Inordertoapplyanaturedinspiredalgorithm,theproblemisusuallyrecastas aglobaloptimizationproblem.Formulatedinsuchaway,theproblemcanbeefficientlyhandledby naturedinspiredoptimizerbydefiningasuitablecostfunction(singleormulti-objective)thatrepresent thedistancebetweentherequirementsandtheobtainedtrialsolution.Thedeviceunderdevelopment  canbeanalyzedwithclassicalnumericalmethodologiessuchasFEM,FDTD,andMoM.Asacommon feature,theseenvironmentsusuallyintegrateanoptimizerandacommercialnumericalsimulator.The chapterendswithopenproblemsanddiscussiononfutureapplications. Chapter 2 AComprehensiveLiteratureReviewonNature-InspiredSoftComputingandAlgorithms:Tabular andGraphicalAnalyses........................................................................................................................ 34 Bilal Ervural, Istanbul Technical University, Turkey Beyzanur Cayir Ervural, Istanbul Technical University, Turkey Cengiz Kahraman, Istanbul Technical University, Turkey SoftComputingtechniquesarecapableofidentifyinguncertaintyindata,determiningimprecisionof knowledge,andanalyzingill-definedcomplexproblems.Thenatureofrealworldproblemsisgenerally complexandtheircommoncharacteristicisuncertaintyowingtothemultidimensionalstructure.Analytical modelsareinsufficientinmanagingallcomplexitytosatisfythedecisionmakers’expectations.Under thisviewpoint,softcomputingprovidessignificantflexibilityandsolutionadvantages.Inthischapter, firstly,themajorsoftcomputingmethodsareclassifiedandsummarized.Thenacomprehensivereviewof eightnatureinspired–softcomputingalgorithmswhicharegeneticalgorithm,particleswarmalgorithm, antcolonyalgorithms,artificialbeecolony,fireflyoptimization,batalgorithm,cuckooalgorithm,and greywolfoptimizeralgorithmarepresentedandanalyzedundersomedeterminedsubjectheadings (classificationtopics)inadetailedway.Thesurveyfindingsaresupportedwithcharts,bargraphsand tablestobemoreunderstandable. Chapter 3 SwarmIntelligenceforElectromagneticProblemSolving................................................................... 69 Luciano Mescia, Politecnico di Bari, Italy Pietro Bia, EmTeSys Srl, Italy Diego Caratelli, The Antenna Company, The Netherlands & Tomsk Polytechnic University, Russia Johan Gielis, University of Antwerp, Belgium ThechapterwilldescribethepotentialoftheswarmintelligenceandinparticularquantumPSO-based algorithm,tosolvecomplicatedelectromagneticproblems.Thistaskisaccomplishedthroughaddressing the design and analysis challenges of some key real-world problems. A detailed definition of the conventionalPSOanditsquantum-inspiredversionarepresentedandcomparedintermsofaccuracyand computationalburden.Sometheoreticaldiscussionsconcerningtheconvergenceissuesandasensitivity analysisontheparametersinfluencingthestochasticprocessarereported. Chapter 4 ParameterSettingsinParticleSwarmOptimization........................................................................... 101 Snehal Mohan Kamalapur, K. K. Wagh Institute of Engineering Education and Research, India Varsha Patil, Matoshree College of Engineering and Research Center, India Theissueofparametersettingofanalgorithmisoneofthemostpromisingareasofresearch.Particle SwarmOptimization(PSO)ispopulationbasedmethod.TheperformanceofPSOissensitivetothe parametersettings.Intheliteratureofevolutionarycomputationtherearetwotypesofparametersettings  - parametertuningandparametercontrol.Staticparametertuningmayleadtopoorperformanceas optimalvaluesofparametersmaybedifferentatdifferentstagesofrun.Thisleadstoparametercontrol. Thischapterhastwo-foldobjectivestoprovideacomprehensivediscussiononparametersettingsandon parametersettingsofPSO.Theobjectivesaretostudyparametertuningandcontrol,togettheinsight ofPSOandimpactofparameterssettingsforparticlesofPSO. Chapter 5 ASurveyofComputationalIntelligenceAlgorithmsandTheirApplications...................................133 Hadj Ahmed Bouarara, Dr. Tahar Moulay University of Saida, Algeria Thischaptersubscribesintheframeworkofananalyticalstudyaboutthecomputationalintelligence algorithms.Thesealgorithmsarenumerousandcanbeclassifiedintwogreatfamilies:evolutionary algorithms(geneticalgorithms,geneticprogramming,evolutionarystrategy,differentialevolutionary, paddyfieldalgorithm)andswarmoptimizationalgorithms(particleswarmoptimisationPSO,antcolony optimization(ACO),bacteriaforagingoptimisation,wolfcolonyalgorithm,fireworksalgorithm,bat algorithm,cockroachescolonyalgorithm,socialspidersalgorithm,cuckoosearchalgorithm,waspswarm optimisation,mosquitooptimisationalgorithm).Wehavedetailedeachalgorithmfollowingastructured organization(theoriginofthealgorithm,theinspirationsource,thesummary,andthegeneralprocess). Thispaperisthefruitofmanyyearsofresearchintheformofsynthesiswhichgroupsthecontributions proposedbyvariousresearchersinthisfield.Itcanbethestartingpointforthedesigningandmodelling newalgorithmsorimprovingexistingalgorithms. Chapter 6 OptimizationofProcessParametersUsingSoftComputingTechniques:ACaseWithWire ElectricalDischargeMachining..........................................................................................................177 Supriyo Roy, Birla Institute of Technology, India Kaushik Kumar, Birla Institute of Technology, India J. Paulo Davim, University of Aveiro, Portugal MachiningofhardmetalsandalloysusingConventionalmachininginvolvesincreaseddemandof time,energyandcost.Itcausestoolwearresultinginlossofqualityoftheproduct.Non-conventional machining,ontheotherhandproducesproductwithminimumtimeandatdesiredlevelofaccuracy.In thepresentstudy,EN19steelwasmachinedusingCNCWireElectricaldischargemachiningwithpredefinedprocessparameters.MaterialRemovalRateandSurfaceroughnesswereconsideredasresponses forthisstudy.Thepresentoptimizationproblemissingleandaswellasmulti-response.Consideringthe complexitiesofthispresentproblem,experimentaldataweregeneratedandtheresultswereanalyzed byusingTaguchi,GreyRelationalAnalysisandWeightedPrincipalComponentAnalysisundersoft computingapproach.Responsesvarianceswiththevariationofprocessparameterswerethoroughly studiedandanalyzed;also‘bestoptimalvalues’wereidentified.Theresultshowsanimprovementin responsesfrommeantooptimalvaluesofprocessparameters.  Chapter 7 AugmentedLagrangeHopfieldNetworkforCombinedEconomicandEmissionDispatchwith FuelConstraint.................................................................................................................................... 221 Vo Ngoc Dieu, Ho Chi Minh City University of Technology, Vietnam Tran The Tung, Ho Chi Minh City University of Technology, Vietnam This chapter proposes an augmented Lagrange Hopfield network (ALHN) for solving combined economicandemissiondispatch(CEED)problemwithfuelconstraint.IntheproposedALHNmethod, theaugmentedLagrangefunctionisdirectlyusedastheenergyfunctionofcontinuousHopfieldneural network(HNN),thusthismethodcanproperlyhandleconstraintsbybothaugmentedLagrangefunction andsigmoidfunctionofcontinuousneuronsintheHNN.Fordealingwiththebi-objectiveeconomic dispatchproblem,theslopeofsigmoidfunctioninHNNisadjustedtofindthePareto-optimalfrontand thenthebestcompromisesolutionfortheproblemwillbedeterminedbyfuzzy-basedmechanism.The proposedmethodhasbeentestedonmanycasesandtheobtainedresultsarecomparedtothosefrom othermethodsavailabletheliterature.Thetestresultshaveshownthattheproposedmethodcanfind goodsolutionscomparedtotheothersforthetestedcases.Therefore,theproposedALHNcouldbea favourableimplementationforsolvingtheCEEDproblemwithfuelconstraint. Chapter 8 SpeakerRecognitionWithNormalandTelephonicAssameseSpeechUsingI-Vectorand Learning-BasedClassifier................................................................................................................... 256 Mridusmita Sharma, Gauhati University, India Rituraj Kaushik, Tezpur University, India Kandarpa Kumar Sarma, Gauhati University, India Speaker recognition is the task of identifying a person by his/her unique identification features or behaviouralcharacteristicsthatareincludedinthespeechutteredbytheperson.Speakerrecognition dealswiththeidentityofthespeaker.Itisabiometricmodalitywhichusesthefeaturesofthespeaker thatisinfluencedbyone’sindividualbehaviouraswellasthecharacteristicsofthevocalcord.Theissue becomesmorecomplexwhenregionallanguagesareconsidered.Here,theauthorsreportthedesignof aspeakerrecognitionsystemusingnormalandtelephonicAssamesespeechfortheircasestudy.Intheir work,theauthorshaveimplementedi-vectorsasfeaturestogenerateanoptimalfeaturesetandhaveused theFeedForwardNeuralNetworkfortherecognitionpurposewhichgivesafairlyhighrecognitionrate. Chapter 9 ANewSVMMethodforRecognizingPolarityofSentimentsinTwitter.......................................... 281 Sanjiban Sekhar Roy, VIT University, India Marenglen Biba, University of New York – Tirana, Albania Rohan Kumar, VIT University, India Rahul Kumar, VIT University, India Pijush Samui, NIT Patna, India Onlinesocialnetworkingplatforms,suchasWeblogs,microblogs,andsocialnetworksareintensively beingutilizeddailytoexpressindividual’sthinking.Thispermitsscientiststocollecthugeamountsof dataandextractsignificantknowledgeregardingthesentimentsofalargenumberofpeopleatascale thatwasessentiallyimpracticalacoupleofyearsback.Therefore,thesedays,sentimentanalysishasthe potentialtolearnsentimentstowardspersons,objectandoccasions.Twitterhasincreasinglybecome  a significantsocialnetworkingplatformwherepeoplepostmessagesofupto140charactersknownas ‘Tweets’.Tweetshavebecomethepreferredmediumforthemarketingsectorasuserscaninstantlyindicate customersuccessorindicatepublicrelationsdisasterfarmorequicklythanawebpageortraditional mediadoes.Inthispaper,wehaveanalyzedtwitterdataandhavepredictedpositiveandnegativetweets withhighaccuracyrateusingsupportvectormachine(SVM). Chapter 10 AutomaticGenerationControlofMulti-AreaInterconnectedPowerSystemsUsingHybrid EvolutionaryAlgorithm...................................................................................................................... 292 Omveer Singh, Maharishi Markandeshwar University, India Anewtechniqueofevaluatingoptimalgainsettingsforfullstatefeedbackcontrollersforautomatic generationcontrol(AGC)problembasedonahybridevolutionaryalgorithms(EA)i.e.geneticalgorithm (GA)-simulatedannealing(SA)isproposedinthischapter.ThehybridEAalgorithmcantakedynamic curveperformanceashardconstraintswhicharepreciselyfollowedinthesolutions.Thisisincontrast tothemodernandsinglehybridevolutionarytechniquewheretheseconstraintsaretreatedassoft/hard constraints.Thistechniquehasbeeninvestigatedonanumberofcasestudiesandgivessatisfactorysolutions. Thistechniqueisalsocomparedwithlinearquadraticregulator(LQR)andGAbasedproportionalintegral (PI)controllers.Thisprovestobeagoodalternativeforoptimalcontroller’sdesign.Thistechniquecan beeasilyenhancedtoincludemorespecificationsviz.settlingtime,risetime,stabilityconstraints,etc. Chapter 11 MathematicalOptimizationbyUsingParticleSwarmOptimization,GeneticAlgorithm,and DifferentialEvolutionandItsSimilarities.......................................................................................... 325 Shailendra Aote, Ramdeobaba College of Engineering and Management, India Mukesh M. Raghuwanshi, Yeshwantrao Chavan College of Engineering, India Tosolvetheproblemsofoptimization,variousmethodsareprovidedindifferentdomain.Evolutionary computing(EC)isoneofthemethodstosolvetheseproblems.MostlyusedECtechniquesareavailable likeParticleSwarmOptimization(PSO),GeneticAlgorithm(GA)andDifferentialEvolution(DE). Thesetechniqueshavedifferentworkingstructurebuttheinnerworkingstructureissame.Different namesandformulaearegivenfordifferenttaskbutultimatelyalldothesame.Herewetriedtofindout thesimilaritiesamongthesetechniquesandgivetheworkingstructureineachstep.Allthestepsare providedwithproperexampleandcodewritteninMATLAB,forbetterunderstanding.Herewestarted ourdiscussionwithintroductionaboutoptimizationandsolutiontooptimizationproblemsbyPSO,GA andDE.Finally,wehavegivenbriefcomparisonofthese. Chapter 12 GA_SVM:AClassificationSystemforDiagnosisofDiabetes.......................................................... 359 Dilip Kumar Choubey, Birla Institute of Technology Mesra, India Sanchita Paul, Birla Institute of Technology Mesra, India Themodernsocietyispronetomanylife-threateningdiseaseswhichifdiagnosisearlycanbeeasily controlled.Theimplementationofadiseasediagnosticsystemhasgainedpopularityovertheyears.The mainaimofthisresearchistoprovideabetterdiagnosisofdiabetes.Therearealreadyseveralexisting methods,whichhavebeenimplementedforthediagnosisofdiabetes.Inthismanuscript,firstly,Polynomial Kernel,RBFKernel,SigmoidFunctionKernel,LinearKernelSVMusedfortheclassificationofPIDD.  SecondlyGAusedasanAttributeselectionmethodandthenusedPolynomialKernel,RBFKernel, SigmoidFunctionKernel,LinearKernelSVMonthatselectedattributesofPIDDforclassification.So, herecomparedtheresultswithandwithoutGAinPIDD,andLinearKernelprovedbetteramongallof thenotedaboveclassificationmethods.ItdirectlyseemsinthepaperthatGAisremovinginsignificant features,reducingthecostandcomputationtimeandimprovingtheaccuracy,ROCofclassification. Theproposedmethodcanbealsousedforotherkindsofmedicaldiseases. Chapter 13 TheInsectsofNature-InspiredComputationalIntelligence............................................................... 398 Sweta Srivastava, B.I.T. Mesra, India Sudip Kumar Sahana, B.I.T. Mesra, India Thedesirablemeritsoftheintelligentcomputationalalgorithmsandtheinitialsuccessinmanydomains haveencouragedresearcherstoworktowardstheadvancementofthesetechniques.Amajorplunge inalgorithmicdevelopmenttosolvetheincreasinglycomplexproblemsturnedoutasbreakthrough towardsthedevelopmentofcomputationalintelligence(CI)techniques.Natureprovedtobeoneofthe greatestsourcesofinspirationfortheseintelligentalgorithms.Inthischapter,computationalintelligence techniquesinspiredbyinsectsarediscussed.Thesetechniquesmakeuseoftheskillsofintelligent agentbymimickinginsectbehaviorsuitablefortherequiredproblem.Thediversitiesinthebehaviorof theinsectfamiliesandsimilaritiesamongthemthatareusedbyresearchersforgeneratingintelligent techniquesarealsodiscussedinthischapter. Chapter 14 Bio-InspiredComputationalIntelligenceandItsApplicationtoSoftwareTesting............................ 429 Abhishek Pandey, UPES Dehradun, India Soumya Banerjee, BIT Mesra, India Bioinspiredalgorithmsarecomputationalprocedureinspiredbytheevolutionaryprocessofnature andswarmintelligencetosolvecomplexengineeringproblems.Intherecenttimesithasgainedmuch popularityintermsofapplicationstodiverseengineeringdisciplines.Nowadaysbioinspiredalgorithms arealsoappliedtooptimizethesoftwaretestingprocess.Inthischapterauthorswilldiscusssomeof thepopularbioinspiredalgorithmsandalsogivestheframeworkofapplicationofthesealgorithmsfor softwaretestingproblemssuchastestcasegeneration,testcaseselection,testcaseprioritization,test caseminimization.Bioinspiredcomputationalalgorithmsincludesgeneticalgorithm(GA),genetic programming (GP), evolutionary strategies (ES), evolutionary programming (EP) and differential evolution(DE)intheevolutionaryalgorithmscategoryandAntcolonyoptimization(ACO),Particle swarmoptimization(PSO),ArtificialBeeColony(ABC),Fireflyalgorithm(FA),Cuckoosearch(CS), Batalgorithm(BA)etc.intheSwarmIntelligencecategory(SI).  Chapter 15 Quantum-InspiredComputationalIntelligenceforEconomicEmissionDispatchProblem.............. 445 Fahad Parvez Mahdi, Universiti Teknologi Petronas, Malaysia Pandian Vasant, Universiti Teknologi Petronas, Malaysia Vish Kallimani, Universiti Teknologi Petronas, Malaysia M. Abdullah-Al-Wadud, King Saud University, Saudi Arabia Junzo Watada, Universiti Teknologi Petronas, Malaysia Economicemissiondispatch(EED)problemsareoneofthemostcrucialproblemsinpowersystems. Growingenergydemand,limitedreservesoffossilfuelandglobalwarmingmakethistopicintothe centerofdiscussionandresearch.Inthischapter,wewilldiscusstheuseandscopeofdifferentquantum inspiredcomputationalintelligence(QCI)methodsforsolvingEEDproblems.Wewillevaluateeach previouslyusedQCImethodsforEEDproblemanddiscusstheirsuperiorityandcredibilityagainst othermethods.WewillalsodiscussthepotentialityofusingotherquantuminspiredCImethodslike quantumbatalgorithm(QBA),quantumcuckoosearch(QCS),andquantumteachingandlearningbased optimization(QTLBO)techniqueforfurtherdevelopmentinthisarea. Chapter 16 IntelligentExpertSystemtoOptimizetheQuartzCrystalMicrobalance(QCM)Characterization Test:IntelligentSystemtoOptimizetheQCMCharacterizationTest............................................... 469 Jose Luis Calvo-Rolle, University of A Coruña, Spain José Luis Casteleiro-Roca, University of A Coruña, Spain María del Carmen Meizoso-López, University of A Coruña, Spain Andrés José Piñón-Pazos, University of A Coruña, Spain Juan Albino Mendez-Perez, Universidad de La Laguna, Spain Thischapterdescribesanapproachtoreducesignificantlythetimeinthefrequencysweeptestofa QuartzCrystalMicrobalance(QCM)characterizationmethodbasedontheresonanceprincipleofpassive components.Onthistest,thespenttimewaslarge,becauseitwasnecessarycarryoutabigfrequency sweepduetothefactthattheresonancefrequencywasunknown.Moreover,thisfrequencysweephas greatstepsandconsequentlylowaccuracy.Then,itwasnecessarytoreducethesweepsanditssteps graduallywiththeaimtoincreasetheaccuracyandtherebybeingabletofindtheexactfrequency.An intelligentexpertsystemwascreatedasasolutiontothedisadvantagedescribedofthemethod.This modelprovidesamuchsmallerfrequencyrangethantheinitiallyemployedwiththeoriginalproposal. Thisfrequencyrangedependsofthecircuitcomponentsofthemethod.Then,thankstothenewapproach oftheQCMcharacterizationisachievedbetteraccuracyandthetesttimeisreducedsignificantly. Chapter 17 OptimizationThroughNature-InspiredSoft-ComputingandAlgorithmonECGProcess................ 489 Goutam Kumar Bose, Haldia Institute of Technology, India Pritam Pain, Haldia Institute of Technology, India Inthepresentresearchworkselectionofsignificantmachiningparametersdependingonnature-inspired algorithmisprepared,duringmachiningalumina-aluminuminterpenetratingphasecompositesthrough electrochemical grinding process. Here during experimentation control parameters like electrolyte concentration(C),voltage(V),depthofcut(D)andelectrolyteflowrate(F)areconsidered.Theresponse dataareinitiallytrainedandtestedapplyingArtificialNeuralNetwork.Theparadoxicalresponseslike  highermaterialremovalrate(MRR),lowersurfaceroughness(Ra),lowerovercut(OC)andlowercutting force(Fc)areaccomplishedindividuallybyemployingCuckooSearchAlgorithm.Amultiresponse optimizationforalltheresponseparametersiscompiledprimarilybyusingGeneticalgorithm.Finally, inordertoachieveasinglesetofparametriccombinationforalltheoutputssimultaneouslyfuzzy basedGreyRelationalAnalysistechniqueisadopted.Thesenature-drivensoftcomputingtechniques corroborateswellduringtheparametricoptimizationofECGprocess. Chapter 18 AnOverviewoftheLastAdvancesandApplicationsofArtificialBeeColonyAlgorithm.............. 520 Airam Expósito Márquez, University of La Laguna, Spain Christopher Expósito-Izquierdo, University of La Laguna, Spain SwarmIntelligenceisdefinedascollectivebehaviorofdecentralizedandself-organizedsystemsofa naturalorartificialnature.Inthelastyearsandtoday,SwarmIntelligencehasproventobeabranchof ArtificialIntelligencethatisabletosolvingefficientlycomplexoptimizationproblems.SomeofwellknownexamplesofSwarmIntelligenceinnaturalsystemsreportedintheliteraturearecolonyofsocial insectssuchasbeesandants,birdflocks,fishschools,etc.Inthisrespect,ArtificialBeeColonyAlgorithm isanatureinspiredmetaheuristic,whichimitatesthehoneybeeforagingbehaviourthatproducesan intelligentsocialbehaviour.ABChasbeenusedsuccessfullytosolveawidevarietyofdiscreteand continuousoptimizationproblems.InordertofurtherenhancethestructureofArtificialBeeColony, thereareavarietyofworksthathavemodifiedandhybridizedtoothertechniquesthestandardversion ofABC.Thisworkpresentsareviewpaperwithasurveyofthemodifications,variantsandapplications oftheArtificialBeeColonyAlgorithm. Chapter 19 ASurveyoftheCuckooSearchandItsApplicationsinReal-WorldOptimizationProblems........... 541 Christopher Expósito-Izquierdo, University of La Laguna, Spain Airam Expósito-Márquez, University of La Laguna, Spain ThechapterathandseekstoprovideageneralsurveyoftheCuckooSearchAlgorithmanditsmost highlightedvariants.TheCuckooSearchAlgorithmisarelativelyrecentnature-inspiredpopulationbasedmeta-heuristicalgorithmthatisbaseduponthelifestyle,egglaying,andbreedingstrategyof somespeciesofcuckoos.Inthiscase,theLévyflightisusedtomovethecuckooswithinthesearch spaceoftheoptimizationproblemtosolveandobtainasuitablebalancebetweendiversificationand intensification.Asdiscussedinthischapter,theCuckooSearchAlgorithmhasbeensuccessfullyapplied toawiderangeofheterogeneousoptimizationproblemsfoundinpracticalapplicationsoverthelast fewyears.Someofthereasonsofitsrelevancearethereducednumberofparameterstoconfigureand itseaseofimplementation.
Contents Module Overview 1 Lesson 1: Memory 3 Lesson 2: I/O 73 Lesson 3: CPU 111 Module 3: Troubleshooting Server Performance Module Overview Troubleshooting server performance-based support calls requires product knowledge, good communication skills, and a proven troubleshooting methodology. In this module we will discuss Microsoft® SQL Server™ interaction with the operating system and methodology of troubleshooting server-based problems. At the end of this module, you will be able to:  Define the common terms associated the memory, I/O, and CPU subsystems.  Describe how SQL Server leverages the Microsoft Windows® operating system facilities including memory, I/O, and threading.  Define common SQL Server memory, I/O, and processor terms.  Generate a hypothesis based on performance counters captured by System Monitor.  For each hypothesis generated, identify at least two other non-System Monitor pieces of information that would help to confirm or reject your hypothesis.  Identify at least five counters for each subsystem that are key to understanding the performance of that subsystem.  Identify three common myths associated with the memory, I/O, or CPU subsystems. Lesson 1: Memory What You Will Learn After completing this lesson, you will be able to:  Define common terms used when describing memory.  Give examples of each memory concept and how it applies to SQL Server.  Describe how SQL Server user and manages its memory.  List the primary configuration options that affect memory.  Describe how configuration options affect memory usage.  Describe the effect on the I/O subsystem when memory runs low.  List at least two memory myths and why they are not true. Recommended Reading  SQL Server 7.0 Performance Tuning Technical Reference, Microsoft Press  Windows 2000 Resource Kit companion CD-ROM documentation. Chapter 15: Overview of Performance Monitoring  Inside Microsoft Windows 2000, Third Edition, David A. Solomon and Mark E. Russinovich  Windows 2000 Server Operations Guide, Storage, File Systems, and Printing; Chapters: Evaluating Memory and Cache Usage  Advanced Windows, 4th Edition, Jeffrey Richter, Microsoft Press Related Web Sites  http://ntperformance/ Memory Definitions Memory Definitions Before we look at how SQL Server uses and manages its memory, we need to ensure a full understanding of the more common memory related terms. The following definitions will help you understand how SQL Server interacts with the operating system when allocating and using memory. Virtual Address Space A set of memory addresses that are mapped to physical memory addresses by the system. In a 32-bit operation system, there is normally a linear array of 2^32 addresses representing 4,294,967,269 byte addresses. Physical Memory A series of physical locations, with unique addresses, that can be used to store instructions or data. AWE – Address Windowing Extensions A 32-bit process is normally limited to addressing 2 gigabytes (GB) of memory, or 3 GB if the system was booted using the /3G boot switch even if there is more physical memory available. By leveraging the Address Windowing Extensions API, an application can create a fixed-size window into the additional physical memory. This allows a process to access any portion of the physical memory by mapping it into the applications window. When used in combination with Intel’s Physical Addressing Extensions (PAE) on Windows 2000, an AWE enabled application can support up to 64 GB of memory Reserved Memory Pages in a processes address space are free, reserved or committed. Reserving memory address space is a way to reserve a range of virtual addresses for later use. If you attempt to access a reserved address that has not yet been committed (backed by memory or disk) you will cause an access violation. Committed Memory Committed pages are those pages that when accessed in the end translate to pages in memory. Those pages may however have to be faulted in from a page file or memory mapped file. Backing Store Backing store is the physical representation of a memory address. Page Fault (Soft/Hard) A reference to an invalid page (a page that is not in your working set) is referred to as a page fault. Assuming the page reference does not result in an access violation, a page fault can be either hard or soft. A hard page fault results in a read from disk, either a page file or memory-mapped file. A soft page fault is resolved from one of the modified, standby, free or zero page transition lists. Paging is represented by a number of counters including page faults/sec, page input/sec and page output/sec. Page faults/sec include soft and hard page faults where as the page input/output counters represent hard page faults. Unfortunately, all of these counters include file system cache activity. For more information, see also…Inside Windows 2000,Third Edition, pp. 443-451. Private Bytes Private non-shared committed address space Working Set The subset of processes virtual pages that is resident in physical memory. For more information, see also… Inside Windows 2000,Third Edition, p. 455. System Working Set Like a process, the system has a working set. Five different types of pages represent the system’s working set: system cache; paged pool; pageable code and data in the kernel; page-able code and data in device drivers; and system mapped views. The system working set is represented by the counter Memory: cache bytes. System working set paging activity can be viewed by monitoring the Memory: Cache Faults/sec counter. For more information, see also… Inside Windows 2000,Third Edition, p. 463. System Cache The Windows 2000 cache manager provides data caching for both local and network file system drivers. By caching virtual blocks, the cache manager can reduce disk I/O and provide intelligent read ahead. Represented by Memory:Cache Resident bytes. For more information, see also… Inside Windows 2000,Third Edition, pp. 654-659. Non Paged Pool Range of addresses guaranteed to be resident in physical memory. As such, non-paged pool can be accessed at any time without incurring a page fault. Because device drivers operate at DPC/dispatch level (covered in lesson 2), and page faults are not allowed at this level or above, most device drivers use non-paged pool to assure that they do not incur a page fault. Represented by Memory: Pool Nonpaged Bytes, typically between 3-30 megabytes (MB) in size. Note The pool is, in effect, a common area of memory shared by all processes. One of the most common uses of non-paged pool is the storage of object handles. For more information regarding “maximums,” see also… Inside Windows 2000,Third Edition, pp. 403-404 Paged Pool Range of address that can be paged in and out of physical memory. Typically used by drivers who need memory but do not need to access that memory from DPC/dispatch of above interrupt level. Represented by Memory: Pool Paged Bytes and Memory:Pool Paged Resident Bytes. Typically between 10-30MB + size of Registry. For more information regarding “limits,” see also… Inside Windows 2000,Third Edition, pp. 403-404. Stack Each thread has two stacks, one for kernel mode and one for user mode. A stack is an area of memory in which program procedure or function call addresses and parameters are temporarily stored. In Process To run in the same address space. In-process servers are loaded in the client’s address space because they are implemented as DLLs. The main advantage of running in-process is that the system usually does not need to perform a context switch. The disadvantage to running in-process is that DLL has access to the process address space and can potentially cause problems. Out of Process To run outside the calling processes address space. OLEDB providers can run in-process or out of process. When running out of process, they run under the context of DLLHOST.EXE. Memory Leak To reserve or commit memory and unintentionally not release it when it is no longer being used. A process can leak resources such as process memory, pool memory, user and GDI objects, handles, threads, and so on. Memory Concepts (X86 Address Space) Per Process Address Space Every process has its own private virtual address space. For 32-bit processes, that address space is 4 GB, based on a 32-bit pointer. Each process’s virtual address space is split into user and system partitions based on the underlying operating system. The diagram included at the top represents the address partitioning for the 32-bit version of Windows 2000. Typically, the process address space is evenly divided into two 2-GB regions. Each process has access to 2 GB of the 4 GB address space. The upper 2 GB of address space is reserved for the system. The user address space is where application code, global variables, per-thread stacks, and DLL code would reside. The system address space is where the kernel, executive, HAL, boot drivers, page tables, pool, and system cache reside. For specific information regarding address space layout, refer to Inside Microsoft Windows 2000 Third Edition pages 417-428 by Microsoft Press. Access Modes Each virtual memory address is tagged as to what access mode the processor must be running in. System space can only be accessed while in kernel mode, while user space is accessible in user mode. This protects system space from being tampered with by user mode code. Shared System Space Although every process has its own private memory space, kernel mode code and drivers share system space. Windows 2000 does not provide any protection to private memory being use by components running in kernel mode. As such, it is very important to ensure components running in kernel mode are thoroughly tested. 3-GB Address Space 3-GB Address Space Although 2 GB of address space may seem like a large amount of memory, application such as SQL Server could leverage more memory if it were available. The boot.ini option /3GB was created for those cases where systems actually support greater than 2 GB of physical memory and an application can make use of it This capability allows memory intensive applications running on Windows 2000 Advanced Server to use up to 50 percent more virtual memory on Intel-based computers. Application memory tuning provides more of the computer's virtual memory to applications by providing less virtual memory to the operating system. Although a system having less than 2 GB of physical memory can be booted using the /3G switch, in most cases this is ill-advised. If you restart with the 3 GB switch, also known as 4-Gig Tuning, the amount of non-paged pool is reduced to 128 MB from 256 MB. For a process to access 3 GB of address space, the executable image must have been linked with the /LARGEADDRESSAWARE flag or modified using Imagecfg.exe. It should be pointed out that SQL Server was linked using the /LAREGEADDRESSAWARE flag and can leverage 3 GB when enabled. Note Even though you can boot Windows 2000 Professional or Windows 2000 Server with the /3GB boot option, users processes are still limited to 2 GB of address space even if the IMAGE_FILE_LARGE_ADDRESS_AWARE flag is set in the image. The only thing accomplished by using the /3G option on these system is the reduction in the amount of address space available to the system (ISW2K Pg. 418). Important If you use /3GB in conjunction with AWE/PAE you are limited to 16 GB of memory. For more information, see the following Knowledge Base articles: Q171793 Information on Application Use of 4GT RAM Tuning Q126402 PagedPoolSize and NonPagedPoolSize Values in Windows NT Q247904 How to Configure Paged Pool and System PTE Memory Areas Q274598 W2K Does Not Enable Complete Memory Dumps Between 2 & 4 GB AWE Memory Layout AWE Memory Usually, the operation system is limited to 4 GB of physical memory. However, by leveraging PAE, Windows 2000 Advanced Server can support up to 8 GB of memory, and Data Center 64 GB of memory. However, as stated previously, each 32-bit process normally has access to only 2 GB of address space, or 3 GB if the system was booted with the /3-GB option. To allow processes to allocate more physical memory than can be represented in the 2GB of address space, Microsoft created the Address Windows Extensions (AWE). These extensions allow for the allocation and use of up to the amount of physical memory supported by the operating system. By leveraging the Address Windowing Extensions API, an application can create a fixed-size window into the physical memory. This allows a process to access any portion of the physical memory by mapping regions of physical memory in and out of the applications window. The allocation and use of AWE memory is accomplished by  Creating a window via VirtualAlloc using the MEM_PHYSICAL option  Allocating the physical pages through AllocateUserPhysicalPages  Mapping the RAM pages to the window using MapUserPhysicalPages Note SQL Server 7.0 supports a feature called extended memory in Windows NT® 4 Enterprise Edition by using a PSE36 driver. Currently there are no PSE drivers for Windows 2000. The preferred method of accessing extended memory is via the Physical Addressing Extensions using AWE. The AWE mapping feature is much more efficient than the older process of coping buffers from extended memory into the process address space. Unfortunately, SQL Server 7.0 cannot leverage PAE/AWE. Because there are currently no PSE36 drivers for Windows 2000 this means SQL Server 7.0 cannot support more than 3GB of memory on Windows 2000. Refer to KB article Q278466. AWE restrictions  The process must have Lock Pages In Memory user rights to use AWE Important It is important that you use Enterprise Manager or DMO to change the service account. Enterprise Manager and DMO will grant all of the privileges and Registry and file permissions needed for SQL Server. The Service Control Panel does NOT grant all the rights or permissions needed to run SQL Server.  Pages are not shareable or page-able  Page protection is limited to read/write  The same physical page cannot be mapped into two separate AWE regions, even within the same process.  The use of AWE/PAE in conjunction with /3GB will limit the maximum amount of supported memory to between 12-16 GB of memory.  Task manager does not show the correct amount of memory allocated to AWE-enabled applications. You must use Memory Manager: Total Server Memory. It should, however, be noted that this only shows memory in use by the buffer pool.  Machines that have PAE enabled will not dump user mode memory. If an event occurs in User Mode Memory that causes a blue screen and root cause determination is absolutely necessary, the machine must be booted with the /NOPAE switch, and with /MAXMEM set to a number appropriate for transferring dump files.  With AWE enabled, SQL Server will, by default, allocate almost all memory during startup, leaving 256 MB or less free. This memory is locked and cannot be paged out. Consuming all available memory may prevent other applications or SQL Server instances from starting. Note PAE is not required to leverage AWE. However, if you have more than 4GB of physical memory you will not be able to access it unless you enable PAE. Caution It is highly recommended that you use the “max server memory” option in combination with “awe enabled” to ensure some memory headroom exists for other applications or instances of SQL Server, because AWE memory cannot be shared or paged. For more information, see the following Knowledge Base articles: Q268363 Intel Physical Addressing Extensions (PAE) in Windows 2000 Q241046 Cannot Create a dump File on Computers with over 4 GB RAM Q255600 Windows 2000 utilities do not display physical memory above 4GB Q274750 How to configure SQL Server memory more than 2 GB (Idea) Q266251 Memory dump stalls when PAE option is enabled (Idea) Tip The KB will return more hits if you query on PAE rather than AWE. Virtual Address Space Mapping Virtual Address Space Mapping By default Windows 2000 (on an X86 platform) uses a two-level (three-level when PAE is enabled) page table structure to translate virtual addresses to physical addresses. Each 32-bit address has three components, as shown below. When a process accesses a virtual address the system must first locate the Page Directory for the current process via register CR3 (X86). The first 10 bits of the virtual address act as an index into the Page Directory. The Page Directory Entry then points to the Page Frame Number (PFN) of the appropriate Page Table. The next 10 bits of the virtual address act as an index into the Page Table to locate the appropriate page. If the page is valid, the PTE contains the PFN of the actual page in memory. If the page is not valid, the memory management fault handler locates the page and attempts to make it valid. The final 12 bits act as a byte offset into the page. Note This multi-step process is expensive. This is why systems have translation look aside buffers (TLB) to speed up the process. One of the reasons context switching is so expensive is the translation buffers must be dumped. Thus, the first few lookups are very expensive. Refer to ISW2K pages 439-440. Core System Memory Related Counters Core System Memory Related Counters When evaluating memory performance you are looking at a wide variety of counters. The counters listed here are a few of the core counters that give you quick overall view of the state of memory. The two key counters are Available Bytes and Committed Bytes. If Committed Bytes exceeds the amount of physical memory in the system, you can be assured that there is some level of hard page fault activity happening. The goal of a well-tuned system is to have as little hard paging as possible. If Available Bytes is below 5 MB, you should investigate why. If Available Bytes is below 4 MB, the Working Set Manager will start to aggressively trim the working sets of process including the system cache.  Committed Bytes Total memory, including physical and page file currently committed  Commit Limit • Physical memory + page file size • Represents the total amount of memory that can be committed without expanding the page file. (Assuming page file is allowed to grow)  Available Bytes Total physical memory currently available Note Available Bytes is a key indicator of the amount of memory pressure. Windows 2000 will attempt to keep this above approximately 4 MB by aggressively trimming the working sets including system cache. If this value is constantly between 3-4 MB, it is cause for investigation. One counter you might expect would be for total physical memory. Unfortunately, there is no specific counter for total physical memory. There are however many other ways to determine total physical memory. One of the most common is by viewing the Performance tab of Task Manager. Page File Usage The only counters that show current page file space usage are Page File:% Usage and Page File:% Peak Usage. These two counters will give you an indication of the amount of space currently used in the page file. Memory Performance Memory Counters There are a number of counters that you need to investigate when evaluating memory performance. As stated previously, no single counter provides the entire picture. You will need to consider many different counters to begin to understand the true state of memory. Note The counters listed are a subset of the counters you should capture. *Available Bytes In general, it is desirable to see Available Bytes above 5 MB. SQL Servers goal on Intel platforms, running Windows NT, is to assure there is approximately 5+ MB of free memory. After Available Bytes reaches 4 MB, the Working Set Manager will start to aggressively trim the working sets of process and, finally, the system cache. This is not to say that working set trimming does not happen before 4 MB, but it does become more pronounced as the number of available bytes decreases below 4 MB. Page Faults/sec Page Faults/sec represents the total number of hard and soft page faults. This value includes the System Working Set as well. Keep this in mind when evaluating the amount of paging activity in the system. Because this counter includes paging associated with the System Cache, a server acting as a file server may have a much higher value than a dedicated SQL Server may have. The System Working Set is covered in depth on the next slide. Because Page Faults/sec includes soft faults, this counter is not as useful as Pages/sec, which represents hard page faults. Because of the associated I/O, hard page faults tend to be much more expensive. *Pages/sec Pages/sec represent the number of pages written/read from disk because of hard page faults. It is the sum of Memory: Pages Input/sec and Memory: Pages Output/sec. Because it is counted in numbers of pages, it can be compared to other counts of pages, such as Memory: Page Faults/sec, without conversion. On a well-tuned system, this value should be consistently low. In and of itself, a high value for this counter does not necessarily indicate a problem. You will need to isolate the paging activity to determine if it is associated with in-paging, out-paging, memory mapped file activity or system cache. Any one of these activities will contribute to this counter. Note Paging in and of itself is not necessarily a bad thing. Paging is only “bad” when a critical process must wait for it’s pages to be in-paged, or when the amount of read/write paging is causing excessive kernel time or disk I/O, thus interfering with normal user mode processing. Tip (Memory: Pages/sec) / (PhysicalDisk: Disk Bytes/sec * 4096) yields the approximate percentage of paging to total disk I/O. Note, this is only relevant on X86 platforms with a 4 KB page size. Page Reads/sec (Hard Page Fault) Page Reads/sec is the number of times the disk was accessed to resolve hard page faults. It includes reads to satisfy faults in the file system cache (usually requested by applications) and in non-cached memory mapped files. This counter counts numbers of read operations, without regard to the numbers of pages retrieved by each operation. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. Page Writes/sec (Hard Page Fault) Page Writes/sec is the number of times pages were written to disk to free up space in physical memory. Pages are written to disk only if they are changed while in physical memory, so they are likely to hold data, not code. This counter counts write operations, without regard to the number of pages written in each operation. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. *Pages Input/sec (Hard Page Fault) Pages Input/sec is the number of pages read from disk to resolve hard page faults. It includes pages retrieved to satisfy faults in the file system cache and in non-cached memory mapped files. This counter counts numbers of pages, and can be compared to other counts of pages, such as Memory:Page Faults/sec, without conversion. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. This is one of the key counters to monitor for potential performance complaints. Because a process must wait for a read page fault this counter, read page faults have a direct impact on the perceived performance of a process. *Pages Output/sec (Hard Page Fault) Pages Output/sec is the number of pages written to disk to free up space in physical memory. Pages are written back to disk only if they are changed in physical memory, so they are likely to hold data, not code. A high rate of pages output might indicate a memory shortage. Windows NT writes more pages back to disk to free up space when physical memory is in short supply. This counter counts numbers of pages, and can be compared to other counts of pages, without conversion. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. Like Pages Input/sec, this is one of the key counters to monitor. Processes will generally not notice write page faults unless the disk I/O begins to interfere with normal data operations. Demand Zero Faults/Sec (Soft Page Fault) Demand Zero Faults/sec is the number of page faults that require a zeroed page to satisfy the fault. Zeroed pages, pages emptied of previously stored data and filled with zeros, are a security feature of Windows NT. Windows NT maintains a list of zeroed pages to accelerate this process. This counter counts numbers of faults, without regard to the numbers of pages retrieved to satisfy the fault. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. Transition Faults/Sec (Soft Page Fault) Transition Faults/sec is the number of page faults resolved by recovering pages that were on the modified page list, on the standby list, or being written to disk at the time of the page fault. The pages were recovered without additional disk activity. Transition faults are counted in numbers of faults, without regard for the number of pages faulted in each operation. This counter displays the difference between the values observed in the last two samples, divided by the duration of the sample interval. System Working Set System Working Set Like processes, the system page-able code and data are managed by a working set. For the purpose of this course, that working set is referred to as the System Working Set. This is done to differentiate the system cache portion of the working set from the entire working set. There are five different types of pages that make up the System Working Set. They are: system cache; paged pool; page-able code and data in ntoskrnl.exe; page-able code, and data in device drivers and system-mapped views. Unfortunately, some of the counters that appear to represent the system cache actually represent the entire system working set. Where noted system cache actually represents the entire system working set. Note The counters listed are a subset of the counters you should capture. *Memory: Cache Bytes (Represents Total System Working Set) Represents the total size of the System Working Set including: system cache; paged pool; pageable code and data in ntoskrnl.exe; pageable code and data in device drivers; and system-mapped views. Cache Bytes is the sum of the following counters: System Cache Resident Bytes, System Driver Resident Bytes, System Code Resident Bytes, and Pool Paged Resident Bytes. Memory: System Cache Resident Bytes (System Cache) System Cache Resident Bytes is the number of bytes from the file system cache that are resident in physical memory. Windows 2000 Cache Manager works with the memory manager to provide virtual block stream and file data caching. For more information, see also…Inside Windows 2000,Third Edition, pp. 645-650 and p. 656. Memory: Pool Paged Resident Bytes Represents the physical memory consumed by Paged Pool. This counter should NOT be monitored by itself. You must also monitor Memory: Paged Pool. A leak in the pool may not show up in Pool paged Resident Bytes. Memory: System Driver Resident Bytes Represents the physical memory consumed by driver code and data. System Driver Resident Bytes and System Driver Total Bytes do not include code that must remain in physical memory and cannot be written to disk. Memory: System Code Resident Bytes Represents the physical memory consumed by page-able system code. System Code Resident Bytes and System Code Total Bytes do not include code that must remain in physical memory and cannot be written to disk. Working Set Performance Counter You can measure the number of page faults in the System Working Set by monitoring the Memory: Cache Faults/sec counter. Contrary to the “Explain” shown in System Monitor, this counter measures the total amount of page faults/sec in the System Working Set, not only the System Cache. You cannot measure the performance of the System Cache using this counter alone. For more information, see also…Inside Windows 2000,Third Edition, p. 656. Note You will find that in general the working set manager will usually trim the working sets of normal processes prior to trimming the system working set. System Cache System Cache The Windows 2000 cache manager provides a write-back cache with lazy writing and intelligent read-ahead. Files are not written to disk immediately but differed until the cache manager calls the memory manager to flush the cache. This helps to reduce the total number of I/Os. Once per second, the lazy writer thread queues one-eighth of the dirty pages in the system cache to be written to disk. If this is not sufficient to meet the needs, the lazy writer will calculate a larger value. If the dirty page threshold is exceeded prior to lazy writer waking, the cache manager will wake the lazy writer. Important It should be pointed out that mapped files or files opened with FILE_FLAG_NO_BUFFERING, do not participate in the System Cache. For more information regarding mapped views, see also…Inside Windows 2000,Third Edition, p. 669. For those applications that would like to leverage system cache but cannot tolerate write delays, the cache manager supports write through operations via the FILE_FLAG_WRITE_THROUGH. On the other hand, an application can disable lazy writing by using the FILE_ATTRIBUTE_TEMPORARY. If this flag is enabled, the lazy writer will not write the pages to disk unless there is a shortage of memory or the file is closed. Important Microsoft SQL Server uses both FILE_FLAG_NO_BUFFERING and FILE_FLAG_WRITE_THROUGH Tip The file system cache is not represented by a static amount of memory. The system cache can and will grow. It is not unusual to see the system cache consume a large amount of memory. Like other working sets, it is trimmed under pressure but is generally the last thing to be trimmed. System Cache Performance Counters The counters listed are a subset of the counters you should capture. Cache: Data Flushes/sec Data Flushes/sec is the rate at which the file system cache has flushed its contents to disk as the result of a request to flush or to satisfy a write-through file write request. More than one page can be transferred on each flush operation. Cache: Data Flush Pages/sec Data Flush Pages/sec is the number of pages the file system cache has flushed to disk as a result of a request to flush or to satisfy a write-through file write request. Cache: Lazy Write Flushes/sec Represents the rate of lazy writes to flush the system cache per second. More than one page can be transferred per second. Cache: Lazy Write Pages/sec Lazy Write Pages/sec is the rate at which the Lazy Writer thread has written to disk. Note When looking at Memory:Cache Faults/sec, you can remove cache write activity by subtracting (Cache: Data Flush Pages/sec + Cache: Lazy Write Pages/sec). This will give you a better idea of how much other page faulting activity is associated with the other components of the System Working Set. However, you should note that there is no easy way to remove the page faults associated with file cache read activity. For more information, see the following Knowledge Base articles: Q145952 (NT4) Event ID 26 Appears If Large File Transfer Fails Q163401 (NT4) How to Disable Network Redirector File Caching Q181073 (SQL 6.5) DUMP May Cause Access Violation on Win2000 System Pool System Pool As documented earlier, there are two types of shared pool memory: non-paged pool and paged pool. Like private memory, pool memory is susceptible to a leak. Nonpaged Pool Miscellaneous kernel code and structures, and drivers that need working memory while at or above DPC/dispatch level use non-paged pool. The primary counter for non-paged pool is Memory: Pool Nonpaged Bytes. This counter will usually between 3 and 30 MB. Paged Pool Drivers that do not need to access memory above DPC/Dispatch level are one of the primary users of paged pool, however any process can use paged pool by leveraging the ExAllocatePool calls. Paged pool also contains the Registry and file and printing structures. The primary counters for monitoring paged pool is Memory: Pool Paged Bytes. This counter will usually be between 10-30MB plus the size of the Registry. To determine how much of paged pool is currently resident in physical memory, monitor Memory: Pool Paged Resident Bytes. Note The paged and non-paged pools are two of the components of the System Working Set. If a suspected leak is clearly visible in the overview and not associated with a process, then it is most likely a pool leak. If the leak is not associated with SQL Server handles, OLDEB providers, XPROCS or SP_OA calls then most likely this call should be pushed to the Windows NT group. For more information, see the following Knowledge Base articles: Q265028 (MS) Pool Tags Q258793 (MS) How to Find Memory Leaks by Using Pool Bitmap Analysis Q115280 (MS) Finding Windows NT Kernel Mode Memory Leaks Q177415 (MS) How to Use Poolmon to Troubleshoot Kernel Mode Memory Leaks Q126402 PagedPoolSize and NonPagedPoolSize Values in Windows NT Q247904 How to Configure Paged Pool and System PTE Memory Areas Tip To isolate pool leaks you will need to isolate all drivers and third-party processes. This should be done by disabling each service or driver one at a time and monitoring the effect. You can also monitor paged and non-paged pool through poolmon. If pool tagging has been enabled via GFLAGS, you may be able to associate the leak to a particular tag. If you suspect a particular tag, you should involve the platform support group. Process Memory Counters Process _Total Limitations Although the rollup of _Total for Process: Private Bytes, Virtual Bytes, Handles and Threads, represent the key resources being used across all processes, they can be misleading when evaluating a memory leak. This is because a leak in one process may be masked by a decrease in another process. Note The counters listed are a subset of the counters you should capture. Tip When analyzing memory leaks, it is often easier to a build either a separate chart or report showing only one or two key counters for all process. The primary counter used for leak analysis is private bytes, but processes can leak handles and threads just as easily. After a suspect process is located, build a separate chart that includes all the counters for that process. Individual Process Counters When analyzing individual process for memory leaks you should include the counters listed.  Process: % Processor Time  Process: Working Set (includes shared pages)  Process: Virtual Bytes  Process: Private Bytes  Process: Page Faults/sec  Process: Handle Count  Process: Thread Count  Process: Pool Paged Bytes  Process: Pool Nonpaged Bytes Tip WINLOGON, SVCHOST, services, or SPOOLSV are referred to as HELPER processes. They provide core functionality for many operations and as such are often extended by the addition of third-party DLLs. Tlist –s may help identify what services are running under a particular helper. Helper Processes Helper Processes Winlogon, Services, and Spoolsv and Svchost are examples of what are referred to as HELPER processes. They provide core functionality for many operations and, as such, are often extended by the addition of third-party DLLs. Running every service in its own process can waste system resources. Consequently, some services run in their own processes while others share a process with other services. One problem with sharing a process is that a bug in one service may cause the entire process to fail. The resource kit tool, Tlist when used with the –s qualifier can help you identify what services are running in what processes. WINLOGON Used to support GINAs. SPOOLSV SPOOLSV is responsible for printing. You will need to investigate all added printing functionality. Services Service is responsible for system services. Svchost.exe Svchost.exe is a generic host process name for services that are run from dynamic-link libraries (DLLs). There can be multiple instances of Svchost.exe running at the same time. Each Svchost.exe session can contain a grouping of services, so that separate services can be run depending on how and where Svchost.exe is started. This allows for better control and debugging. The Effect of Memory on Other Components Memory Drives Overall Performance Processor, cache, bus speeds, I/O, all of these resources play a roll in overall perceived performance. Without minimizing the impact of these components, it is important to point out that a shortage of memory can often have a larger perceived impact on performance than a shortage of some other resource. On the other hand, an abundance of memory can often be leveraged to mask bottlenecks. For instance, in certain environments, file system cache can significantly reduce the amount of disk I/O, potentially masking a slow I/O subsystem. Effect on I/O I/O can be driven by a number of memory considerations. Page read/faults will cause a read I/O when a page is not in memory. If the modified page list becomes too long the Modified Page Writer and Mapped Page Writer will need to start flushing pages causing disk writes. However, the one event that can have the greatest impact is running low on available memory. In this case, all of the above events will become more pronounced and have a larger impact on disk activity. Effect on CPU The most effective use of a processor from a process perspective is to spend as much time possible executing user mode code. Kernel mode represents processor time associated with doing work, directly or indirectly, on behalf of a thread. This includes items such as synchronization, scheduling, I/O, memory management, and so on. Although this work is essential, it takes processor cycles and the cost, in cycles, to transition between user and kernel mode is expensive. Because all memory management and I/O functions must be done in kernel mode, it follows that the fewer the memory resources the more cycles are going to be spent managing those resources. A direct result of low memory is that the Working Set Manager, Modified Page Writer and Mapped Page Writer will have to use more cycles attempting to free memory. Analyzing Memory Look for Trends and Trend Relationships Troubleshooting performance is about analyzing trends and trend relationships. Establishing that some event happened is not enough. You must establish the effect of the event. For example, you note that paging activity is high at the same time that SQL Server becomes slow. These two individual facts may or may not be related. If the paging is not associated with SQL Servers working set, or the disks SQL is using there may be little or no cause/affect relationship. Look at Physical Memory First The first item to look at is physical memory. You need to know how much physical and page file space the system has to work with. You should then evaluate how much available memory there is. Just because the system has free memory does not mean that there is not any memory pressure. Available Bytes in combination with Pages Input/sec and Pages Output/sec can be a good indicator as to the amount of pressure. The goal in a perfect world is to have as little hard paging activity as possible with available memory greater than 5 MB. This is not to say that paging is bad. On the contrary, paging is a very effective way to manage a limited resource. Again, we are looking for trends that we can use to establish relationships. After evaluating physical memory, you should be able to answer the following questions:  How much physical memory do I have?  What is the commit limit?  Of that physical memory, how much has the operating system committed?  Is the operating system over committing physical memory?  What was the peak commit charge?  How much available physical memory is there?  What is the trend associated with committed and available? Review System Cache and Pool Contribution After you understand the individual process memory usage, you need to evaluate the System Cache and Pool usage. These can and often represent a significant portion of physical memory. Be aware that System Cache can grow significantly on a file server. This is usually normal. One thing to consider is that the file system cache tends to be the last thing trimmed when memory becomes low. If you see abrupt decreases in System Cache Resident Bytes when Available Bytes is below 5 MB you can be assured that the system is experiencing excessive memory pressure. Paged and non-paged pool size is also important to consider. An ever-increasing pool should be an indicator for further research. Non-paged pool growth is usually a driver issue, while paged pool could be driver-related or process-related. If paged pool is steadily growing, you should investigate each process to see if there is a specific process relationship. If not you will have to use tools such as poolmon to investigate further. Review Process Memory Usage After you understand the physical memory limitations and cache and pool contribution you need to determine what components or processes are creating the pressure on memory, if any. Be careful if you opt to chart the _Total Private Byte’s rollup for all processes. This value can be misleading in that it includes shared pages and can therefore exceed the actual amount of memory being used by the processes. The _Total rollup can also mask processes that are leaking memory because other processes may be freeing memory thus creating a balance between leaked and freed memory. Identify processes that expand their working set over time for further analysis. Also, review handles and threads because both use resources and potentially can be mismanaged. After evaluating the process resource usage, you should be able to answer the following:  Are any of the processes increasing their private bytes over time?  Are any processes growing their working set over time?  Are any processes increasing the number of threads or handles over time?  Are any processes increasing their use of pool over time?  Is there a direct relationship between the above named resources and total committed memory or available memory?  If there is a relationship, is this normal behavior for the process in question? For example, SQL does not commit ‘min memory’ on startup; these pages are faulted in into the working set as needed. This is not necessarily an indication of a memory leak.  If there is clearly a leak in the overview and is not identifiable in the process counters it is most likely in the pool.  If the leak in pool is not associated with SQL Server handles, then more often than not, it is not a SQL Server issue. There is however the possibility that the leak could be associated with third party XPROCS, SP_OA* calls or OLDB providers. Review Paging Activity and Its Impact on CPU and I/O As stated earlier, paging is not in and of itself a bad thing. When starting a process the system faults in the pages of an executable, as they are needed. This is preferable to loading the entire image at startup. The same can be said for memory mapped files and file system cache. All of these features leverage the ability of the system to fault in pages as needed The greatest impact of paging on a process is when the process must wait for an in-page fault or when page file activity represents a significant portion of the disk activity on the disk the application is actively using. After evaluating page fault activity, you should be able to answer the following questions:  What is the relationship between PageFaults/sec and Page Input/sec + Page Output/Sec?  What is the relationship if any between hard page faults and available memory?  Does paging activity represent a significant portion of processor or I/O resource usage? Don’t Prematurely Jump to Any Conclusions Analyzing memory pressure takes time and patience. An individual counter in and of it self means little. It is only when you start to explore relationships between cause and effect that you can begin to understand the impact of a particular counter. The key thoughts to remember are:  With the exception of a swap (when the entire process’s working set has been swapped out/in), hard page faults to resolve reads, are the most expensive in terms its effect on a processes perceived performance.  In general, page writes associated with page faults do not directly affect a process’s perceived performance, unless that process is waiting on a free page to be made available. Page file activity can become a problem if that activity competes for a significant percentage of the disk throughput in a heavy I/O orientated environment. That assumes of course that the page file resides on the same disk the application is using. Lab 3.1 System Memory Lab 3.1 Analyzing System Memory Using System Monitor Exercise 1 – Troubleshooting the Cardinal1.log File Students will evaluate an existing System Monitor log and determine if there is a problem and what the problem is. Students should be able to isolate the issue as a memory problem, locate the offending process, and determine whether or not this is a pool issue. Exercise 2 – Leakyapp Behavior Students will start leaky app and monitor memory, page file and cache counters to better understand the dynamics of these counters. Exercise 3 – Process Swap Due To Minimizing of the Cmd Window Students will start SQL from command line while viewing SQL process performance counters. Students will then minimize the window and note the effect on the working set. Overview What You Will Learn After completing this lab, you will be able to:  Use some of the basic functions within System Monitor.  Troubleshoot one or more common performance scenarios. Before You Begin Prerequisites To complete this lab, you need the following:  Windows 2000  SQL Server 2000  Lab Files Provided  LeakyApp.exe (Resource Kit) Estimated time to complete this lab: 45 minutes Exercise 1 Troubleshooting the Cardinal1.log File In this exercise, you will analyze a log file from an actual system that was having performance problems. Like an actual support engineer, you will not have much information from which to draw conclusions. The customer has sent you this log file and it is up to you to find the cause of the problem. However, unlike the real world, you have an instructor available to give you hints should you become stuck. Goal Review the Cardinal1.log file (this file is from Windows NT 4.0 Performance Monitor, which Windows 2000 can read). Chart the log file and begin to investigate the counters to determine what is causing the performance problems. Your goal should be to isolate the problem to a major area such as pool, virtual address space etc, and begin to isolate the problem to a specific process or thread. This lab requires access to the log file Cardinal1.log located in C:\LABS\M3\LAB1\EX1  To analyze the log file 1. Using the Performance MMC, select the System Monitor snap-in, and click the View Log File Data button (icon looks like a disk). 2. Under Files of type, choose PERFMON Log Files (*.log) 3. Navigate to the folder containing Cardinal1.log file and open it. 4. Begin examining counters to find what might be causing the performance problems. When examining some of these counters, you may notice that some of them go off the top of the chart. It may be necessary to adjust the scale on these. This can be done by right-clicking the rightmost pane and selecting Properties. Select the Data tab. Select the counter that you wish to modify. Under the Scale option, change the scale value, which makes the counter data visible on the chart. You may need to experiment with different scale values before finding the ideal value. Also, it may sometimes be beneficial to adjust the vertical scale for the entire chart. Selecting the Graph tab on the Properties page can do this. In the Vertical scale area, adjust the Maximum and Minimum values to best fit the data on the chart. Lab 3.1, Exercise 1: Results Exercise 2 LeakyApp Behavior In this lab, you will have an opportunity to work with a partner to monitor a live system, which is suffering from a simulated memory leak. Goal During this lab, your goal is to observe the system behavior when memory starts to become a limited resource. Specifically you will want to monitor committed memory, available memory, the system working set including the file system cache and each processes working set. At the end of the lab, you should be able to provide an answer to the listed questions.  To monitor a live system with a memory leak 1. Choose one of the two systems as a victim on which to run the leakyapp.exe program. It is recommended that you boot using the \MAXMEM=128 option so that this lab goes a little faster. You and your partner should decide which server will play the role of the problematic server and which server is to be used for monitoring purposes. 2. On the problematic server, start the leakyapp program. 3. On the monitoring system, create a counter that logs all necessary counters need to troubleshoot a memory problem. This should include physicaldisk counters if you think paging is a problem. Because it is likely that you will only need to capture less than five minutes of activity, the suggested interval for capturing is five seconds. 4. After the counters have been started, start the leaky application program 5. Click Start Leaking. The button will now change to Stop Leaking, which indicates that the system is now leaking memory. 6. After leakyapp shows the page file is 50 percent full, click Stop leaking. Note that the process has not given back its memory, yet. After approximately one minute, exit. Lab 3.1, Exercise 2: Questions After analyzing the counter logs you should be able to answer the following: 1. Under which system memory counter does the leak show up clearly? Memory:Committed Bytes 2. What process counter looked very similar to the overall system counter that showed the leak? Private Bytes 3. Is the leak in Paged Pool, Non-paged pool, or elsewhere? Elsewhere 4. At what point did Windows 2000 start to aggressively trim the working sets of all user processes? <5 MB Free 5. Was the System Working Set trimmed before or after the working sets of other processes? After 6. What counter showed this? Memory:Cache Bytes 7. At what point was the File System Cache trimmed? After the first pass through all other working sets 8. What was the effect on all the processes working set when the application quit leaking? None 9. What was the effect on all the working sets when the application exited? Nothing, initially; but all grew fairly quickly based on use 10. When the server was running low on memory, which was Windows spending more time doing, paging to disk or in-paging? Paging to disk, initially; however, as other applications began to run, in-paging increased Exercise 3 Minimizing a Command Window In this exercise, you will have an opportunity to observe the behavior of Windows 2000 when a command window is minimized. Goal During this lab, your goal is to observe the behavior of Windows 2000 when a command window becomes minimized. Specifically, you will want to monitor private bytes, virtual bytes, and working set of SQL Server when the command window is minimized. At the end of the lab, you should be able to provide an answer to the listed questions.  To monitor a command window’s working set as the window is minimized 1. Using System Monitor, create a counter list that logs all necessary counters needed to troubleshoot a memory problem. Because it is likely that you will only need to capture less than five minutes of activity, the suggested capturing interval is five seconds. 2. After the counters have been started, start a Command Prompt window on the target system. 3. In the command window, start SQL Server from the command line. Example: SQL Servr.exe –c –sINSTANCE1 4. After SQL Server has successfully started, Minimize the Command Prompt window. 5. Wait approximately two minutes, and then Restore the window. 6. Wait approximately two minutes, and then stop the counter log. Lab 3.1, Exercise 3: Questions After analyzing the counter logs you should be able to answer the following questions: 1. What was the effect on SQL Servers private bytes, virtual bytes, and working set when the window was minimized? Private Bytes and Virtual Bytes remained the same, while Working Set went to 0 2. What was the effect on SQL Servers private bytes, virtual bytes, and working set when the window was restored? None; the Working Set did not grow until SQL accessed the pages and faulted them back in on an as-needed basis SQL Server Memory Overview SQL Server Memory Overview Now that you have a better understanding of how Windows 2000 manages memory resources, you can take a closer look at how SQL Server 2000 manages its memory. During the course of the lecture and labs you will have the opportunity to monitor SQL Servers use of memory under varying conditions using both System Monitor counters and SQL Server tools. SQL Server Memory Management Goals Because SQL Server has in-depth knowledge about the relationships between data and the pages they reside on, it is in a better position to judge when and what pages should be brought into memory, how many pages should be brought in at a time, and how long they should be resident. SQL Servers primary goals for management of its memory are the following:  Be able to dynamically adjust for varying amounts of available memory.  Be able to respond to outside memory pressure from other applications.  Be able to adjust memory dynamically for internal components. Items Covered  SQL Server Memory Definitions  SQL Server Memory Layout  SQL Server Memory Counters  Memory Configurations Options  Buffer Pool Performance and Counters  Set Aside Memory and Counters  General Troubleshooting Process  Memory Myths and Tips SQL Server Memory Definitions SQL Server Memory Definitions Pool A group of resources, objects, or logical components that can service a resource allocation request Cache The management of a pool or resource, the primary goal of which is to increase performance. Bpool The Bpool (Buffer Pool) is a single static class instance. The Bpool is made up of 8-KB buffers and can be used to handle data pages or external memory requests. There are three basic types or categories of committed memory in the Bpool.  Hashed Data Pages  Committed Buffers on the Free List  Buffers known by their owners (Refer to definition of Stolen) Consumer A consumer is a subsystem that uses the Bpool. A consumer can also be a provider to other consumers. There are five consumers and two advanced consumers who are responsible for the different categories of memory. The following list represents the consumers and a partial list of their categories  Connection – Responsible for PSS and ODS memory allocations  General – Resource structures, parse headers, lock manager objects  Utilities – Recovery, Log Manager  Optimizer – Query Optimization  Query Plan – Query Plan Storage Advanced Consumer Along with the five consumers, there are two advanced consumers. They are  Ccache – Procedure cache. Accepts plans from the Optimizer and Query Plan consumers. Is responsible for managing that memory and determines when to release the memory back to the Bpool.  Log Cache – Managed by the LogMgr, which uses the Utility consumer to coordinate memory requests with the Bpool. Reservation Requesting the future use of a resource. A reservation is a reasonable guarantee that the resource will be available in the future. Committed Producing the physical resource Allocation The act of providing the resource to a consumer Stolen The act of getting a buffer from the Bpool is referred to as stealing a buffer. If the buffer is stolen and hashed for a data page, it is referred to as, and counted as, a Hashed buffer, not a stolen buffer. Stolen buffers on the other hand are buffers used for things such as procedure cache and SRV_PROC structures. Target Target memory is the amount of memory SQL Server would like to maintain as committed memory. Target memory is based on the min and max server configuration values and current available memory as reported by the operating system. Actual target calculation is operating system specific. Memory to Leave (Set Aside) The virtual address space set aside to ensure there is sufficient address space for thread stacks, XPROCS, COM objects etc. Hashed Page A page in pool that represents a database page. SQL Server Memory Layout Virtual Address Space When SQL Server is started the minimum of physical ram or virtual address space supported by the OS is evaluated. There are many possible combinations of OS versions and memory configurations. For example: you could be running Microsoft Windows 2000 Advanced Server with 2 GB or possibly 4 GB of memory. To avoid page file use, the appropriate memory level is evaluated for each configuration. Important Utilities can inject a DLL into the process address space by using HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs When the USER32.dll library is mapped into the process space, so, too, are the DLLs listed in the Registry key. To determine what DLL’s are running in SQL Server address space you can use tlist.exe. You can also use a tool such as Depends from Microsoft or HandelEx from http://ww.sysinternals.com. Memory to Leave As stated earlier there are many possible configurations of physical memory and address space. It is possible for physical memory to be greater than virtual address space. To ensure that some virtual address space is always available for things such as thread stacks and external needs such as XPROCS, SQL Server reserves a small portion of virtual address space prior to determining the size of the buffer pool. This address space is referred to as Memory To Leave. Its size is based on the number of anticipated tread stacks and a default value for external needs referred to as cmbAddressSave. After reserving the buffer pool space, the Memory To Leave reservation is released. Buffer Pool Space During Startup, SQL Server must determine the maximum size of the buffer pool so that the BUF, BUFHASH and COMMIT BITMAP structures that are used to manage the Bpool can be created. It is important to understand that SQL Server does not take ‘max memory’ or existing memory pressure into consideration. The reserved address space of the buffer pool remains static for the life of SQL Server process. However, the committed space varies as necessary to provide dynamic scaling. Remember only the committed memory effects the overall memory usage on the machine. This ensures that the max memory configuration setting can be dynamically changed with minimal changes needed to the Bpool. The reserved space does not need to be adjusted and is maximized for the current machine configuration. Only the committed buffers need to be limited to maintain a specified max server memory (MB) setting. SQL Server Startup Pseudo Code The following pseudo code represents the process SQL Server goes through on startup. Warning This example does not represent a completely accurate portrayal of the steps SQL Server takes when initializing the buffer pool. Several details have been left out or glossed over. The intent of this example is to help you understand the general process, not the specific details.  Determine the size of cmbAddressSave (-g)  Determine Total Physical Memory  Determine Available Physical Memory  Determine Total Virtual Memory  Calculate MemToLeave maxworkterthreads * (stacksize=512 KB) + (cmbAddressSave = 256 MB)  Reserve MemToLeave and set PAGE_NOACCESS  Check for AWE, test to see if it makes sense to use it and log the results • Min(Available Memory, Max Server Memory) > Virtual Memory • Supports Read Scatter • SQL Server not started with -f • AWE Enabled via sp_configure • Enterprise Edition • Lock Pages In Memory user right enabled  Calculate Virtual Address Limit VA Limit = Min(Physical Memory, Virtual Memory – MemtoLeave)  Calculate the number of physical and virtual buffers that can be supported AWE Present Physical Buffers = (RAM / (PAGESIZE + Physical Overhead)) Virtual Buffers = (VA Limit / (PAGESIZE + Virtual Overhead)) AWE Not Present Physical Buffers = Virtual Buffers = VA Limit / (PAGESIZE + Physical Overhead + Virtual Overhead)  Make sure we have the minimum number of buffers Physical Buffers = Max(Physical Buffers, MIN_BUFFERS)  Allocate and commit the buffer management structures  Reserve the address space required to support the Bpool buffers  Release the MemToLeave SQL Server Startup Pseudo Code Example The following is an example based on the pseudo code represented on the previous page. This example is based on a machine with 384 MB of physical memory, not using AWE or /3GB. Note CmbAddressSave was changed between SQL Server 7.0 and SQL Server 2000. For SQL Server 7.0, cmbAddressSave was 128. Warning This example does not represent a completely accurate portrayal of the steps SQL Server takes when initializing the buffer pool. Several details have been left out or glossed over. The intent of this example is to help you understand the general process, not the specific details.  Determine the size of cmbAddressSave (No –g so 256MB)  Determine Total Physical Memory (384)  Determine Available Physical Memory (384)  Determine Total Virtual Memory (2GB)  Calculate MemToLeave maxworkterthreads * (stacksize=512 KB) + (cmbAddressSave = 256 MB) (255 * .5MB + 256MB = 384MB)  Reserve MemToLeave and set PAGE_NOACCESS  Check for AWE, test to see if it makes sense to use it and log the results (AWE Not Enabled)  Calculate Virtual Address Limit VA Limit = Min(Physical Memory, Virtual Memory – MemtoLeave) 384MB = Min(384MB, 2GB – 384MB)  Calculate the number of physical and virtual buffers that can be supported AWE Not Present 48664 (approx) = 384 MB / (8 KB + Overhead)  Make sure we have the minimum number of buffers Physical Buffers = Max(Physical Buffers, MIN_BUFFERS) 48664 = Max(48664,1024)  Allocate and commit the buffer management structures  Reserve the address space required to support the Bpool buffers  Release the MemToLeave Tip Trace Flag 1604 can be used to view memory allocations on startup. The cmbAddressSave can be adjusted using the –g XXX startup parameter. SQL Server Memory Counters SQL Server Memory Counters The two primary tools for monitoring and analyzing SQL Server memory usage are System Monitor and DBCC MEMORYSTATUS. For detailed information on DBCC MEMORYSTATUS refer to Q271624 Interpreting the Output of the DBCC MEMORYSTAUS Command. Important Represents SQL Server 2000 Counters. The counters presented are not the same as the counters for SQL Server 7.0. The SQL Server 7.0 counters are listed in the appendix. Determining Memory Usage for OS and BPOOL Memory Manager: Total Server memory (KB) - Represents all of SQL usage Buffer Manager: Total Pages - Represents total bpool usage To determine how much of Total Server Memory (KB) represents MemToLeave space; subtract Buffer Manager: Total Pages. The result can be verified against DBCC MEMORYSTATUS, specifically Dynamic Memory Manager: OS In Use. It should however be noted that this value only represents requests that went thru the bpool. Memory reserved outside of the bpool by components such as COM objects will not show up here, although they will count against SQL Server private byte count. Buffer Counts: Target (Buffer Manager: Target Pages) The size the buffer pool would like to be. If this value is larger than committed, the buffer pool is growing. Buffer Counts: Committed (Buffer Manager: Total Pages) The total number of buffers committed in the OS. This is the current size of the buffer pool. Buffer Counts: Min Free This is the number of pages that the buffer pool tries to keep on the free list. If the free list falls below this value, the buffer pool will attempt to populate it by discarding old pages from the data or procedure cache. Buffer Distribution: Free (Buffer Manager / Buffer Partition: Free Pages) This value represents the buffers currently not in use. These are available for data or may be requested by other components and mar

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十一*

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值