Subversion Repositories HelenOS

Rev

Rev 1787 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1787 Rev 2130
1
#!/usr/bin/env python
1
#!/usr/bin/env python
2
"""
2
"""
3
Decode 32-bit address into PTE components
3
Decode 32-bit address into PTE components
4
"""
4
"""
5
import sys
5
import sys
6
 
6
 
7
def main():
7
def main():
8
    if len(sys.argv) != 2 or not sys.argv[1].startswith('0x'):
8
    if len(sys.argv) != 2 or not sys.argv[1].startswith('0x'):
9
        print "%s 0x..." % sys.argv[0]
9
        print "%s 0x..." % sys.argv[0]
10
        sys.exit(1)
10
        sys.exit(1)
11
   
11
   
12
    address = int(sys.argv[1],16)
12
    address = int(sys.argv[1],16)
13
    offset = address & 0xfff
13
    offset = address & 0xfff
14
    ptl1 = (address >> 12) & 0x3ff
14
    ptl1 = (address >> 12) & 0x3ff
15
    ptl0 = (address >> 22) & 0x3ff
15
    ptl0 = (address >> 22) & 0x3ff
16
    print "Ptl0:   %3d" % ptl0
16
    print "Ptl0:   %3d" % ptl0
17
    print "Ptl1:   %3d" % ptl1
17
    print "Ptl1:   %3d" % ptl1
18
    print "Offset: 0x%x" % offset
18
    print "Offset: 0x%x" % offset
19
 
19
 
20
if __name__ == '__main__':
20
if __name__ == '__main__':
21
    main()
21
    main()
22
 
22