momo zone

调核人的blog

Monthly Archives: 二月 2009

在vista x64环境下安装eclipse

在vista x64环境下安装eclipse

安装了vista x64系统,并且安装了64位的jdk6update11。如果安装eclipse网站提供的windows JEE版本(32位的),会在启动eclipse时报告未找到jvm:

e1 

如果强行设置64位jvm到Path环境变量,或者复制jre到eclipse目录下,虽然能够启动jvm,但是jvm会在启动eclipse过程中退出:

e2

eclipse没有提供集成jee开发的64位eclipse版本。需要到eclipse platform项目的下载页面中选择下载x86_64的版本:

http://download.eclipse.org/eclipse/downloads/drops/R-3.4.1-200809111700/index.php

这只是eclipse sdk,如果需要其他插件,比如做web开发的wtp。需要手工update安装。有点儿麻烦。

其实不必这么麻烦,只需如下步骤就可以创建一个64位eclipse jee开发环境:

  1. 解压缩eclipse jee版本;
  2. 解压缩x64版本的eclipse sdk覆盖eclipse jee版本。

经过初步测试,这样得到的版本,配置tomcat6,可以开发调试java 动态web项目:

e3

Advertisements

SAP production serial

关于SAP的各个产品系列简介

 SAP Business Suite

   
当前SAP公司的主力产品包,里面包含了mySAP ERP, mySAP CRM, mySAP SCM ….
几乎是SAP的所有东东。如果购买的是此种许可证,就意味着几乎可以用SAP的所有产品的功能--某些特定行业的特定引擎(Engine)除外。

   
mySAP ERP

   
主要就是以前的SAP R/3加上SAP最新的集成平台SAP Netweaver。

   
mySAP CRM

    之所以叫mySAP
CRM而不是SAP CRM,就是为了突出SAP的CRM产品是以客户为中心的、灵活可配置的……所以叫”my***“,mySAP
CRM主要就是包括SAP的CRM产品功能包(Logic Box)再加上SAP最新的集成平台SAP Netweaver。

   
SAP Netweaver

    是SAP
最新的集成应用平台,一方面SAP用这么一个平台来集成SAP与非SAP(Oracle, Siebel,
…)应用系统;另一方面SAP把一些各个系统都可以通用的功能放入此平台中,如SAP门户( SAP
Portal)可以访问各种SAP应用系统(ERP, CRM…)及非SAP系统、SAP商务智能(SAP
BI)可以对来自各种系统的数据进行分析……

   
mySAP.com

   
这是前几年SAP为了迎合网络风潮而给自己的产品包改的名字,它跟www.mySAP.com这个网站没有任何实质关…它就是现在的SAP
Business Suite。

   
SAP R/3

   
以前SAP公司的主力产品,包括大家非常熟悉的SD, MM, FI, CO,
PP..等模块。但从今年起SAP已经不再单独出售R/3的许可证,代之以mySAP
ERP。也就意味着客户无论选择SAP的何种产品(mySAP ERP, mySAP CRM…)都会得到SAP
Netweaver,其中包括了SAP Portal 与SAP BW的使用许可。

   
SAP All-in One (SAP A1)

    在SAP
R/3的基础上,SAP做了一些预配置,然后按不同行业交给咨询合作伙伴,由他们再加一些预配置,然后以咨询合作伙伴的名义将加了预配置的系统销售给用户。内含mySAP
CRM的部分功能。

   
SAP Business One (SAP B1)

   
在SAP收购的另一家公司的产品基础上改造而成,优点是价格低廉,并且由于数据结构相同可以无缝地将系统升级至SAP A1, SAP
Business Suite。SAP B1中有CRM功能,但远不及mySAP CRM系统中的那么强大。

 

SAP
Release版本之间的差异和关系:

   
版本4.6C以前是所谓传统的R3系统,建立在SAP Basis的基础上;

   
版本4.70以后,改为R3 Enterprise,最大的变化是SAP WEB
AS取代了传统的Basis,核心业务功能模块也作了划分;

    R3
Enterprise之后改称为mySAP ERP2004,基础平台演变成SAP NetWeaver,并产生SAP ECC (ECC =
ERP Central Component) ,作为Enterprise的替代,并集成了BW,SEM和ITS;
 

  
2005第4季度开始mySAP
ERP2005的准备,最大的变化将是全面转向ESA体系(基于消息机制的企业应用体系),并引入了新的功能模块,比如PLM和SRM….

SAP Application area



SAP Application area

  • You can drill down the application areas by clicking the
    + icon.

  • Click the respective application area you want to copy to the entry field.
    However, note that not all application areas can be copied. In this case no notes exist for the
    application area in question.

  • Use a wildcard (e.g. BC*) if you want to search through
    lower-level application areas belonging to it.


   Application area

Description
Expand/Collapse AC

Accounting General
Expand/Collapse AIE

Auto-ID Enterprise
Expand/Collapse AP

Appl. Platform
Expand/Collapse BC

Basis Components
    Expand/Collapse BC-ABA

ABAP Runtime Env.
    Expand/Collapse BC-AC

Use sub-components
    Expand/Collapse BC-BMT

Business Management
       BC-BSP

Business Server Page
    Expand/Collapse BC-BW

BW Service API
    Expand/Collapse BC-CCM

Please use subcomp
    Expand/Collapse BC-CCP

CCP (SAP internal)
    Expand/Collapse BC-CFG

Business Config Tool
    Expand/Collapse BC-CI

Component Integratio
    Expand/Collapse BC-CST

Client/Server Techn.
    Expand/Collapse BC-CTS

Transport System
    Expand/Collapse BC-CUS

Customizing
    Expand/Collapse BC-DB

DB If, DB Platforms
    Expand/Collapse BC-DOC

Doc. & Transl. Tools
    Expand/Collapse BC-DWB

ABAP Workbench
    Expand/Collapse BC-ECM

Enterp. Cont. Mgmt.
    Expand/Collapse BC-EHP

Enhancement Package
    Expand/Collapse BC-EIM

Enterprise Info Mgmt
    Expand/Collapse BC-ESI

ESI
    Expand/Collapse BC-FES

Frontend Services
    Expand/Collapse BC-GP

Guided Procedure
    Expand/Collapse BC-HLP

Help-Infrastructure
    Expand/Collapse BC-I18

Internationalization
       BC-IDM

Identity Management
    Expand/Collapse BC-ILM

Info Lifecycle Mgt
    Expand/Collapse BC-INS

Installation Tools
    Expand/Collapse BC-JAS

Java Applic. Server
    Expand/Collapse BC-JVM

SAP Java Virt Machin
    Expand/Collapse BC-MID

Middleware
    Expand/Collapse BC-MOB

SAP NetWeaver Mobile
    Expand/Collapse BC-MUS

Musing Tools
       BC-NET

Network Infrastructu
    Expand/Collapse BC-NWA

Use Sub-components
    Expand/Collapse BC-OP

OS Platforms
       BC-PIN-PCD

PCD, Gen. Layer Serv
       BC-SA

Service Adaptation
    Expand/Collapse BC-SEC

Security
    Expand/Collapse BC-SRV

Basis Services/Comm.
       BC-TRL

NW Trl: Tech Issues
    Expand/Collapse BC-TRX

TREX
    Expand/Collapse BC-TWB

Test Workbench
    Expand/Collapse BC-UPG

Upgrade – general
    Expand/Collapse BC-VMC

Virtual Machine Cont
    Expand/Collapse BC-WD

Web Dynpro
    Expand/Collapse BC-XI

Exchange Infrastruct
Expand/Collapse BOJ

Business Objects
Expand/Collapse BW

SAP BW
Expand/Collapse CA

Cross Appl. Compon.
Expand/Collapse CAF

CAF
Expand/Collapse CFM

Treasury and Risk Ma
Expand/Collapse CO

Controlling
   CPM

Please use component
Expand/Collapse CRM

Customer Relationshi
Expand/Collapse CS

Customer Service
Expand/Collapse EC

Enterprise Control.
Expand/Collapse EHS

Env., Health&Safety
Expand/Collapse EP

Enterprise Portal
Expand/Collapse EPM

Enterprise Performan
Expand/Collapse FI

Financial Accounting
Expand/Collapse FIN

Financials
Expand/Collapse FS

Financial Services
Expand/Collapse GRC

Governance, Risk
Expand/Collapse ICM

Incentive & Commissi
Expand/Collapse IM

Investment Mmgt.
Expand/Collapse IS

Industry-Spec. Comp.
Expand/Collapse ISP

IndustrySpeak – B2B
Expand/Collapse KM

Knowledge Management
Expand/Collapse LE

Logistics Execution
Expand/Collapse LO

Logistics – General
   MBA

See XAP-MBA*
Expand/Collapse MDM

Master Data Mgmt.
Expand/Collapse MFG

SAP Manufacturing
Expand/Collapse MM

Materials Management
Expand/Collapse MP

MySAP.com Marketplac
Expand/Collapse OPU

Occasional Platform
Expand/Collapse PA

Personnel Management
Expand/Collapse PE

Training/Event Mgmt.
Expand/Collapse PLM

PLM
Expand/Collapse PM

Plant Maintenance
Expand/Collapse PP

Production Planning
Expand/Collapse PPM

Portfolio and Projec
Expand/Collapse PS

Project System
Expand/Collapse PSM

Public Sector Managm
Expand/Collapse PT

Pers.Time Management
Expand/Collapse PY

Payroll
Expand/Collapse QM

Quality Management
Expand/Collapse R/2

System R/2
Expand/Collapse RE

Real Estate Mgmt
Expand/Collapse SBO

SAP Business One
Expand/Collapse SCM

Supply Chain
Expand/Collapse SD

Sales and Distrib.
Expand/Collapse SLL

GTS / Log.Serv.
Expand/Collapse SRD

All-in-One / Service
Expand/Collapse SRM

SRM
Expand/Collapse SV

Service
Expand/Collapse TR

Treasury
Expand/Collapse WP

Obsolete product
Expand/Collapse XAP

XAP
Expand/Collapse XX

Miscellaneous

Allocating Memory for User Contexts (UNIX)

Entering content frameProcess documentation Allocating Memory for User Contexts (UNIX) Locate the document in its SAP Library structure

Use

The
memory management system assigns memory to user contexts from the
following areas: roll area, SAP extended memory, and heap memory.

The order of assignment from these memory areas arranges itself
according to whether the user context runs in an SAP dialog work
process or in another SAP work process. This enables the SAP system to
optimally use the characteristics of the individual memory types.

When allocating memory, the following characteristics for individual memory types become noticeable.

Memory type

Characteristics

SAP Roll Area

Sequential memory allocation to several work processes using a relatively slow copying process

SAP Extended Memory

Sequential memory allocation to several work processes using a fast allocation process Uses swap space

Private memory

Allocation to a local work process, as required for the running user context in the process Uses swap space

Flow

The
flow depends on whether it is a dialog work process or not. Unlike
other work process types, dialog work processes require frequent
context changes. Private memory that is linked to a work process is
only assigned if there are no other options.

Allocating Memory for Dialog Work Processes

The
following graphic shows how the memory management system assigns memory
to a dialog work process with different memory types. Normally, dialog
work processes process requests from dialog users of the SAP system.

This graphic is explained in the accompanying text

  1. For technical reasons, the roll area
    provides the first 100 to 250 KB (depending on the operating system)
    for the user context. Additional memory for this initial assignment
    sets itself according to the system profile parameter
  2. ztta/roll_first. If, for example, ztta/roll_first is set to 1000000(1 MB), approximately 1.2 MB roll area is provided. If ztta/roll_first is set to 1, only the technically necessary amount is allocated to roll memory.)

  3. If the memory from the roll area is not sufficient for the user
    context, more memory is provided from the SAP Extended Memory. Extended
    memory is available for the user context until one of the following
    conditions is satisfied:

    • The work process has reached the limit of the SAP Extended Memory for work processes. This limit is set in the system profile parameter ztta/roll_extension.
    • The SAP Extended Memory is used up. The size of the extended memory pool is set in the system profile parameter
    • em/initial_size_MB.

  1. If this memory is also insufficient for
    the user context, more memory is provided from the roll area until this
    area is completely used up, or until the limit set in
  2. ztta/roll_area is reached. The roll memory now available sets itself according to the difference between the 2 parameter values ztta/roll_area (total memory in the roll area) and ztta/roll_first (size of assigned roll memory in step 1).

  3. If the user context still requires additional memory, it is assigned heap memory (
  4. Private Memory). Heap memory is available until one of the following situations occurs:

    • SAP restrictions: Either the limit of the heap memory for dialog work processes is reached (defined in the system profile parameter abap/heap_area_dia), or the entire heap memory of all work processes for an SAP application server reaches its limits (defined in parameter abap/heap_area_total).
    • Operating system limits for allocating memory
    • The swap space in the host system is used up or the upper limit of
      the operating system address space (as determined by the 32-bit
      architecture) is reached. Try to avoid these situations at all times.
      To avoid this situation, you must set parameter
    • abap/heap_area_total correctly.

Allocating Memory for Other Work Processes

The
following graphic shows how the memory management system assigns memory
to non-dialog work process (background, update, lock and spool work
processes) with different memory types.

This graphic is explained in the accompanying text

  1. The memory is taken from the roll area
    until the area is used up. The maximum size of the roll area is set in
    the system profile parameter
  2. ztta/roll_area.

  3. If the roll area is full, heap memory is allocated to the work
    process. Heap memory is available until one of the following situations
    occurs:

    • SAP restrictions: Either the limit of the heap memory for non-dialog work processes is reached (defined in the system profile parameter
    • abap/heap_area_nondia), or the entire heap memory of all work processes for an SAP application server reaches its limits (defined in parameter abap/heap_area_total).

    • Operating system limits for allocating memory
    • The swap space in the host system is used up. This situation should never occur (see
    • Swap Space Requirements).

  1. If no more private heap memory can be allocated, a non-dialog work process can use the SAP extended memory.

 

 Leaving content frame

User Context

Entering content frameObject documentation User Context Locate the document in its SAP Library structure

Definition

The user context is the data that is specifically assigned to an SAP user.

Use

Whenever
an SAP user starts a transaction (an ABAP program), the work process
processing the request always requires the user context.

Structure

Each user can open up to six external sessions (System ®

Create session).

The user context contains a user-specific area containing user and authorization data, and a session context for each SAP session.

Each external session can administrate from its side several internal sessions (indicated here with IS), that will not be explained in further detail here.

This graphic is explained in the accompanying text

Integration

All user contexts are contained in a common resource (SAP Extended Memory, SAP Roll Area), which enables a fast context change.

 

 Leaving content frame

Functions of the SAP Memory Management System

Entering content frameBackground documentationFunctions of the SAP Memory Management System Locate the document in its SAP Library structure

An application runs in an SAP work process where an ABAP program is normally executed. The process requires memory to do this, which are allocated to it by the memory management system. The order in which the work process is assigned the memory type depends on the work process type, either dialog or non-dialog (see SAP Memory Types), and the underlying operating system.

This is described in more detail in the documentation on the operating system.

The location of the various memory areas in the virtual address space is explained in Virtual Address Space of a Work Process.

The area of a user context that is directly accessible is now extended as needed, if the user context has expanded. For dialog work processes, the data of the user context, including internal tables is located in this expanded area. You can therefore access all the data in the user context. Only data of the types "extract" and "export to memory" stay in SAP Paging.

The SAP Roll Area is used for the initial memory assigned to a user context, and (if available) for additional memory if the expanded memory is full.

The following diagram displays the memory types that can be assigned to work processes on the SAP and operating system level. Here are the most important system profile parameters that control the availability of the memory types.

This graphic is explained in the accompanying text

Whenever a dialog step is executed, a roll action occurs between the roll buffer in the shared memory and the memory area, which is allocated according to ztta/roll_first in a dialog process. Then the area in the shared memory is accessed that belongs to this user context.

The following graphic displays the roll process performed by the dispatcher.

  • Roll-in: cross-user data is rolled in from the common resource in the work process (and is processed there).
  • Roll-out: User-specific data is rolled out from the work process in the common resource (after the dialog step has ended).

The common resource stands for the different SAP memory types.

This graphic is explained in the accompanying text

 

 Leaving content frameSAP内存管理:

SAP内存区域
Shared Memory: SAP Buffer (Program, Screen, Data Dictionary), Extended Memory, Roll Buffer, Paging Buffer
Local Memory: Local Roll, Local Page, Heap Memory

Roll Area(属于local memory), 主要存储user context,比如程序指针,set/get parameters,权限,内表,报表。
Paging Area(属于local memory),主要存储程序相关数据。比方说extract,Import and Export,call transction之类。
Roll Buffer和Paging Buffer则是对应Roll area,paging area得shared memory 部分,roll-in过程表示从roll/paging buffer(shared memory)拷贝user context道roll/paging Area(local memory),roll-out恰好相反。
Roll file和Paging file则是对应Roll buffer和Paging buffer得文件部分(on disk),当Roll buffer和paing buffer不足,则会存储与Roll file和Paging file.
Extended Memory(属于Shared Memory),存储同Roll area得数据,不过用户进程访问extended memory不同于roll area得拷贝,而是映射.

Extended Memory采用映射方式的好处在于:使用指针访问成本更低,速度更快,能够更有效的利用内存,降低cpu和硬盘的负载。当然,extended memory需要足够的物理内存来支持,因为它设计的初衷是理应只存在于物理内存。

内存分配顺序

sap得内存都是通过instance profile参数来设置的,所以下面简单介绍相关内存参数(st02 SAP memory部分的内存参数,这里都以unix平台为基准,windows平台则是采用零内存管理,在内存参数上有着差异)。
Profile parameter             Comment
ztta/roll_area                     Roll area per workprocess (total)
ztta/roll_first                       First amount of roll area used in a dialog WP
ztta/short_area                  Short area per workprocess
rdisp/ROLL_SHM               Part of roll file in shared memory
rdisp/PG_SHM                   Part of paging file in shared memory
rdisp/PG_LOCAL               Paging buffer per workprocess
em/initial_size_MB              Initial size of extended memory
em/blocksize_KB                Size of one extended memory block
em/address_space_MB      Address space reserved for ext. mem. (NT only)
ztta/roll_extension              Max. extended mem. per session (external mode)
abap/heap_area_dia          Max. heap memory for dialog workprocesses
abap/heap_area_nondia     Max. heap memory for non-dialog workprocesses
abap/heap_area_total         Max. usable heap memory
abap/heaplimit                    Workprocess restart limit of heap memory

Roll buffer由rdisp/ROLL_SHM设置, Roll file由rdisp/ROLL_MAXFS减去rdisp/ROLL_SHM决定,单位8Byte。
Paging Buffer由rdisp/PG_SHM  设置,Paging file由rdisp/PG_MAXFS减去rdisp/PG_SHM决定,单位8Byte。
Roll Area分为Roll first和一般性的Roll Area.前者由ztta/roll_first 决定,一般值为1,具体值根据basis版本不同而略有差异;后者由ztta/roll_area决定。这两个区域都属于进程的local内存,都是在进程初始化时候就分配了相应的内存空间,但是ztta/roll_area部分并不是最初就被使用(对于win零内存管理机制,这个参数无效,而是使用em/address_space_MB)。
Extended memory属于shared memory部分由em/initial_size_MB来限定了其大小,这个应该是在sap instance初始化(不太确定,比方说windows的内存管理机制同unix是不同的,应该是由em/max_size_MB限制)是就分配的共享内存;ztta/roll_extension则是对每个进程所能访问em/initial_size_MB得最大配额。
sap一个实例所有进程得local heap得和的最大值由abap/heap_area_total来限制。abap/heap_area_dia和abap/heap_area_nondia则分别对dia和btc类型的进程所能分配的heap内存的最大值进行了限定。abap/heaplimit对于unix系统来说比较有意义,因为这代表着,如果一个进程使用的heap内存超过了这个值,那么该进程在运行完当前的程序之后,会被重新启动以释放之前申请的heap memory。

注意:extended memroy和heap memory都有一个总量的限制,即既有单个进程限制,也有总和限制。roll area是预先固定分配的。就unix平台,extended memory总量是固定和预分配的。就win平台而言,是自动管理并可按需自动增加到em/max_size_MB(不是很确定其细节)。

对dialog进程而言,不同类型操作系统平台下进程内存分配顺序是一致的。
即ztta/roll_first->ztta/roll_extension->ztta/roll_area->abap/heap_area_dia
对于dialog进程而言,有一个特殊的状态叫做PRIV mode,这一状态代表着dialog进程开始使用heap memory,priv mode这一个状态同时也标志着该进程被该session独占。
对于nog dialog进程,win和unix系统的内存分配方式略有差异。
非win平台 ztta/roll_area->abap/heap_area_nondia->ztta/roll_extension
win平台 ztta/roll_first->ztta/roll_extension->ztta/roll area->abap/heap_area_nondia

思考,根据进程类型,操作系统平台不同,那么内存耗尽的dump的类型是否会跟最后分配的内存类型相关?
小结:对于sap的内存参数管理,需要分unix和win nt与linux平台,然后才能选择合适的内存参数。关键是理解了不同类型的内存管理机制。

Virtual Address Space of a Work Process

Entering content frameBackground documentation Virtual Address Space of a Work Process Locate the document in its SAP Library structure

With 32-bit systems, 4 GB of memory can theoretically be addressed; depending on the operating system, there are approximately 2 GB of virtual address space available to a process.

This consists of a text and a data segment, a dynamically extendible heap and a dynamically extendible stack. The heap increases in size from the bottom and the stack increases from the top; this enables the entire virtual address space to be used.

With an SAP work process, there are special areas reserved on the heap. The size of these special areas can be set using a profile parameter. These areas are:

The ABAP processor stores different types of data in the SAP
paging area. These include:


   (1) Data clusters (EXPORT … TO MEMORY …)
   (2) Parameters for calling programs (SUBMIT REPORT …),
       Dialog modules (CALL DIALOG …) and transactions
       (CALL TRANSACTION USING …)
   (3) Internally defined program macros (DEFINE …)

The largest reserved area is located between the heap and stack of the SAP extended memory.

 

This graphic is explained in the accompanying text

 

 Leaving content frame