- 博客(0)
- 资源 (5)
- 收藏
- 关注
memorywaste
When the system needs more memory slab tries to free the cached but not active
objects in the slab caches. First slab will free all the various per CPU and per
node caches. Then the slab raper goes through all the slabs in the caches and
checks if a particular slab only contains free cached objects. When fully free the
slab is given back to the page allocator.
2011-11-08
原创的c++版语法分析器
事例文法:
NOTHING INT FLOAT CHAR STRING sizeof struct ID * [ ] { } ( ) , . ->
main return break continue if else while = || && INTNUM FLOATNUM CHARNUM
!= == > >= < <= + - / % ! & ++ -- ;
%%
program
array
addop
args_list
args_list_declare
args_declare
args_declare_right
base_type
expr_list
expr
expr_right
expr0
expr0_right
expr1
expr1_right
expr2
expr2_right
expr3
expr3_right
expr4
expr4_right
expr5
expr5_right
expr6
expr6_right
expr7
expr7_right
expr8
expr8_right
function_list
function_declare
if_else
if_else_right
id_val
mulop
pointer
prefixop
postfixop
relop
refer_array_right
refer_right
real_args
refer_id
refer_id_right
simple_type
single_type
struct_type
stmt_list
stmt_block
stmt
single_stmt
struct_stmt
term
var_declare
while_loop
%%
program --> function_list main ( args_list ) { stmt_list } \
function_list --> function_declare function_list \
function_list --> NOTHING \
function_declare --> single_type ID ( args_list ) { stmt_list } \
args_list --> args_list_declare \
args_list --> NOTHING \
args_list_declare --> args_declare args_declare_right \
args_declare_right --> , args_declare args_declare_right \
args_declare_right --> NOTHING \
args_declare --> var_declare \
var_declare --> single_type ID array \
base_type --> INT \
base_type --> FLOAT \
base_type --> CHAR \
struct_type --> struct ID \
simple_type --> base_type \
simple_type --> struct_type \
single_type --> simple_type pointer \
pointer --> * pointer \
pointer --> NOTHING \
array --> [ INTNUM ] array \
array --> NOTHING \
stmt_block --> { stmt_list } \
stmt_block --> stmt \
stmt_list --> stmt stmt_list \
stmt_list --> NOTHING \
stmt --> single_stmt ; \
stmt --> struct_stmt \
single_stmt --> var_declare \
single_stmt --> expr_list \
single_stmt --> return expr_list \
single_stmt --> break \
single_stmt --> continue \
single_stmt --> NOTHING \
struct_stmt --> if_else \
struct_stmt --> while_loop \
if_else --> if ( expr_list ) stmt_block if_else_right \
if_else_right --> NOTHING \
if_else_right --> else stmt_block \
while_loop --> while ( expr_list ) stmt_block \
expr_list --> expr expr_right \
expr_right --> , expr expr_right \
expr_right --> NOTHING \
expr --> expr0 expr0_right \
expr0_right --> = expr0 expr0_right \
expr0_right --> NOTHING \
expr0 --> expr1 expr1_right \
expr1_right --> || expr1 expr1_right \
expr1_right --> NOTHING \
expr1 --> expr2 expr2_right \
expr2_right --> && expr2 expr2_right \
expr2_right --> NOTHING \
expr2 --> expr3 expr3_right \
expr3_right --> != expr3 expr3_right \
expr3_right --> NOTHING \
expr3 --> expr4 expr4_right \
expr4_right --> == expr4 expr4_right \
expr4_right --> NOTHING \
expr4 --> expr5 expr5_right \
expr5_right --> relop expr5 expr5_right \
expr5_right --> NOTHING \
expr5 --> expr6 expr6_right \
expr6_right --> addop expr6 expr6_right \
expr6_right --> NOTHING \
expr6 --> expr7 expr7_right \
expr7_right --> mulop expr7 expr7_right \
expr7_right --> NOTHING \
expr7 --> expr8 expr8_right \
expr7 --> prefixop expr8 \
expr8_right --> postfixop \
expr8_right --> NOTHING \
expr8 --> refer_id refer_right \
expr8 --> term \
refer_right --> . id_val refer_right \
refer_right --> -> id_val refer_right \
refer_right --> NOTHING \
term --> INTNUM \
term --> FLOATNUM \
term --> CHARNUM \
term --> STRING \
term --> ( expr ) \
term --> sizeof ( expr8 ) \
refer_id --> ID refer_id_right \
refer_id_right --> [ expr_list ] refer_array_right \
refer_id_right --> ( real_args ) \
refer_id_right --> NOTHING \
real_args --> expr_list \
real_args --> NOTHING \
id_val --> ID refer_array_right \
refer_array_right --> [ expr_list ] refer_array_right \
refer_array_right --> NOTHING \
relop --> < \
relop --> <= \
relop --> > \
relop --> >= \
addop --> + \
addop --> - \
mulop --> * \
mulop --> / \
mulop --> % \
prefixop --> ! \
prefixop --> - \
prefixop --> * \
prefixop --> & \
postfixop --> ++ \
postfixop --> -- \
%%
2008-12-28
软件项目管理课件PM WS0809_Englisch
determination of a long-termed business
policy of a company and target conception
strateg.
managem.
• area- and functional leaderships
• planning and resource allocations
i li i f h b i
tactical
management
• operationalization of the business
political targets of a company and
strategical decisions, this means
translating in concrete defaults, agendas
• division- and function group
leaderships
and rules
operational management
• delegable department- or
divisions decisions
• conversion of the tactical
management default actions by
directly influencing of the
appropriate performance bearer
2008-10-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人