Subversion Repositories Kolibri OS

Rev

Rev 3371 | Rev 4424 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3371 Rev 3798
Line 3... Line 3...
3
;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;;
3
;; Copyright (C) KolibriOS team 2004-2012. All rights reserved. ;;
4
;; Distributed under terms of the GNU General Public License    ;;
4
;; Distributed under terms of the GNU General Public License    ;;
5
;;                                                              ;;
5
;;                                                              ;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
6
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 7... Line 7...
7
 
7
 
Line 8... Line 8...
8
$Revision: 3371 $
8
$Revision: 3798 $
9
 
9
 
10
 
10
 
Line 888... Line 888...
888
        cmp     eax, ebx                ; check for overflow
888
        cmp     eax, ebx                ; check for overflow
889
        ja      .error
889
        ja      .error
Line 890... Line 890...
890
 
890
 
891
        mov     ebx, [offset]
891
        mov     ebx, [offset]
-
 
892
        and     ebx, not 4095           ; is it required ?
Line 892... Line 893...
892
        and     ebx, not 4095           ; is it required ?
893
        add     ebx, [base]
893
 
894
 
894
.unmap:
895
.unmap:
895
        mov     eax, [edx]              ; get page addres
896
        mov     eax, [edx]              ; get page addres
896
        test    al, 1                   ; page mapped ?
897
        test    al, 1                   ; page mapped ?
897
        jz      @F
898
        jz      @F
898
        test    eax, PG_SHARED          ; page shared ?
899
        test    eax, PG_SHARED          ; page shared ?
899
        jnz     @F
900
        jnz     @F
900
        mov     [page_tabs+edx*4], dword 2
901
        mov     [edx], dword 2
901
                                        ; mark page as reserved
902
                                        ; mark page as reserved
902
        invlpg  [ebx]                   ; when we start using
903
        invlpg  [ebx]                   ; when we start using
903
        call    free_page               ; empty c-o-w page instead this ?
904
        call    free_page               ; empty c-o-w page instead this ?