[22613] 2014-04-29_内核代号101—动手写自己的内核

文档创建者:s7ckTeam
浏览次数:6
最后更新:2025-01-18
2014-04-29_内核代号101—动手写自己的内核 1 0 1     L i n u x   2 0 1 4 - 0 4 - 2 9 H i ,   G R U B x 8 6 X 8 6 x 8 6 x 8 6   C P U   [ 0 x F F F F F F F 0 ] 3 2 1 6 B I O S c p u B I O S B I O S B I O S [ 0 x 7 c 0 0 ] b o o t l o a d e r B o o t l o a d e r [ 0 x 1 0 0 0 0 0 ] [ 0 x 1 0 0 0 0 0 ] x 8 6 *   x 8 6 *   L i n u x *   N A S M   *   G C C *   L D ( G N U   ) *   G R U B
G i t h u b   G i t h u b   r e p o s i t o r y   -   m k e r n e l c x 8 6 c   [ 0 x 1 0 0 0 0 0 ] ; ; k e r n e l . a s m b i t s   3 2       ; n a s m   d i r e c t i v e   -   3 2   b i t s e c t i o n   . t e x t   g l o b a l   s t a r t e x t e r n   k m a i n                   ; k m a i n   i s   d e f i n e d   i n   t h e   c   f i l e   s t a r t :     c l i         ; b l o c k   i n t e r r u p t s     c a l l   k m a i n     h l t         ; h a l t   t h e   C P U   b i t 3 2   x 8 6 N A S M   n a s m 3 2 t e x t ( ) g l o b a l N A S M s t a r t s t a r t k m a i n k e r n e l . c e x t e r n s t a r t k m i a n 使 h l t C P U , c p u h l t   c l i c l i ( c l e a r - i n t e r r u p t s ) C k e r n l e . a s m k m a i n ( ) c k m a i n ( ) : / * *     k e r n e l . c * / v o i d   k m a i n ( v o i d ) {   c h a r   * s t r   =   " m y   f i r s t   k e r n e l " ;   c h a r   * v i d p t r   =   ( c h a r * ) 0 x b 8 0 0 0 ;     / / v i d e o   m e m   b e g i n s   h e r e .   u n s i g n e d   i n t   i   =   0 ;   u n s i g n e d   i n t   j   =   0 ;   / / c l e a r   a l l   w h i l e ( j   <   8 0   *   2 5   *   2 )   {     / / b l a n k   c h a r a c t e r     v i d p t r [ j ]   =   '   ' ;     / / a t t r i b u t e - b y t e :   l i g h t   g r e y   o n   b l a c k   s c r e e n       v i d p t r [ j + 1 ]   =   0 x 0 7 ;           j   =   j   +   2 ;   }   j   =   0 ;   w h i l e ( s t r [ j ]   ! =   ' 0 ' )   {     v i d p t r [ i ]   =   s t r [ j ] ;     v i d p t r [ i + 1 ]   =   0 x 0 7 ;     + + j ;     i   =   i   +   2 ;   }   r e t u r n ; } v i d p t r [ 0 x b 8 0 0 0 ]   ,   [ 0 x b 8 0 0 0 ] 2 5 8 0 A S C I I 1 6 b i t s ( 2 ) 使 8 b i t s A S C I I   绿 s s [ 0 x 0 2 ] ,     0 2 绿
1 .   0   -   B l a c k ,   1   -   B l u e ,   2   -   G r e e n ,   3   -   C y a n ,   4   -   R e d ,   5   -   M a g e n t a ,   6   -   B r o w n ,   7   -   L i g h t   G r e y , 8   -   D a r k   G r e y ,   9   -   L i g h t   B l u e ,   1 0 / a   -   L i g h t   G r e e n ,   1 1 / b   -   L i g h t   C y a n ,   1 2 / c   -   L i g h t   R e d ,   1 3 / d   -   L i g h t   M a g e n t a ,   1 4 / e   -   L i g h t   B r o w n ,   1 5 / f     W h i t e .   [ 0 x 0 7 ] . w h i l e [ 0 x 0 7 ] (   ) ( 2 5 8 0 ) w h i l e n u l l   m y   f i r s t   k e r n e l   N A S M G C C k e r n a l e . a s m k e r n e l . c l d / * *     l i n k . l d * / O U T P U T _ F O R M A T ( e l f 3 2 - i 3 8 6 ) E N T R Y ( s t a r t ) S E C T I O N S   {       .   =   0 x 1 0 0 0 0 0 ;       . t e x t   :   {   * ( . t e x t )   }       . d a t a   :   {   * ( . d a t a )   }       . b s s     :   {   * ( . b s s )     }   }   3 2 E L F .   E L F E x e c u t a b l e   a n d   L i n k a b l e   F o r m a t x 8 6 U n i x E N T R Y   S E C T I O N S   S E C T I O N S     ( . )   [ 0 x 0 ] S E C T I O N S       [ 0 x 1 0 0 0 0 0 ] [ 0 x 1 0 0 0 0 0 ]   . t e x t   :   {   * ( . t e x t )   } (   *   ) * ( . t e x t )   . t e x t   t e x t t e x t     ( [ 0 x 1 0 0 0 0 0 ] ) t e x t [ 0 x 1 0 0 0 0 0 ] + t e x t d a t a b s s G r u b g r u b   B o o t l o a d e r M u t i l e b o o t   G R U B M u t i l e b o o t   8 K B M u l t i b o o t   h e a d e r ) 3 4
[ 0 x 1 B A D B 0 0 2 ] 0 0 ; ; k e r n e l . a s m   ; n a s m   d i r e c t i v e   -   3 2   b i t b i t s   3 2 s e c t i o n   . t e x t                 ; m u l t i b o o t   s p e c                 a l i g n   4                 d d   0 x 1 B A D B 0 0 2                         ; m a g i c                 d d   0 x 0 0                                     ; f l a g s                 d d   -   ( 0 x 1 B A D B 0 0 2   +   0 x 0 0 )   ; c h e c k s u m .   m + f + c   s h o u l d   b e   z e r o   g l o b a l   s t a r t e x t e r n   k m a i n                   ; k m a i n   i s   d e f i n e d   i n   t h e   c   f i l e   s t a r t :     c l i         ; b l o c k   i n t e r r u p t s     c a l l   k m a i n     h l t         ; h a l t   t h e   C P U d d   4 k e r n e l . a s m k e r n e l . c n a s m   - f   e l f 3 2   k e r n e l . a s m   - o   k a s m . o N A S M k e r n e l . a s m E L F - 3 2 g c c   - m 3 2   - c   k e r n e l . c   - o   k c . o - c G C C l d   - m   e l f _ i 3 8 6   - T   l i n k . l d   - o   k e r n e l   k a s m . o   k c . o k e r n e l g r u b G R U B   k e r n e l - k e r n e l - 7 0 1 . / b o o t G R U B g r u b . c f g t i t l e   m y K e r n e l   r o o t   ( h d 0 , 0 )   k e r n e l   / b o o t / k e r n e l - 7 0 1   r o h i d d e n m e n u
P S : *   h a c k i n g *   使 g r u b 2 b o o t l o a d e r   R u b é n   L a g u n a g r u b 2 m e n u e n t r y   ' k e r n e l   7 0 0 1 '   {   s e t   r o o t = ' h d 0 , m s d o s 1 '   m u l t i b o o t   / b o o t / k e r n e l - 7 0 0 1   r o } *   q e m u G R U B q e m u - s y s t e m - i 3 8 6   - k e r n e l   k e r n e l   A r j u n   S r e e d h a r a n       -     h t t p : / / w w w . g e e k f a n . n e t / 8 6 6 3 / h t t p : / / l i n u x . c n / a r t i c l e - 2 9 2 6 - 1 . h t m l

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则