|
|
1.1 root 1: ppxxccooppyy() -- Memory-Manipulation Routine
2:
3: #iinncclluuddee <ssyyss/sseegg.hh>
4: ppxxccooppyy(_s_r_c, _d_e_s_t, _n_u_m__b_y_t_e_s, _f_l_a_g)
5: ppaaddddrr_tt _s_r_c;
6: vvaaddrr_tt _d_e_s_t;
7: uunnssiiggnneedd iinntt _n_u_m__b_y_t_e_s;
8: iinntt _f_l_a_g;
9:
10: Kernel function ppxxccooppyy() can be invoked in one of two forms.
11:
12: The first form copies _n_u_m__b_y_t_e_s from physical address _s_r_c into kernel data
13: virtual address _d_e_s_t. This form is selected by setting argument _f_l_a_g to
14: manifest constant SSEEGG_338866_KKDD.
15:
16: The second form copies _n_u_m__b_y_t_e_s from system global address _s_r_c to kernel
17: data virtual address _d_e_s_t. This form is selected by setting argument _f_l_a_g
18: to manifest constant SSEEGG_338866_KKDD|SSEEGG_VVIIRRTT.
19:
20: _N_o_t_e _w_e_l_l _t_h_a_t _n_u_m__b_y_t_e_s _m_u_s_t _b_e _l_e_s_s _t_h_a_n _o_r _e_q_u_a_l _t_o _4_K (_4_0_9_6) _b_y_t_e_s.
21:
22: No alignment restrictions are placed on _s_r_c or _d_e_s_t.
23:
24: _S_e_e _A_l_s_o
25: mmeemmoorryy-mmaanniippuullaattiioonn rroouuttiinneess
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.