diff --git a/linux-0.11-lab/0/linux/Image b/linux-0.11-lab/0/linux/Image index 7107e5b..fc5e064 100644 Binary files a/linux-0.11-lab/0/linux/Image and b/linux-0.11-lab/0/linux/Image differ diff --git a/linux-0.11-lab/0/linux/System.map b/linux-0.11-lab/0/linux/System.map index 6d4212d..03c32e3 100644 --- a/linux-0.11-lab/0/linux/System.map +++ b/linux-0.11-lab/0/linux/System.map @@ -21,581 +21,588 @@ 000064ef T pause 0000651e T setup 00006555 T sync -00006584 t time_init -00006799 T main -0000690c t printf -0000695b T init -00006bd3 T print_nr -00006c04 T show_task -00006c89 T show_stat -00006ccf T math_state_restore -00006d2d T schedule -00006edf T sys_pause -00006ef5 T sleep_on -00006f54 T interruptible_sleep_on -0000700f T ticks_to_floppy_on -000070da T floppy_on -00007109 T floppy_off -00007119 T do_floppy_timer -00007311 T do_timer -00007400 T sys_alarm -0000747f T sys_getpid -0000748b T sys_getppid -00007497 T sys_getuid -000074a6 T sys_geteuid -000074b6 T sys_getgid -000074c6 T sys_getegid -000074d5 T sys_nice -00007500 T sched_init -00007690 t bad_sys_call -00007698 t reschedule -000076a4 T system_call -000076df t ret_from_sys_call -00007728 T coprocessor_error -0000774a T device_not_available -00007784 T timer_interrupt -000077bc T sys_execve -000077cc T sys_execve2 -000077dc T sys_fork -000077f4 T hd_interrupt -00007830 T floppy_interrupt -00007866 T parallel_interrupt -0000786d t _get_base -0000789f t die -00007a81 T do_double_fault -00007aa4 T do_general_protection -00007ac7 T do_divide_error -00007aea T do_int3 -00007bb2 T do_nmi -00007bd5 T do_debug -00007bf8 T do_overflow -00007c1b T do_bounds -00007c3e T do_invalid_op -00007c61 T do_device_not_available -00007c84 T do_coprocessor_segment_overrun -00007ca7 T do_invalid_TSS -00007cca T do_segment_not_present -00007ced T do_stack_segment -00007d10 T do_coprocessor_error -00007d44 T do_reserved -00007d67 T trap_init -0000804b T divide_error -00008050 t no_error_code -00008080 T debug -00008087 T nmi -0000808e T int3 -00008095 T overflow -0000809c T bounds -000080a3 T invalid_op -000080aa T coprocessor_segment_overrun -000080b1 T reserved -000080b8 T irq13 -000080cd T double_fault -000080d2 t error_code -00008104 T invalid_TSS -0000810b T segment_not_present -00008112 T stack_segment -00008119 T general_protection -00008120 t _get_base -00008152 T verify_area -000081b9 T copy_mem -00008313 T copy_process -000087c0 T find_empty_process -00008854 T panic -0000888f T printk -000088e0 t skip_atoi -0000893b t number -00008bac T vsprintf -00009038 t get_fs_long -0000904e t put_fs_byte -00009066 t put_fs_long -00009072 T sys_ftime -00009078 T sys_break -0000907e T sys_ptrace -00009084 T sys_stty -0000908a T sys_gtty -00009090 T sys_rename -00009096 T sys_prof -0000909c T sys_setregid -00009155 T sys_setgid -000091ec T sys_acct -000091f2 T sys_phys -000091f8 T sys_lock -000091fe T sys_mpx -00009204 T sys_ulimit -0000920a T sys_time -00009266 T sys_setreuid -00009348 T sys_setuid -000093dd T sys_stime -00009433 T sys_times -000094d3 T sys_brk -00009515 T sys_setpgid -000095ee T sys_getpgrp -000095fa T sys_setsid -00009674 T sys_getgroups -0000967a T sys_setgroups -00009680 T sys_uname -000096e9 T sys_sethostname -000096ef T sys_getrlimit -000096f5 T sys_setrlimit -000096fb T sys_getrusage -00009701 T sys_gettimeofday -00009707 T sys_settimeofday -0000970d T sys_umask -00009740 t _get_base -00009772 t put_fs_long -0000977e T release -000097e2 t send_sig -00009861 t kill_session -000098bb T sys_kill -00009a6b t tell_father -00009af5 T do_exit -00009d29 T sys_exit -00009d42 T sys_waitpid -00009f68 t get_fs_byte -00009f76 t put_fs_byte -00009f8e t put_fs_long -00009f9a T sys_sgetmask -00009fa6 T sys_ssetmask -00009fd2 T sys_sigpending -00009fd8 T sys_sigsuspend -00009fde t save_old -0000a031 t get_new -0000a071 T sys_signal -0000a0f5 T sys_sigaction -0000a1ff T do_signal -0000a3eb T kernel_mktime -0000a530 t oom -0000a54f T get_free_page -0000a58b T free_page -0000a5fa T free_page_tables -0000a6f9 T copy_page_tables -0000a87a T put_page -0000a966 T un_wp_page -0000aa1e T do_wp_page -0000aaa9 T get_empty_page -0000aae9 t try_to_share -0000ac7b t share_page -0000ad2f T do_no_page -0000ae91 T mem_init -0000af05 T calc_mem -0000affa T page_fault -0000b031 t get_fs_long -0000b047 T sys_ustat -0000b04d T sys_utime -0000b0fa T sys_access -0000b1d6 T sys_chdir -0000b24a T sys_chroot -0000b2be T sys_chmod -0000b358 T sys_chown -0000b3d3 T sys_open -0000b676 T sys_creat -0000b699 T sys_close -0000b768 T sys_lseek -0000b87f T sys_read -0000ba72 T sys_write -0000bc20 t lock_inode -0000bc4d t unlock_inode -0000bc6b T invalidate_inodes -0000bcda T sync_inodes -0000bd31 t _bmap -0000c11d T bmap -0000c140 T create_block -0000c163 T iput -0000c2d2 T get_empty_inode -0000c427 T get_pipe_inode -0000c49c T iget -0000c661 t read_inode -0000c897 T sys_sync -0000c8fa T sync_dev -0000c9f3 T invalidate_buffers -0000ca65 T check_disk_change -0000cb0f t remove_from_queues -0000cc06 t insert_into_queues -0000cccb t find_buffer -0000cd33 T get_hash_table -0000cdb5 T getblk -0000cf53 T brelse -0000cf9c T bread -0000d021 T bread_page -0000d143 T breada -0000d238 T buffer_init -0000d367 t lock_super -0000d394 t free_super -0000d3d9 T get_super -0000d448 T put_super -0000d51b t read_super -0000d85e T sys_umount -0000d9bf T sys_mount -0000db30 T mount_root -0000dd3e t get_fs_byte -0000dd4c t put_fs_byte -0000dd64 T block_write -0000deb6 T block_read -0000dfe1 t get_fs_byte -0000dfef t put_fs_byte -0000e007 t rw_ttyx -0000e04f t rw_tty -0000e09f t rw_ram -0000e0a5 t rw_mem -0000e0ab t rw_kmem -0000e0b1 t rw_port -0000e14b t rw_memory -0000e221 T rw_char -0000e28b t get_fs_byte -0000e299 t put_fs_byte -0000e2b1 T file_read -0000e45c T file_write -0000e656 t put_fs_byte -0000e66e t cp_stat -0000e745 T sys_stat -0000e78f T sys_lstat -0000e7aa T sys_fstat -0000e807 T sys_readlink -0000e80d t _get_base -0000e83f t get_fs_byte -0000e84d t get_fs_long -0000e863 t put_fs_byte -0000e87b t put_fs_long -0000e887 t get_fs -0000e89b t get_ds -0000e8af t set_fs -0000e8b6 T sys_uselib -0000e8bc t create_tables -0000ea07 t count -0000ea46 t copy_strings -0000ec02 t change_ldt -0000ed85 T do_execve -0000f807 t oom -0000f826 T do_execve2 -000103f1 t get_fs_byte -000103ff t put_fs_byte -00010417 t put_fs_long -00010423 T read_pipe -000106f8 T sys_pipe -000108fa t get_fs_byte -00010908 t permission -000109a9 t match -00010a11 t find_entry -00010e6b t get_dir -00011058 t dir_namei -000110d7 T namei -000111ed T open_namei -00011540 T sys_mknod -00011770 T sys_mkdir -00011b21 t empty_dir -00011cff T sys_rmdir -00012057 T sys_unlink -000122f8 T sys_symlink -000122fe T sys_link -00012558 T free_block -000126ca T new_block -0001286e T free_inode -000129d5 T new_inode -00012baf t dupfd -00012c89 T sys_dup2 -00012cb0 T sys_dup -00012ccb T sys_fcntl -00012e0a T sys_ioctl -00012edb t free_ind -00012f7a t free_dind -00013019 T truncate -0001314e T sys_select -00013154 t put_fs_byte -0001316c T sys_getdents -00013332 T sys_sleep -0001336f T sys_something -00013375 T sys_getcwd -00013581 t lock_buffer -000135ae t unlock_buffer -000137a0 t make_request -00013944 T ll_rw_block -0001399d T blk_dev_init -000139eb t unlock_buffer -00013a20 t end_request -00013ad1 T floppy_deselect -00013b08 T floppy_change -00013b8e t setup_DMA -00013c44 t output_byte -00013cba t result -00013d77 t bad_flp_intr -00013dd6 t rw_interrupt -00013ec5 T setup_rw_floppy -00013f86 t seek_interrupt -00013fdf t transfer -00014114 t recal_interrupt -0001415e T unexpected_floppy_interrupt -000141a3 t recalibrate_floppy -00014205 t reset_interrupt -0001424a t reset_floppy -000142c7 t floppy_on_interrupt -00014332 t do_fd_request -00014536 T floppy_init -00014588 t unlock_buffer -000145bd t end_request -0001465c T sys_setup -00014a0f t controller_ready -00014aa3 t hd_out -00014b90 t drive_busy -00014bf6 t reset_controller -00014c73 t reset_hd -00014d0b T unexpected_hd_interrupt -00014d1e t bad_rw_intr -00014d5c t read_intr -00014e82 t recal_intr -00014e9c t do_hd_request -0001519d T hd_init -00015217 t unlock_buffer -0001524c t end_request -000152eb t do_rd_request -00015421 T rd_init -00015477 T rd_load -00015723 t get_fs_byte -00015731 t put_fs_byte -00015749 T tty_init -0001575a T tty_intr -000157ce t sleep_if_empty -00015806 t sleep_if_full -0001587a T copy_to_cooked -00015e35 T tty_read -000161a3 T tty_write -000163b5 T do_tty_interrupt -000163dd T chr_dev_init -000163de T readmouse -00016569 t gotoxy -000165b7 t set_origin -0001661d t scrup -0001680d t scrdown -00016904 t lf -0001693a t ri -00016970 t cr -00016991 t del -000169c3 t csi_J -00016a54 t csi_K -00016b06 T csi_m -00016b6d t set_cursor -00016bd3 t respond -00016c2b t insert_char -00016c8e t insert_line -00016cd2 t delete_char -00016d30 t delete_line -00016d74 t csi_at -00016db2 t csi_L -00016df0 t csi_P -00016e2e t csi_M -00016e6c t save_cur -00016e81 t restore_cur -00016ea0 T con_write -0001752e T con_init -00017813 T sysbeepstop -0001783c t sysbeep -0001789a t mode -0001789b t leds -0001789c t e0 -0001789d T keyboard_interrupt -000178c6 t e0_e1 -000178f1 t set_e0 -000178fa t set_e1 -00017903 t put_queue -0001793c t ctrl -00017954 t unctrl -00017958 t unalt -0001796e t lshift -00017976 t unlshift -0001797e t rshift -00017986 t unrshift -0001798e t caps -000179b0 t set_leds -000179c6 t uncaps -000179ce t scroll -000179d7 t num -000179e0 t cursor -00017a00 t cur2 -00017a29 t cur -00017a35 t ok_cur -00017a43 t num_table -00017a50 t cur_table -00017a5d t func -00017a7a t ok_func -00017a8d t end_func -00017a8e t func_table -00017abe t key_map -00017b1f t shift_map -00017be1 t do_self -00017c49 t none -00017c4a t minus -00017c5f t key_table -0001805f t kb_wait -00018068 t reboot -0001807a t die -0001807c t init -000180f1 T rs_init -00018174 T rs_write -000181c4 T rs1_interrupt -000181cc T rs2_interrupt -000181d1 t rs_int -000181e8 t rep_int -00018205 t end -00018213 t jmp_table -00018224 t modem_status -0001822c t line_status -00018234 t read_char -000182bb t get_fs_byte -000182c9 t get_fs_long -000182df t put_fs_byte -000182f7 t put_fs_long -00018303 t change_speed -00018381 t flush -00018393 t send_break -00018394 t get_termios -000183f0 t set_termios -00018440 t get_termio -00018508 t set_termio -000185cc T tty_ioctl -000188ca T mouse_interrupt -000188ef t get_fs_byte -000188fd T math_emulate -000189e0 T math_error -00018a00 T _exit -00018a10 T open -00018a59 T close -00018acd T dup -00018b04 T setsid -00018b33 T execve -00018bd0 T strcpy -00018bec T strncpy -00018c11 T strcat -00018c3c T strncat -00018c71 T strcmp -00018c98 T strncmp -00018cc6 T strchr -00018cf3 T strrchr -00018d22 T strspn -00018d5f T strcspn -00018d9c T strpbrk -00018dd3 T strstr -00018e0c T strlen -00018e2f T strtok -00018eb2 T memcpy -00018ed2 T memmove -00018f26 T memcmp -00018f50 T memchr -00018f88 T memset -00018fac t init_bucket_desc -00019015 T malloc -000191a1 T free_s -0001d3c8 d envp_rc -0001d3dc d envp -0001d400 D sys_call_table -0001d570 D NR_syscalls -0001d580 d init_task -0001e580 D current -0001e5a0 D task -0001e6a0 D stack_start -0001e6a8 D current_DOR -0001e6c0 d thisname.1955 -0001e700 d month -0001e740 d last_inode.1935 -0001e744 D start_buffer -0001e760 d crw_table -0001e780 d ioctl_table -0001e7a0 d floppy_type -0001e860 d cur_spec1 -0001e864 d cur_rate -0001e868 d floppy -0001e86c d current_track -0001e870 d callable.1844 -0001e880 D tty_table -00020da0 D table_list -00020dc0 d quotient -00020de0 D _ctype -00020f00 D bucket_dir -00020f50 B __bss_start -00020f50 D _edata -00020f60 b printbuf -00021360 b memory_end -00021364 b buffer_memory_end -00021368 b main_memory_start -00021380 B jiffies -00021384 B startup_time -00021388 B last_task_used_math -0002139c b mon_timer -000213ac b moff_timer -000213c0 b timer_list -000216c0 b next_timer -000216c4 B last_pid -000216e0 b buf -00021ae0 b HIGH_MEMORY -00021b00 b mem_map -00022a00 B inode_table -00023100 B nr_buffers -00023104 b free_list -00023108 b buffer_wait -0002310c B ROOT_DEV -00023140 B blk_dev -00023178 B do_floppy -0002317c B selected -00023184 b recalibrate -00023188 b reset -0002318c b seek -00023190 b reply_buffer -00023197 b current_drive -00023198 b sector -00023199 b head -0002319a b track -0002319b b seek_track -0002319c b command -000231a0 B do_hd -000231c0 B hd_info -000231f0 b recalibrate -000231f4 b reset -000231f8 b NR_HD -00023200 b hd -00023250 B rd_length -00023254 B cnt -00023258 b mouse_input_count -00023259 b mouse_left_down -0002325a b mouse_right_down -0002325b b mouse_left_move -0002325c b mouse_down_move -00023260 b mouse_x_position -00023264 b mouse_y_position -00023268 b fcreate -0002326c b cr_flag.1923 -00023280 B beepcount -00023284 b video_type -00023288 b video_num_columns -0002328c b video_size_row -00023290 b video_num_lines -00023294 b video_page -00023298 b video_mem_start -0002329c b video_mem_end -000232a0 b video_port_reg -000232a2 b video_port_val -000232a4 b video_erase_char -000232a8 b origin -000232ac b scr_end -000232b0 b pos -000232b4 b x -000232b8 b y -000232bc b top -000232c0 b bottom -000232c4 b state -000232c8 b npar -000232e0 b par -00023320 b ques -00023324 b saved_x -00023328 b saved_y -0002332c B free_bucket_desc -00023340 B drive_info -00023360 B user_stack -00024360 B hash_table -00024840 B super_block -00024ba0 B file_table -00024fa0 B request -00025420 B rd_start -00025424 B _ctmp -00025428 B errno -0002542c B ___strtok -00025430 B end -00025430 B _end +00006584 T init_graphics +000065b3 t time_init +000067c8 T main +0000693b t printf +0000698a T init +00006c02 T print_nr +00006c34 T show_task +00006cb9 T show_stat +00006cff T math_state_restore +00006d5d T schedule +00006f0f T sys_pause +00006f25 T sleep_on +00006f84 T interruptible_sleep_on +0000703f T ticks_to_floppy_on +0000710a T floppy_on +00007139 T floppy_off +00007149 T do_floppy_timer +00007341 T do_timer +00007430 T sys_alarm +000074af T sys_getpid +000074bb T sys_getppid +000074c7 T sys_getuid +000074d6 T sys_geteuid +000074e6 T sys_getgid +000074f6 T sys_getegid +00007505 T sys_nice +00007530 T sched_init +000076c0 t bad_sys_call +000076c8 t reschedule +000076d4 T system_call +0000770f t ret_from_sys_call +00007758 T coprocessor_error +0000777a T device_not_available +000077b4 T timer_interrupt +000077ec T sys_execve +000077fc T sys_execve2 +0000780c T sys_fork +00007824 T hd_interrupt +00007860 T floppy_interrupt +00007896 T parallel_interrupt +0000789d t _get_base +000078cf t die +00007ab1 T do_double_fault +00007ad4 T do_general_protection +00007af7 T do_divide_error +00007b1a T do_int3 +00007be2 T do_nmi +00007c05 T do_debug +00007c28 T do_overflow +00007c4b T do_bounds +00007c6e T do_invalid_op +00007c91 T do_device_not_available +00007cb4 T do_coprocessor_segment_overrun +00007cd7 T do_invalid_TSS +00007cfa T do_segment_not_present +00007d1d T do_stack_segment +00007d40 T do_coprocessor_error +00007d74 T do_reserved +00007d97 T trap_init +0000807b T divide_error +00008080 t no_error_code +000080b0 T debug +000080b7 T nmi +000080be T int3 +000080c5 T overflow +000080cc T bounds +000080d3 T invalid_op +000080da T coprocessor_segment_overrun +000080e1 T reserved +000080e8 T irq13 +000080fd T double_fault +00008102 t error_code +00008134 T invalid_TSS +0000813b T segment_not_present +00008142 T stack_segment +00008149 T general_protection +00008150 t _get_base +00008182 T verify_area +000081e9 T copy_mem +00008343 T copy_process +000087f0 T find_empty_process +00008884 T panic +000088bf T printk +00008910 t skip_atoi +0000896b t number +00008bdc T vsprintf +00009068 t get_fs_long +0000907e t put_fs_byte +00009096 t put_fs_long +000090a2 T sys_ftime +000090a8 T sys_break +000090ae T sys_ptrace +000090b4 T sys_stty +000090ba T sys_gtty +000090c0 T sys_rename +000090c6 T sys_prof +000090cc T sys_setregid +00009185 T sys_setgid +0000921c T sys_acct +00009222 T sys_phys +00009228 T sys_lock +0000922e T sys_mpx +00009234 T sys_ulimit +0000923a T sys_time +00009296 T sys_setreuid +00009378 T sys_setuid +0000940d T sys_stime +00009463 T sys_times +00009503 T sys_brk +00009545 T sys_setpgid +0000961e T sys_getpgrp +0000962a T sys_setsid +000096a4 T sys_getgroups +000096aa T sys_setgroups +000096b0 T sys_uname +00009719 T sys_sethostname +0000971f T sys_getrlimit +00009725 T sys_setrlimit +0000972b T sys_getrusage +00009731 T sys_gettimeofday +00009737 T sys_settimeofday +0000973d T sys_umask +00009770 t _get_base +000097a2 t put_fs_long +000097ae T release +00009812 t send_sig +00009891 t kill_session +000098eb T sys_kill +00009a9b t tell_father +00009b25 T do_exit +00009d59 T sys_exit +00009d72 T sys_waitpid +00009f98 t get_fs_byte +00009fa6 t put_fs_byte +00009fbe t put_fs_long +00009fca T sys_sgetmask +00009fd6 T sys_ssetmask +0000a002 T sys_sigpending +0000a008 T sys_sigsuspend +0000a00e t save_old +0000a061 t get_new +0000a0a1 T sys_signal +0000a125 T sys_sigaction +0000a22f T do_signal +0000a41b T kernel_mktime +0000a560 T sys_init_graphics +0000a733 T sys_get_message +0000a75f T sys_repaint +0000a894 t oom +0000a8b3 T get_free_page +0000a8ef T free_page +0000a95e T free_page_tables +0000aa5d T copy_page_tables +0000abde T put_page +0000acca T un_wp_page +0000ad82 T do_wp_page +0000ae0d T get_empty_page +0000ae4d t try_to_share +0000afdf t share_page +0000b093 T do_no_page +0000b1f5 T mem_init +0000b269 T calc_mem +0000b35e T page_fault +0000b395 t get_fs_long +0000b3ab T sys_ustat +0000b3b1 T sys_utime +0000b45e T sys_access +0000b53a T sys_chdir +0000b5ae T sys_chroot +0000b622 T sys_chmod +0000b6bc T sys_chown +0000b737 T sys_open +0000b9da T sys_creat +0000b9fd T sys_close +0000bacc T sys_lseek +0000bbe3 T sys_read +0000bdd6 T sys_write +0000bf84 t lock_inode +0000bfb1 t unlock_inode +0000bfcf T invalidate_inodes +0000c03e T sync_inodes +0000c095 t _bmap +0000c481 T bmap +0000c4a4 T create_block +0000c4c7 T iput +0000c636 T get_empty_inode +0000c78b T get_pipe_inode +0000c800 T iget +0000c9c5 t read_inode +0000cbfb T sys_sync +0000cc5e T sync_dev +0000cd57 T invalidate_buffers +0000cdc9 T check_disk_change +0000ce73 t remove_from_queues +0000cf6a t insert_into_queues +0000d02f t find_buffer +0000d097 T get_hash_table +0000d119 T getblk +0000d2b7 T brelse +0000d300 T bread +0000d385 T bread_page +0000d4a7 T breada +0000d59c T buffer_init +0000d6cb t lock_super +0000d6f8 t free_super +0000d73d T get_super +0000d7ac T put_super +0000d87f t read_super +0000dbc2 T sys_umount +0000dd23 T sys_mount +0000de94 T mount_root +0000e0a2 t get_fs_byte +0000e0b0 t put_fs_byte +0000e0c8 T block_write +0000e21a T block_read +0000e345 t get_fs_byte +0000e353 t put_fs_byte +0000e36b t rw_ttyx +0000e3b3 t rw_tty +0000e403 t rw_ram +0000e409 t rw_mem +0000e40f t rw_kmem +0000e415 t rw_port +0000e4af t rw_memory +0000e585 T rw_char +0000e5ef t get_fs_byte +0000e5fd t put_fs_byte +0000e615 T file_read +0000e7c0 T file_write +0000e9ba t put_fs_byte +0000e9d2 t cp_stat +0000eaa9 T sys_stat +0000eaf3 T sys_lstat +0000eb0e T sys_fstat +0000eb6b T sys_readlink +0000eb71 t _get_base +0000eba3 t get_fs_byte +0000ebb1 t get_fs_long +0000ebc7 t put_fs_byte +0000ebdf t put_fs_long +0000ebeb t get_fs +0000ebff t get_ds +0000ec13 t set_fs +0000ec1a T sys_uselib +0000ec20 t create_tables +0000ed6b t count +0000edaa t copy_strings +0000ef66 t change_ldt +0000f0e9 T do_execve +0000fb6b t oom +0000fb8a T do_execve2 +00010755 t get_fs_byte +00010763 t put_fs_byte +0001077b t put_fs_long +00010787 T read_pipe +00010a5c T sys_pipe +00010c5e t get_fs_byte +00010c6c t permission +00010d0d t match +00010d75 t find_entry +000111cf t get_dir +000113bc t dir_namei +0001143b T namei +00011551 T open_namei +000118a4 T sys_mknod +00011ad4 T sys_mkdir +00011e85 t empty_dir +00012063 T sys_rmdir +000123bb T sys_unlink +0001265c T sys_symlink +00012662 T sys_link +000128bc T free_block +00012a2e T new_block +00012bd2 T free_inode +00012d39 T new_inode +00012f13 t dupfd +00012fed T sys_dup2 +00013014 T sys_dup +0001302f T sys_fcntl +0001316e T sys_ioctl +0001323f t free_ind +000132de t free_dind +0001337d T truncate +000134b2 T sys_select +000134b8 t put_fs_byte +000134d0 T sys_getdents +00013696 T sys_sleep +000136d3 T sys_something +000136d9 T sys_getcwd +000138e5 t lock_buffer +00013912 t unlock_buffer +00013b04 t make_request +00013ca8 T ll_rw_block +00013d01 T blk_dev_init +00013d4f t unlock_buffer +00013d84 t end_request +00013e35 T floppy_deselect +00013e6c T floppy_change +00013ef2 t setup_DMA +00013fa8 t output_byte +0001401e t result +000140db t bad_flp_intr +0001413a t rw_interrupt +00014229 T setup_rw_floppy +000142ea t seek_interrupt +00014343 t transfer +00014478 t recal_interrupt +000144c2 T unexpected_floppy_interrupt +00014507 t recalibrate_floppy +00014569 t reset_interrupt +000145ae t reset_floppy +0001462b t floppy_on_interrupt +00014696 t do_fd_request +0001489a T floppy_init +000148ec t unlock_buffer +00014921 t end_request +000149c0 T sys_setup +00014d73 t controller_ready +00014e07 t hd_out +00014ef4 t drive_busy +00014f5a t reset_controller +00014fd7 t reset_hd +0001506f T unexpected_hd_interrupt +00015082 t bad_rw_intr +000150c0 t read_intr +000151e6 t recal_intr +00015200 t do_hd_request +00015501 T hd_init +0001557b t unlock_buffer +000155b0 t end_request +0001564f t do_rd_request +00015785 T rd_init +000157db T rd_load +00015a87 t get_fs_byte +00015a95 t put_fs_byte +00015aad T tty_init +00015abe T tty_intr +00015b32 t sleep_if_empty +00015b6a t sleep_if_full +00015bde T copy_to_cooked +00016199 T tty_read +00016507 T tty_write +00016719 T do_tty_interrupt +00016741 T chr_dev_init +00016742 T readmouse +00016916 T post_message +00016971 t gotoxy +000169bf t set_origin +00016a25 t scrup +00016c15 t scrdown +00016d0c t lf +00016d42 t ri +00016d78 t cr +00016d99 t del +00016dcb t csi_J +00016e5c t csi_K +00016f0e T csi_m +00016f75 t set_cursor +00016fdb t respond +00017033 t insert_char +00017096 t insert_line +000170da t delete_char +00017138 t delete_line +0001717c t csi_at +000171ba t csi_L +000171f8 t csi_P +00017236 t csi_M +00017274 t save_cur +00017289 t restore_cur +000172a8 T con_write +00017936 T con_init +00017c1b T sysbeepstop +00017c44 t sysbeep +00017ca2 t mode +00017ca3 t leds +00017ca4 t e0 +00017ca5 T keyboard_interrupt +00017cce t e0_e1 +00017cf9 t set_e0 +00017d02 t set_e1 +00017d0b t put_queue +00017d44 t ctrl +00017d5c t unctrl +00017d60 t unalt +00017d76 t lshift +00017d7e t unlshift +00017d86 t rshift +00017d8e t unrshift +00017d96 t caps +00017db8 t set_leds +00017dce t uncaps +00017dd6 t scroll +00017ddf t num +00017de8 t cursor +00017e08 t cur2 +00017e31 t cur +00017e3d t ok_cur +00017e4b t num_table +00017e58 t cur_table +00017e65 t func +00017e82 t ok_func +00017e95 t end_func +00017e96 t func_table +00017ec6 t key_map +00017f27 t shift_map +00017fe9 t do_self +00018051 t none +00018052 t minus +00018067 t key_table +00018467 t kb_wait +00018470 t reboot +00018482 t die +00018484 t init +000184f9 T rs_init +0001857c T rs_write +000185cc T rs1_interrupt +000185d4 T rs2_interrupt +000185d9 t rs_int +000185f0 t rep_int +0001860d t end +0001861b t jmp_table +0001862c t modem_status +00018634 t line_status +0001863c t read_char +000186c3 t get_fs_byte +000186d1 t get_fs_long +000186e7 t put_fs_byte +000186ff t put_fs_long +0001870b t change_speed +00018789 t flush +0001879b t send_break +0001879c t get_termios +000187f8 t set_termios +00018848 t get_termio +00018910 t set_termio +000189d4 T tty_ioctl +00018cd2 T mouse_interrupt +00018d1e t get_fs_byte +00018d2c T math_emulate +00018e0f T math_error +00018e2f T _exit +00018e3f T open +00018e88 T close +00018efc T dup +00018f33 T setsid +00018f62 T execve +00018fff T strcpy +0001901b T strncpy +00019040 T strcat +0001906b T strncat +000190a0 T strcmp +000190c7 T strncmp +000190f5 T strchr +00019122 T strrchr +00019151 T strspn +0001918e T strcspn +000191cb T strpbrk +00019202 T strstr +0001923b T strlen +0001925e T strtok +000192e1 T memcpy +00019301 T memmove +00019355 T memcmp +0001937f T memchr +000193b7 T memset +000193db t init_bucket_desc +00019444 T malloc +000195d0 T free_s +0001d868 d envp_rc +0001d87c d envp +0001d8a0 D sys_call_table +0001da1c D NR_syscalls +0001da20 d init_task +0001ea20 D current +0001ea40 D task +0001eb40 D stack_start +0001eb48 D current_DOR +0001eb60 d thisname.1960 +0001eba0 d month +0001ebe0 d last_inode.1935 +0001ebe4 D start_buffer +0001ec00 d crw_table +0001ec20 d ioctl_table +0001ec40 d floppy_type +0001ed00 d cur_spec1 +0001ed04 d cur_rate +0001ed08 d floppy +0001ed0c d current_track +0001ed10 d callable.1844 +0001ed20 D tty_table +00021240 D table_list +00021260 d quotient +00021280 D _ctype +000213a0 D bucket_dir +000213f0 B __bss_start +000213f0 D _edata +00021400 b printbuf +00021800 b memory_end +00021804 b buffer_memory_end +00021808 b main_memory_start +00021820 B jiffies +00021824 B startup_time +00021828 B last_task_used_math +0002183c b mon_timer +0002184c b moff_timer +00021860 b timer_list +00021b60 b next_timer +00021b64 B last_pid +00021b80 b buf +00021f80 b ff +00021fa0 b HIGH_MEMORY +00021fc0 b mem_map +00022ec0 B inode_table +000235c0 B nr_buffers +000235c4 b free_list +000235c8 b buffer_wait +000235cc B ROOT_DEV +00023600 B blk_dev +00023638 B do_floppy +0002363c B selected +00023644 b recalibrate +00023648 b reset +0002364c b seek +00023650 b reply_buffer +00023657 b current_drive +00023658 b sector +00023659 b head +0002365a b track +0002365b b seek_track +0002365c b command +00023660 B do_hd +00023680 B hd_info +000236b0 b recalibrate +000236b4 b reset +000236b8 b NR_HD +000236c0 b hd +00023710 B rd_length +00023714 B cnt +00023718 b mouse_input_count +00023719 b mouse_left_down +0002371a b mouse_right_down +0002371b b mouse_left_move +0002371c b mouse_down_move +00023720 b mouse_x_position +00023724 b mouse_y_position +00023728 b fcreate +0002372c b cr_flag.1928 +00023740 B beepcount +00023744 b video_type +00023748 b video_num_columns +0002374c b video_size_row +00023750 b video_num_lines +00023754 b video_page +00023758 b video_mem_start +0002375c b video_mem_end +00023760 b video_port_reg +00023762 b video_port_val +00023764 b video_erase_char +00023768 b origin +0002376c b scr_end +00023770 b pos +00023774 b x +00023778 b y +0002377c b top +00023780 b bottom +00023784 b state +00023788 b npar +000237a0 b par +000237e0 b ques +000237e4 b saved_x +000237e8 b saved_y +000237ec B free_bucket_desc +00023800 B headd +00023820 B drive_info +00023840 B user_stack +00024840 B hash_table +00024d20 B super_block +00025080 B file_table +00025480 B request +00025900 B rd_start +00025904 B _ctmp +00025908 B errno +0002590c B ___strtok +00025910 B end +00025910 B _end diff --git a/linux-0.11-lab/0/linux/System.map.2 b/linux-0.11-lab/0/linux/System.map.2 index 8ddc59c..6625959 100644 --- a/linux-0.11-lab/0/linux/System.map.2 +++ b/linux-0.11-lab/0/linux/System.map.2 @@ -20,7 +20,7 @@ kernel/chr_drv/chr_drv.a(rs_io.o) kernel/chr_drv/chr_drv.a(serial.o) (rs1_interrupt) kernel/chr_drv/chr_drv.a(tty_ioctl.o) fs/fs.o (tty_ioctl) -kernel/chr_drv/chr_drv.a(mouse.o) +kernel/chr_drv/chr_drv.a(mouse.2.o) kernel/chr_drv/chr_drv.a(console.o) (mouse_interrupt) kernel/math/math.a(math_emulate.o) kernel/kernel.o (math_emulate) @@ -41,6 +41,7 @@ lib/lib.a(malloc.o) fs/fs.o (malloc) 公共符号 大小 文件 errno 0x4 lib/lib.a(errno.o) +headd 0x4 init/main.o hash_table 0x4cc fs/fs.o ___strtok 0x4 lib/lib.a(string.o) rd_start 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) @@ -207,7 +208,7 @@ LOAD lib/lib.a *(.iplt) .iplt 0x0000000000000000 0x0 boot/head.o -.text 0x0000000000000000 0x19318 +.text 0x0000000000000000 0x19747 *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) @@ -219,342 +220,346 @@ LOAD lib/lib.a 0x0000000000005000 tmp_floppy_area 0x00000000000054c0 idt 0x0000000000005cc0 gdt - .text 0x00000000000064c0 0x744 init/main.o + .text 0x00000000000064c0 0x773 init/main.o 0x00000000000064c0 fork 0x00000000000064ef pause 0x000000000000651e setup 0x0000000000006555 sync - 0x0000000000006799 main - 0x000000000000695b init - 0x0000000000006bd3 print_nr - .text 0x0000000000006c04 0x392c kernel/kernel.o - 0x0000000000006c04 show_task - 0x0000000000006c89 show_stat - 0x0000000000006ccf math_state_restore - 0x0000000000006d2d schedule - 0x0000000000006edf sys_pause - 0x0000000000006ef5 sleep_on - 0x0000000000006f54 interruptible_sleep_on - 0x0000000000006fe7 wake_up - 0x000000000000700f ticks_to_floppy_on - 0x00000000000070da floppy_on - 0x0000000000007109 floppy_off - 0x0000000000007119 do_floppy_timer - 0x00000000000071ed add_timer - 0x0000000000007311 do_timer - 0x0000000000007400 sys_alarm - 0x000000000000747f sys_getpid - 0x000000000000748b sys_getppid - 0x0000000000007497 sys_getuid - 0x00000000000074a6 sys_geteuid - 0x00000000000074b6 sys_getgid - 0x00000000000074c6 sys_getegid - 0x00000000000074d5 sys_nice - 0x0000000000007500 sched_init - 0x00000000000076a4 system_call - 0x0000000000007728 coprocessor_error - 0x000000000000774a device_not_available - 0x0000000000007784 timer_interrupt - 0x00000000000077bc sys_execve - 0x00000000000077cc sys_execve2 - 0x00000000000077dc sys_fork - 0x00000000000077f4 hd_interrupt - 0x0000000000007830 floppy_interrupt - 0x0000000000007866 parallel_interrupt - 0x0000000000007a81 do_double_fault - 0x0000000000007aa4 do_general_protection - 0x0000000000007ac7 do_divide_error - 0x0000000000007aea do_int3 - 0x0000000000007bb2 do_nmi - 0x0000000000007bd5 do_debug - 0x0000000000007bf8 do_overflow - 0x0000000000007c1b do_bounds - 0x0000000000007c3e do_invalid_op - 0x0000000000007c61 do_device_not_available - 0x0000000000007c84 do_coprocessor_segment_overrun - 0x0000000000007ca7 do_invalid_TSS - 0x0000000000007cca do_segment_not_present - 0x0000000000007ced do_stack_segment - 0x0000000000007d10 do_coprocessor_error - 0x0000000000007d44 do_reserved - 0x0000000000007d67 trap_init - 0x000000000000804b divide_error - 0x0000000000008080 debug - 0x0000000000008087 nmi - 0x000000000000808e int3 - 0x0000000000008095 overflow - 0x000000000000809c bounds - 0x00000000000080a3 invalid_op - 0x00000000000080aa coprocessor_segment_overrun - 0x00000000000080b1 reserved - 0x00000000000080b8 irq13 - 0x00000000000080cd double_fault - 0x0000000000008104 invalid_TSS - 0x000000000000810b segment_not_present - 0x0000000000008112 stack_segment - 0x0000000000008119 general_protection - 0x0000000000008152 verify_area - 0x00000000000081b9 copy_mem - 0x0000000000008313 copy_process - 0x00000000000087c0 find_empty_process - 0x0000000000008854 panic - 0x000000000000888f printk - 0x0000000000008bac vsprintf - 0x0000000000009072 sys_ftime - 0x0000000000009078 sys_break - 0x000000000000907e sys_ptrace - 0x0000000000009084 sys_stty - 0x000000000000908a sys_gtty - 0x0000000000009090 sys_rename - 0x0000000000009096 sys_prof - 0x000000000000909c sys_setregid - 0x0000000000009155 sys_setgid - 0x00000000000091ec sys_acct - 0x00000000000091f2 sys_phys - 0x00000000000091f8 sys_lock - 0x00000000000091fe sys_mpx - 0x0000000000009204 sys_ulimit - 0x000000000000920a sys_time - 0x0000000000009266 sys_setreuid - 0x0000000000009348 sys_setuid - 0x00000000000093dd sys_stime - 0x0000000000009433 sys_times - 0x00000000000094d3 sys_brk - 0x0000000000009515 sys_setpgid - 0x00000000000095ee sys_getpgrp - 0x00000000000095fa sys_setsid - 0x0000000000009674 sys_getgroups - 0x000000000000967a sys_setgroups - 0x0000000000009680 sys_uname - 0x00000000000096e9 sys_sethostname - 0x00000000000096ef sys_getrlimit - 0x00000000000096f5 sys_setrlimit - 0x00000000000096fb sys_getrusage - 0x0000000000009701 sys_gettimeofday - 0x0000000000009707 sys_settimeofday - 0x000000000000970d sys_umask - 0x000000000000977e release - 0x00000000000098bb sys_kill - 0x0000000000009af5 do_exit - 0x0000000000009d29 sys_exit - 0x0000000000009d42 sys_waitpid - 0x0000000000009f9a sys_sgetmask - 0x0000000000009fa6 sys_ssetmask - 0x0000000000009fd2 sys_sigpending - 0x0000000000009fd8 sys_sigsuspend - 0x000000000000a071 sys_signal - 0x000000000000a0f5 sys_sigaction - 0x000000000000a1ff do_signal - 0x000000000000a3eb kernel_mktime - .text 0x000000000000a530 0xb01 mm/mm.o - 0x000000000000a54f get_free_page - 0x000000000000a58b free_page - 0x000000000000a5fa free_page_tables - 0x000000000000a6f9 copy_page_tables - 0x000000000000a87a put_page - 0x000000000000a966 un_wp_page - 0x000000000000aa1e do_wp_page - 0x000000000000aa50 write_verify - 0x000000000000aaa9 get_empty_page - 0x000000000000ad2f do_no_page - 0x000000000000ae91 mem_init - 0x000000000000af05 calc_mem - 0x000000000000affa page_fault - .text 0x000000000000b031 0x8550 fs/fs.o - 0x000000000000b047 sys_ustat - 0x000000000000b04d sys_utime - 0x000000000000b0fa sys_access - 0x000000000000b1d6 sys_chdir - 0x000000000000b24a sys_chroot - 0x000000000000b2be sys_chmod - 0x000000000000b358 sys_chown - 0x000000000000b3d3 sys_open - 0x000000000000b676 sys_creat - 0x000000000000b699 sys_close - 0x000000000000b768 sys_lseek - 0x000000000000b87f sys_read - 0x000000000000ba72 sys_write - 0x000000000000bc6b invalidate_inodes - 0x000000000000bcda sync_inodes - 0x000000000000c11d bmap - 0x000000000000c140 create_block - 0x000000000000c163 iput - 0x000000000000c2d2 get_empty_inode - 0x000000000000c427 get_pipe_inode - 0x000000000000c49c iget - 0x000000000000c897 sys_sync - 0x000000000000c8fa sync_dev - 0x000000000000c9f3 invalidate_buffers - 0x000000000000ca65 check_disk_change - 0x000000000000cd33 get_hash_table - 0x000000000000cdb5 getblk - 0x000000000000cf53 brelse - 0x000000000000cf9c bread - 0x000000000000d021 bread_page - 0x000000000000d143 breada - 0x000000000000d238 buffer_init - 0x000000000000d3d9 get_super - 0x000000000000d448 put_super - 0x000000000000d85e sys_umount - 0x000000000000d9bf sys_mount - 0x000000000000db30 mount_root - 0x000000000000dd64 block_write - 0x000000000000deb6 block_read - 0x000000000000e221 rw_char - 0x000000000000e2b1 file_read - 0x000000000000e45c file_write - 0x000000000000e745 sys_stat - 0x000000000000e78f sys_lstat - 0x000000000000e7aa sys_fstat - 0x000000000000e807 sys_readlink - 0x000000000000e8b6 sys_uselib - 0x000000000000ed85 do_execve - 0x000000000000f826 do_execve2 - 0x0000000000010423 read_pipe - 0x0000000000010579 write_pipe - 0x00000000000106f8 sys_pipe - 0x00000000000110d7 namei - 0x00000000000111ed open_namei - 0x0000000000011540 sys_mknod - 0x0000000000011770 sys_mkdir - 0x0000000000011cff sys_rmdir - 0x0000000000012057 sys_unlink - 0x00000000000122f8 sys_symlink - 0x00000000000122fe sys_link - 0x0000000000012558 free_block - 0x00000000000126ca new_block - 0x000000000001286e free_inode - 0x00000000000129d5 new_inode - 0x0000000000012c89 sys_dup2 - 0x0000000000012cb0 sys_dup - 0x0000000000012ccb sys_fcntl - 0x0000000000012e0a sys_ioctl - 0x0000000000013019 truncate - 0x000000000001314e sys_select - 0x000000000001316c sys_getdents - 0x0000000000013332 sys_sleep - 0x000000000001336f sys_something - 0x0000000000013375 sys_getcwd - .text 0x0000000000013581 0x46a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - 0x0000000000013944 ll_rw_block - 0x000000000001399d blk_dev_init - .text 0x00000000000139eb 0xb9d kernel/blk_drv/blk_drv.a(floppy.o) - 0x0000000000013ad1 floppy_deselect - 0x0000000000013b08 floppy_change - 0x0000000000013ec5 setup_rw_floppy - 0x000000000001415e unexpected_floppy_interrupt - 0x0000000000014536 floppy_init - .text 0x0000000000014588 0xc8f kernel/blk_drv/blk_drv.a(hd.o) - 0x000000000001465c sys_setup - 0x0000000000014d0b unexpected_hd_interrupt - 0x000000000001519d hd_init - .text 0x0000000000015217 0x50c kernel/blk_drv/blk_drv.a(ramdisk.o) - 0x0000000000015421 rd_init - 0x0000000000015477 rd_load - .text 0x0000000000015723 0xe46 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x0000000000015749 tty_init - 0x000000000001575a tty_intr - 0x0000000000015867 wait_for_keypress - 0x000000000001587a copy_to_cooked - 0x0000000000015e35 tty_read - 0x00000000000161a3 tty_write - 0x00000000000163b5 do_tty_interrupt - 0x00000000000163dd chr_dev_init - 0x00000000000163de readmouse - .text 0x0000000000016569 0x1331 kernel/chr_drv/chr_drv.a(console.o) - 0x0000000000016b06 csi_m - 0x0000000000016ea0 con_write - 0x000000000001752e con_init - 0x0000000000017813 sysbeepstop - .text 0x000000000001789a 0x7e2 kernel/chr_drv/chr_drv.a(keyboard.2.o) - 0x000000000001789d keyboard_interrupt - .text 0x000000000001807c 0x145 kernel/chr_drv/chr_drv.a(serial.o) - 0x00000000000180f1 rs_init - 0x0000000000018174 rs_write - *fill* 0x00000000000181c1 0x3 - .text 0x00000000000181c4 0xf7 kernel/chr_drv/chr_drv.a(rs_io.o) - 0x00000000000181c4 rs1_interrupt - 0x00000000000181cc rs2_interrupt - .text 0x00000000000182bb 0x60f kernel/chr_drv/chr_drv.a(tty_ioctl.o) - 0x00000000000185cc tty_ioctl - .text 0x00000000000188ca 0x25 kernel/chr_drv/chr_drv.a(mouse.o) - 0x00000000000188ca mouse_interrupt - .text 0x00000000000188ef 0x111 kernel/math/math.a(math_emulate.o) - 0x00000000000188fd math_emulate - 0x00000000000189e0 math_error - .text 0x0000000000018a00 0x0 lib/lib.a(ctype.o) - .text 0x0000000000018a00 0x10 lib/lib.a(_exit.o) - 0x0000000000018a00 _exit - .text 0x0000000000018a10 0x49 lib/lib.a(open.o) - 0x0000000000018a10 open - .text 0x0000000000018a59 0x37 lib/lib.a(close.o) - 0x0000000000018a59 close - .text 0x0000000000018a90 0x0 lib/lib.a(errno.o) - .text 0x0000000000018a90 0x3d lib/lib.a(write.o) - 0x0000000000018a90 write - .text 0x0000000000018acd 0x37 lib/lib.a(dup.o) - 0x0000000000018acd dup - .text 0x0000000000018b04 0x2f lib/lib.a(setsid.o) - 0x0000000000018b04 setsid - .text 0x0000000000018b33 0x3d lib/lib.a(execve.o) - 0x0000000000018b33 execve - .text 0x0000000000018b70 0x60 lib/lib.a(wait.o) - 0x0000000000018b70 waitpid - 0x0000000000018bad wait - .text 0x0000000000018bd0 0x3dc lib/lib.a(string.o) - 0x0000000000018bd0 strcpy - 0x0000000000018bec strncpy - 0x0000000000018c11 strcat - 0x0000000000018c3c strncat - 0x0000000000018c71 strcmp - 0x0000000000018c98 strncmp - 0x0000000000018cc6 strchr - 0x0000000000018cf3 strrchr - 0x0000000000018d22 strspn - 0x0000000000018d5f strcspn - 0x0000000000018d9c strpbrk - 0x0000000000018dd3 strstr - 0x0000000000018e0c strlen - 0x0000000000018e2f strtok - 0x0000000000018eb2 memcpy - 0x0000000000018ed2 memmove - 0x0000000000018f26 memcmp - 0x0000000000018f50 memchr - 0x0000000000018f88 memset - .text 0x0000000000018fac 0x36c lib/lib.a(malloc.o) - 0x0000000000019015 malloc - 0x00000000000191a1 free_s + 0x0000000000006584 init_graphics + 0x00000000000067c8 main + 0x000000000000698a init + 0x0000000000006c02 print_nr + *fill* 0x0000000000006c33 0x1 + .text 0x0000000000006c34 0x3c60 kernel/kernel.o + 0x0000000000006c34 show_task + 0x0000000000006cb9 show_stat + 0x0000000000006cff math_state_restore + 0x0000000000006d5d schedule + 0x0000000000006f0f sys_pause + 0x0000000000006f25 sleep_on + 0x0000000000006f84 interruptible_sleep_on + 0x0000000000007017 wake_up + 0x000000000000703f ticks_to_floppy_on + 0x000000000000710a floppy_on + 0x0000000000007139 floppy_off + 0x0000000000007149 do_floppy_timer + 0x000000000000721d add_timer + 0x0000000000007341 do_timer + 0x0000000000007430 sys_alarm + 0x00000000000074af sys_getpid + 0x00000000000074bb sys_getppid + 0x00000000000074c7 sys_getuid + 0x00000000000074d6 sys_geteuid + 0x00000000000074e6 sys_getgid + 0x00000000000074f6 sys_getegid + 0x0000000000007505 sys_nice + 0x0000000000007530 sched_init + 0x00000000000076d4 system_call + 0x0000000000007758 coprocessor_error + 0x000000000000777a device_not_available + 0x00000000000077b4 timer_interrupt + 0x00000000000077ec sys_execve + 0x00000000000077fc sys_execve2 + 0x000000000000780c sys_fork + 0x0000000000007824 hd_interrupt + 0x0000000000007860 floppy_interrupt + 0x0000000000007896 parallel_interrupt + 0x0000000000007ab1 do_double_fault + 0x0000000000007ad4 do_general_protection + 0x0000000000007af7 do_divide_error + 0x0000000000007b1a do_int3 + 0x0000000000007be2 do_nmi + 0x0000000000007c05 do_debug + 0x0000000000007c28 do_overflow + 0x0000000000007c4b do_bounds + 0x0000000000007c6e do_invalid_op + 0x0000000000007c91 do_device_not_available + 0x0000000000007cb4 do_coprocessor_segment_overrun + 0x0000000000007cd7 do_invalid_TSS + 0x0000000000007cfa do_segment_not_present + 0x0000000000007d1d do_stack_segment + 0x0000000000007d40 do_coprocessor_error + 0x0000000000007d74 do_reserved + 0x0000000000007d97 trap_init + 0x000000000000807b divide_error + 0x00000000000080b0 debug + 0x00000000000080b7 nmi + 0x00000000000080be int3 + 0x00000000000080c5 overflow + 0x00000000000080cc bounds + 0x00000000000080d3 invalid_op + 0x00000000000080da coprocessor_segment_overrun + 0x00000000000080e1 reserved + 0x00000000000080e8 irq13 + 0x00000000000080fd double_fault + 0x0000000000008134 invalid_TSS + 0x000000000000813b segment_not_present + 0x0000000000008142 stack_segment + 0x0000000000008149 general_protection + 0x0000000000008182 verify_area + 0x00000000000081e9 copy_mem + 0x0000000000008343 copy_process + 0x00000000000087f0 find_empty_process + 0x0000000000008884 panic + 0x00000000000088bf printk + 0x0000000000008bdc vsprintf + 0x00000000000090a2 sys_ftime + 0x00000000000090a8 sys_break + 0x00000000000090ae sys_ptrace + 0x00000000000090b4 sys_stty + 0x00000000000090ba sys_gtty + 0x00000000000090c0 sys_rename + 0x00000000000090c6 sys_prof + 0x00000000000090cc sys_setregid + 0x0000000000009185 sys_setgid + 0x000000000000921c sys_acct + 0x0000000000009222 sys_phys + 0x0000000000009228 sys_lock + 0x000000000000922e sys_mpx + 0x0000000000009234 sys_ulimit + 0x000000000000923a sys_time + 0x0000000000009296 sys_setreuid + 0x0000000000009378 sys_setuid + 0x000000000000940d sys_stime + 0x0000000000009463 sys_times + 0x0000000000009503 sys_brk + 0x0000000000009545 sys_setpgid + 0x000000000000961e sys_getpgrp + 0x000000000000962a sys_setsid + 0x00000000000096a4 sys_getgroups + 0x00000000000096aa sys_setgroups + 0x00000000000096b0 sys_uname + 0x0000000000009719 sys_sethostname + 0x000000000000971f sys_getrlimit + 0x0000000000009725 sys_setrlimit + 0x000000000000972b sys_getrusage + 0x0000000000009731 sys_gettimeofday + 0x0000000000009737 sys_settimeofday + 0x000000000000973d sys_umask + 0x00000000000097ae release + 0x00000000000098eb sys_kill + 0x0000000000009b25 do_exit + 0x0000000000009d59 sys_exit + 0x0000000000009d72 sys_waitpid + 0x0000000000009fca sys_sgetmask + 0x0000000000009fd6 sys_ssetmask + 0x000000000000a002 sys_sigpending + 0x000000000000a008 sys_sigsuspend + 0x000000000000a0a1 sys_signal + 0x000000000000a125 sys_sigaction + 0x000000000000a22f do_signal + 0x000000000000a41b kernel_mktime + 0x000000000000a560 sys_init_graphics + 0x000000000000a733 sys_get_message + 0x000000000000a75f sys_repaint + .text 0x000000000000a894 0xb01 mm/mm.o + 0x000000000000a8b3 get_free_page + 0x000000000000a8ef free_page + 0x000000000000a95e free_page_tables + 0x000000000000aa5d copy_page_tables + 0x000000000000abde put_page + 0x000000000000acca un_wp_page + 0x000000000000ad82 do_wp_page + 0x000000000000adb4 write_verify + 0x000000000000ae0d get_empty_page + 0x000000000000b093 do_no_page + 0x000000000000b1f5 mem_init + 0x000000000000b269 calc_mem + 0x000000000000b35e page_fault + .text 0x000000000000b395 0x8550 fs/fs.o + 0x000000000000b3ab sys_ustat + 0x000000000000b3b1 sys_utime + 0x000000000000b45e sys_access + 0x000000000000b53a sys_chdir + 0x000000000000b5ae sys_chroot + 0x000000000000b622 sys_chmod + 0x000000000000b6bc sys_chown + 0x000000000000b737 sys_open + 0x000000000000b9da sys_creat + 0x000000000000b9fd sys_close + 0x000000000000bacc sys_lseek + 0x000000000000bbe3 sys_read + 0x000000000000bdd6 sys_write + 0x000000000000bfcf invalidate_inodes + 0x000000000000c03e sync_inodes + 0x000000000000c481 bmap + 0x000000000000c4a4 create_block + 0x000000000000c4c7 iput + 0x000000000000c636 get_empty_inode + 0x000000000000c78b get_pipe_inode + 0x000000000000c800 iget + 0x000000000000cbfb sys_sync + 0x000000000000cc5e sync_dev + 0x000000000000cd57 invalidate_buffers + 0x000000000000cdc9 check_disk_change + 0x000000000000d097 get_hash_table + 0x000000000000d119 getblk + 0x000000000000d2b7 brelse + 0x000000000000d300 bread + 0x000000000000d385 bread_page + 0x000000000000d4a7 breada + 0x000000000000d59c buffer_init + 0x000000000000d73d get_super + 0x000000000000d7ac put_super + 0x000000000000dbc2 sys_umount + 0x000000000000dd23 sys_mount + 0x000000000000de94 mount_root + 0x000000000000e0c8 block_write + 0x000000000000e21a block_read + 0x000000000000e585 rw_char + 0x000000000000e615 file_read + 0x000000000000e7c0 file_write + 0x000000000000eaa9 sys_stat + 0x000000000000eaf3 sys_lstat + 0x000000000000eb0e sys_fstat + 0x000000000000eb6b sys_readlink + 0x000000000000ec1a sys_uselib + 0x000000000000f0e9 do_execve + 0x000000000000fb8a do_execve2 + 0x0000000000010787 read_pipe + 0x00000000000108dd write_pipe + 0x0000000000010a5c sys_pipe + 0x000000000001143b namei + 0x0000000000011551 open_namei + 0x00000000000118a4 sys_mknod + 0x0000000000011ad4 sys_mkdir + 0x0000000000012063 sys_rmdir + 0x00000000000123bb sys_unlink + 0x000000000001265c sys_symlink + 0x0000000000012662 sys_link + 0x00000000000128bc free_block + 0x0000000000012a2e new_block + 0x0000000000012bd2 free_inode + 0x0000000000012d39 new_inode + 0x0000000000012fed sys_dup2 + 0x0000000000013014 sys_dup + 0x000000000001302f sys_fcntl + 0x000000000001316e sys_ioctl + 0x000000000001337d truncate + 0x00000000000134b2 sys_select + 0x00000000000134d0 sys_getdents + 0x0000000000013696 sys_sleep + 0x00000000000136d3 sys_something + 0x00000000000136d9 sys_getcwd + .text 0x00000000000138e5 0x46a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x0000000000013ca8 ll_rw_block + 0x0000000000013d01 blk_dev_init + .text 0x0000000000013d4f 0xb9d kernel/blk_drv/blk_drv.a(floppy.o) + 0x0000000000013e35 floppy_deselect + 0x0000000000013e6c floppy_change + 0x0000000000014229 setup_rw_floppy + 0x00000000000144c2 unexpected_floppy_interrupt + 0x000000000001489a floppy_init + .text 0x00000000000148ec 0xc8f kernel/blk_drv/blk_drv.a(hd.o) + 0x00000000000149c0 sys_setup + 0x000000000001506f unexpected_hd_interrupt + 0x0000000000015501 hd_init + .text 0x000000000001557b 0x50c kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000015785 rd_init + 0x00000000000157db rd_load + .text 0x0000000000015a87 0xeea kernel/chr_drv/chr_drv.a(tty_io.o) + 0x0000000000015aad tty_init + 0x0000000000015abe tty_intr + 0x0000000000015bcb wait_for_keypress + 0x0000000000015bde copy_to_cooked + 0x0000000000016199 tty_read + 0x0000000000016507 tty_write + 0x0000000000016719 do_tty_interrupt + 0x0000000000016741 chr_dev_init + 0x0000000000016742 readmouse + 0x0000000000016916 post_message + .text 0x0000000000016971 0x1331 kernel/chr_drv/chr_drv.a(console.o) + 0x0000000000016f0e csi_m + 0x00000000000172a8 con_write + 0x0000000000017936 con_init + 0x0000000000017c1b sysbeepstop + .text 0x0000000000017ca2 0x7e2 kernel/chr_drv/chr_drv.a(keyboard.2.o) + 0x0000000000017ca5 keyboard_interrupt + .text 0x0000000000018484 0x145 kernel/chr_drv/chr_drv.a(serial.o) + 0x00000000000184f9 rs_init + 0x000000000001857c rs_write + *fill* 0x00000000000185c9 0x3 + .text 0x00000000000185cc 0xf7 kernel/chr_drv/chr_drv.a(rs_io.o) + 0x00000000000185cc rs1_interrupt + 0x00000000000185d4 rs2_interrupt + .text 0x00000000000186c3 0x60f kernel/chr_drv/chr_drv.a(tty_ioctl.o) + 0x00000000000189d4 tty_ioctl + .text 0x0000000000018cd2 0x4c kernel/chr_drv/chr_drv.a(mouse.2.o) + 0x0000000000018cd2 mouse_interrupt + .text 0x0000000000018d1e 0x111 kernel/math/math.a(math_emulate.o) + 0x0000000000018d2c math_emulate + 0x0000000000018e0f math_error + .text 0x0000000000018e2f 0x0 lib/lib.a(ctype.o) + .text 0x0000000000018e2f 0x10 lib/lib.a(_exit.o) + 0x0000000000018e2f _exit + .text 0x0000000000018e3f 0x49 lib/lib.a(open.o) + 0x0000000000018e3f open + .text 0x0000000000018e88 0x37 lib/lib.a(close.o) + 0x0000000000018e88 close + .text 0x0000000000018ebf 0x0 lib/lib.a(errno.o) + .text 0x0000000000018ebf 0x3d lib/lib.a(write.o) + 0x0000000000018ebf write + .text 0x0000000000018efc 0x37 lib/lib.a(dup.o) + 0x0000000000018efc dup + .text 0x0000000000018f33 0x2f lib/lib.a(setsid.o) + 0x0000000000018f33 setsid + .text 0x0000000000018f62 0x3d lib/lib.a(execve.o) + 0x0000000000018f62 execve + .text 0x0000000000018f9f 0x60 lib/lib.a(wait.o) + 0x0000000000018f9f waitpid + 0x0000000000018fdc wait + .text 0x0000000000018fff 0x3dc lib/lib.a(string.o) + 0x0000000000018fff strcpy + 0x000000000001901b strncpy + 0x0000000000019040 strcat + 0x000000000001906b strncat + 0x00000000000190a0 strcmp + 0x00000000000190c7 strncmp + 0x00000000000190f5 strchr + 0x0000000000019122 strrchr + 0x0000000000019151 strspn + 0x000000000001918e strcspn + 0x00000000000191cb strpbrk + 0x0000000000019202 strstr + 0x000000000001923b strlen + 0x000000000001925e strtok + 0x00000000000192e1 memcpy + 0x0000000000019301 memmove + 0x0000000000019355 memcmp + 0x000000000001937f memchr + 0x00000000000193b7 memset + .text 0x00000000000193db 0x36c lib/lib.a(malloc.o) + 0x0000000000019444 malloc + 0x00000000000195d0 free_s *(.gnu.warning) .fini *(SORT(.fini)) - 0x0000000000019318 PROVIDE (__etext, .) - 0x0000000000019318 PROVIDE (_etext, .) - 0x0000000000019318 PROVIDE (etext, .) + 0x0000000000019747 PROVIDE (__etext, .) + 0x0000000000019747 PROVIDE (_etext, .) + 0x0000000000019747 PROVIDE (etext, .) -.rodata 0x0000000000019318 0x14cf +.rodata 0x0000000000019748 0x14cb *(.rodata .rodata.* .gnu.linkonce.r.*) - .rodata 0x0000000000019318 0xc9 init/main.o - *fill* 0x00000000000193e1 0x3 - .rodata 0x00000000000193e4 0x438 kernel/kernel.o - .rodata 0x000000000001981c 0x18f mm/mm.o - *fill* 0x00000000000199ab 0x1 - .rodata 0x00000000000199ac 0x63c fs/fs.o - .rodata 0x0000000000019fe8 0x7a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - *fill* 0x000000000001a062 0x2 - .rodata 0x000000000001a064 0x133 kernel/blk_drv/blk_drv.a(floppy.o) - *fill* 0x000000000001a197 0x1 - .rodata 0x000000000001a198 0x19b kernel/blk_drv/blk_drv.a(hd.o) - *fill* 0x000000000001a333 0x1 - .rodata 0x000000000001a334 0x188 kernel/blk_drv/blk_drv.a(ramdisk.o) - .rodata 0x000000000001a4bc 0x3 kernel/chr_drv/chr_drv.a(tty_io.o) - *fill* 0x000000000001a4bf 0x1 - .rodata 0x000000000001a4c0 0x17d kernel/chr_drv/chr_drv.a(console.o) - *fill* 0x000000000001a63d 0x3 - .rodata 0x000000000001a640 0x80 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .rodata 0x000000000001a6c0 0x52 kernel/math/math.a(math_emulate.o) - *fill* 0x000000000001a712 0x2 - .rodata 0x000000000001a714 0xd3 lib/lib.a(malloc.o) + .rodata 0x0000000000019748 0xc9 init/main.o + *fill* 0x0000000000019811 0x3 + .rodata 0x0000000000019814 0x438 kernel/kernel.o + .rodata 0x0000000000019c4c 0x18f mm/mm.o + *fill* 0x0000000000019ddb 0x1 + .rodata 0x0000000000019ddc 0x63c fs/fs.o + .rodata 0x000000000001a418 0x7a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + *fill* 0x000000000001a492 0x2 + .rodata 0x000000000001a494 0x133 kernel/blk_drv/blk_drv.a(floppy.o) + *fill* 0x000000000001a5c7 0x1 + .rodata 0x000000000001a5c8 0x19b kernel/blk_drv/blk_drv.a(hd.o) + *fill* 0x000000000001a763 0x1 + .rodata 0x000000000001a764 0x188 kernel/blk_drv/blk_drv.a(ramdisk.o) + .rodata 0x000000000001a8ec 0x17d kernel/chr_drv/chr_drv.a(console.o) + *fill* 0x000000000001aa69 0x3 + .rodata 0x000000000001aa6c 0x80 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .rodata 0x000000000001aaec 0x52 kernel/math/math.a(math_emulate.o) + *fill* 0x000000000001ab3e 0x2 + .rodata 0x000000000001ab40 0xd3 lib/lib.a(malloc.o) .rodata1 *(.rodata1) @@ -562,52 +567,52 @@ LOAD lib/lib.a .eh_frame_hdr *(.eh_frame_hdr) -.eh_frame 0x000000000001a7e8 0x2bbc +.eh_frame 0x000000000001ac14 0x2c3c *(.eh_frame) - .eh_frame 0x000000000001a7e8 0x108 init/main.o - .eh_frame 0x000000000001a8f0 0xb04 kernel/kernel.o - 0xbf4 (size before relaxing) - .eh_frame 0x000000000001b3f4 0x194 mm/mm.o + .eh_frame 0x000000000001ac14 0x120 init/main.o + .eh_frame 0x000000000001ad34 0xb54 kernel/kernel.o + 0xc5c (size before relaxing) + .eh_frame 0x000000000001b888 0x194 mm/mm.o 0x1ac (size before relaxing) - .eh_frame 0x000000000001b588 0xea4 fs/fs.o + .eh_frame 0x000000000001ba1c 0xea4 fs/fs.o 0x1054 (size before relaxing) - .eh_frame 0x000000000001c42c 0x98 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .eh_frame 0x000000000001c8c0 0x98 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) 0xb0 (size before relaxing) - .eh_frame 0x000000000001c4c4 0x23c kernel/blk_drv/blk_drv.a(floppy.o) + .eh_frame 0x000000000001c958 0x23c kernel/blk_drv/blk_drv.a(floppy.o) 0x254 (size before relaxing) - .eh_frame 0x000000000001c700 0x1e8 kernel/blk_drv/blk_drv.a(hd.o) + .eh_frame 0x000000000001cb94 0x1e8 kernel/blk_drv/blk_drv.a(hd.o) 0x200 (size before relaxing) - .eh_frame 0x000000000001c8e8 0xac kernel/blk_drv/blk_drv.a(ramdisk.o) + .eh_frame 0x000000000001cd7c 0xac kernel/blk_drv/blk_drv.a(ramdisk.o) 0xc4 (size before relaxing) - .eh_frame 0x000000000001c994 0x148 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x160 (size before relaxing) - .eh_frame 0x000000000001cadc 0x2c0 kernel/chr_drv/chr_drv.a(console.o) + .eh_frame 0x000000000001ce28 0x160 kernel/chr_drv/chr_drv.a(tty_io.o) + 0x178 (size before relaxing) + .eh_frame 0x000000000001cf88 0x2c0 kernel/chr_drv/chr_drv.a(console.o) 0x2d8 (size before relaxing) - .eh_frame 0x000000000001cd9c 0x54 kernel/chr_drv/chr_drv.a(serial.o) + .eh_frame 0x000000000001d248 0x54 kernel/chr_drv/chr_drv.a(serial.o) 0x6c (size before relaxing) - .eh_frame 0x000000000001cdf0 0x148 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .eh_frame 0x000000000001d29c 0x148 kernel/chr_drv/chr_drv.a(tty_ioctl.o) 0x160 (size before relaxing) - .eh_frame 0x000000000001cf38 0x5c kernel/math/math.a(math_emulate.o) + .eh_frame 0x000000000001d3e4 0x5c kernel/math/math.a(math_emulate.o) 0x74 (size before relaxing) - .eh_frame 0x000000000001cf94 0x1c lib/lib.a(_exit.o) + .eh_frame 0x000000000001d440 0x1c lib/lib.a(_exit.o) 0x34 (size before relaxing) - .eh_frame 0x000000000001cfb0 0x24 lib/lib.a(open.o) + .eh_frame 0x000000000001d45c 0x24 lib/lib.a(open.o) 0x3c (size before relaxing) - .eh_frame 0x000000000001cfd4 0x20 lib/lib.a(close.o) + .eh_frame 0x000000000001d480 0x20 lib/lib.a(close.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001cff4 0x20 lib/lib.a(write.o) + .eh_frame 0x000000000001d4a0 0x20 lib/lib.a(write.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001d014 0x20 lib/lib.a(dup.o) + .eh_frame 0x000000000001d4c0 0x20 lib/lib.a(dup.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001d034 0x18 lib/lib.a(setsid.o) + .eh_frame 0x000000000001d4e0 0x18 lib/lib.a(setsid.o) 0x30 (size before relaxing) - .eh_frame 0x000000000001d04c 0x20 lib/lib.a(execve.o) + .eh_frame 0x000000000001d4f8 0x20 lib/lib.a(execve.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001d06c 0x38 lib/lib.a(wait.o) + .eh_frame 0x000000000001d518 0x38 lib/lib.a(wait.o) 0x50 (size before relaxing) - .eh_frame 0x000000000001d0a4 0x2b0 lib/lib.a(string.o) + .eh_frame 0x000000000001d550 0x2b0 lib/lib.a(string.o) 0x2c8 (size before relaxing) - .eh_frame 0x000000000001d354 0x50 lib/lib.a(malloc.o) + .eh_frame 0x000000000001d800 0x50 lib/lib.a(malloc.o) 0x68 (size before relaxing) .gcc_except_table @@ -615,7 +620,7 @@ LOAD lib/lib.a .exception_ranges *(.exception_ranges .exception_ranges*) - 0x000000000001d3a4 . = . + 0x000000000001d850 . = . .eh_frame *(.eh_frame) @@ -633,22 +638,22 @@ LOAD lib/lib.a *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) -.preinit_array 0x000000000001d3a4 0x0 - 0x000000000001d3a4 PROVIDE (__preinit_array_start, .) +.preinit_array 0x000000000001d850 0x0 + 0x000000000001d850 PROVIDE (__preinit_array_start, .) *(.preinit_array) - 0x000000000001d3a4 PROVIDE (__preinit_array_end, .) + 0x000000000001d850 PROVIDE (__preinit_array_end, .) -.init_array 0x000000000001d3a4 0x0 - 0x000000000001d3a4 PROVIDE (__init_array_start, .) +.init_array 0x000000000001d850 0x0 + 0x000000000001d850 PROVIDE (__init_array_start, .) *(SORT(.init_array.*) SORT(.ctors.*)) *(.init_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .ctors) - 0x000000000001d3a4 PROVIDE (__init_array_end, .) + 0x000000000001d850 PROVIDE (__init_array_end, .) -.fini_array 0x000000000001d3a4 0x0 - 0x000000000001d3a4 PROVIDE (__fini_array_start, .) +.fini_array 0x000000000001d850 0x0 + 0x000000000001d850 PROVIDE (__fini_array_start, .) *(SORT(.fini_array.*) SORT(.dtors.*)) *(.fini_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .dtors) - 0x000000000001d3a4 PROVIDE (__fini_array_end, .) + 0x000000000001d850 PROVIDE (__fini_array_end, .) .ctors *crtbegin.o(.ctors) @@ -678,148 +683,150 @@ LOAD lib/lib.a *(.got) *(.igot) -.got.plt 0x000000000001d3a4 0x0 +.got.plt 0x000000000001d850 0x0 *(.got.plt) *(.igot.plt) .igot.plt 0x0000000000000000 0x0 boot/head.o -.data 0x000000000001d3c0 0x3b90 +.data 0x000000000001d860 0x3b90 *(.data .data.* .gnu.linkonce.d.*) - .data 0x000000000001d3c0 0x0 boot/head.o - .data 0x000000000001d3c0 0x28 init/main.o - *fill* 0x000000000001d3e8 0x18 - .data 0x000000000001d400 0x1330 kernel/kernel.o - 0x000000000001d400 sys_call_table - 0x000000000001d570 NR_syscalls - 0x000000000001e580 current - 0x000000000001e5a0 task - 0x000000000001e6a0 stack_start - 0x000000000001e6a8 current_DOR - .data 0x000000000001e730 0x0 mm/mm.o - *fill* 0x000000000001e730 0x10 - .data 0x000000000001e740 0x60 fs/fs.o - 0x000000000001e744 start_buffer - .data 0x000000000001e7a0 0x0 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .data 0x000000000001e7a0 0xcd kernel/blk_drv/blk_drv.a(floppy.o) - *fill* 0x000000000001e86d 0x3 - .data 0x000000000001e870 0x4 kernel/blk_drv/blk_drv.a(hd.o) - .data 0x000000000001e874 0x0 kernel/blk_drv/blk_drv.a(ramdisk.o) - *fill* 0x000000000001e874 0xc - .data 0x000000000001e880 0x2538 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x000000000001e880 tty_table - 0x0000000000020da0 table_list - .data 0x0000000000020db8 0x1 kernel/chr_drv/chr_drv.a(console.o) - .data 0x0000000000020db9 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) - .data 0x0000000000020db9 0x0 kernel/chr_drv/chr_drv.a(serial.o) - .data 0x0000000000020db9 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) - *fill* 0x0000000000020db9 0x7 - .data 0x0000000000020dc0 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .data 0x0000000000020de0 0x0 kernel/chr_drv/chr_drv.a(mouse.o) - .data 0x0000000000020de0 0x0 kernel/math/math.a(math_emulate.o) - .data 0x0000000000020de0 0x101 lib/lib.a(ctype.o) - 0x0000000000020de0 _ctype - .data 0x0000000000020ee1 0x0 lib/lib.a(_exit.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(open.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(close.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(errno.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(write.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(dup.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(setsid.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(execve.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(wait.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(string.o) - *fill* 0x0000000000020ee1 0x1f - .data 0x0000000000020f00 0x50 lib/lib.a(malloc.o) - 0x0000000000020f00 bucket_dir + .data 0x000000000001d860 0x0 boot/head.o + .data 0x000000000001d860 0x28 init/main.o + *fill* 0x000000000001d888 0x18 + .data 0x000000000001d8a0 0x1330 kernel/kernel.o + 0x000000000001d8a0 sys_call_table + 0x000000000001da1c NR_syscalls + 0x000000000001ea20 current + 0x000000000001ea40 task + 0x000000000001eb40 stack_start + 0x000000000001eb48 current_DOR + .data 0x000000000001ebd0 0x0 mm/mm.o + *fill* 0x000000000001ebd0 0x10 + .data 0x000000000001ebe0 0x60 fs/fs.o + 0x000000000001ebe4 start_buffer + .data 0x000000000001ec40 0x0 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .data 0x000000000001ec40 0xcd kernel/blk_drv/blk_drv.a(floppy.o) + *fill* 0x000000000001ed0d 0x3 + .data 0x000000000001ed10 0x4 kernel/blk_drv/blk_drv.a(hd.o) + .data 0x000000000001ed14 0x0 kernel/blk_drv/blk_drv.a(ramdisk.o) + *fill* 0x000000000001ed14 0xc + .data 0x000000000001ed20 0x2538 kernel/chr_drv/chr_drv.a(tty_io.o) + 0x000000000001ed20 tty_table + 0x0000000000021240 table_list + .data 0x0000000000021258 0x1 kernel/chr_drv/chr_drv.a(console.o) + .data 0x0000000000021259 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) + .data 0x0000000000021259 0x0 kernel/chr_drv/chr_drv.a(serial.o) + .data 0x0000000000021259 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) + *fill* 0x0000000000021259 0x7 + .data 0x0000000000021260 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .data 0x0000000000021280 0x0 kernel/chr_drv/chr_drv.a(mouse.2.o) + .data 0x0000000000021280 0x0 kernel/math/math.a(math_emulate.o) + .data 0x0000000000021280 0x101 lib/lib.a(ctype.o) + 0x0000000000021280 _ctype + .data 0x0000000000021381 0x0 lib/lib.a(_exit.o) + .data 0x0000000000021381 0x0 lib/lib.a(open.o) + .data 0x0000000000021381 0x0 lib/lib.a(close.o) + .data 0x0000000000021381 0x0 lib/lib.a(errno.o) + .data 0x0000000000021381 0x0 lib/lib.a(write.o) + .data 0x0000000000021381 0x0 lib/lib.a(dup.o) + .data 0x0000000000021381 0x0 lib/lib.a(setsid.o) + .data 0x0000000000021381 0x0 lib/lib.a(execve.o) + .data 0x0000000000021381 0x0 lib/lib.a(wait.o) + .data 0x0000000000021381 0x0 lib/lib.a(string.o) + *fill* 0x0000000000021381 0x1f + .data 0x00000000000213a0 0x50 lib/lib.a(malloc.o) + 0x00000000000213a0 bucket_dir .data1 *(.data1) - 0x0000000000020f50 _edata = . - 0x0000000000020f50 PROVIDE (edata, .) - 0x0000000000020f50 . = . - 0x0000000000020f50 __bss_start = . + 0x00000000000213f0 _edata = . + 0x00000000000213f0 PROVIDE (edata, .) + 0x00000000000213f0 . = . + 0x00000000000213f0 __bss_start = . -.bss 0x0000000000020f60 0x44d0 +.bss 0x0000000000021400 0x4510 *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) - .bss 0x0000000000020f60 0x0 boot/head.o - .bss 0x0000000000020f60 0x40c init/main.o - *fill* 0x000000000002136c 0x14 - .bss 0x0000000000021380 0x760 kernel/kernel.o - 0x0000000000021380 jiffies - 0x0000000000021384 startup_time - 0x0000000000021388 last_task_used_math - 0x00000000000216c4 last_pid - .bss 0x0000000000021ae0 0xf20 mm/mm.o - .bss 0x0000000000022a00 0x710 fs/fs.o - 0x0000000000022a00 inode_table - 0x0000000000023100 nr_buffers - 0x000000000002310c ROOT_DEV - *fill* 0x0000000000023110 0x10 - .bss 0x0000000000023120 0x58 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - 0x0000000000023120 wait_for_request - 0x0000000000023140 blk_dev - .bss 0x0000000000023178 0x25 kernel/blk_drv/blk_drv.a(floppy.o) - 0x0000000000023178 do_floppy - 0x000000000002317c selected - 0x0000000000023180 wait_on_floppy_select - *fill* 0x000000000002319d 0x3 - .bss 0x00000000000231a0 0xb0 kernel/blk_drv/blk_drv.a(hd.o) - 0x00000000000231a0 do_hd - 0x00000000000231c0 hd_info - .bss 0x0000000000023250 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) - 0x0000000000023250 rd_length - .bss 0x0000000000023254 0x1c kernel/chr_drv/chr_drv.a(tty_io.o) - 0x0000000000023254 cnt - *fill* 0x0000000000023270 0x10 - .bss 0x0000000000023280 0xac kernel/chr_drv/chr_drv.a(console.o) - 0x0000000000023280 beepcount - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(serial.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(mouse.o) - .bss 0x000000000002332c 0x0 kernel/math/math.a(math_emulate.o) - .bss 0x000000000002332c 0x0 lib/lib.a(ctype.o) - .bss 0x000000000002332c 0x0 lib/lib.a(_exit.o) - .bss 0x000000000002332c 0x0 lib/lib.a(open.o) - .bss 0x000000000002332c 0x0 lib/lib.a(close.o) - .bss 0x000000000002332c 0x0 lib/lib.a(errno.o) - .bss 0x000000000002332c 0x0 lib/lib.a(write.o) - .bss 0x000000000002332c 0x0 lib/lib.a(dup.o) - .bss 0x000000000002332c 0x0 lib/lib.a(setsid.o) - .bss 0x000000000002332c 0x0 lib/lib.a(execve.o) - .bss 0x000000000002332c 0x0 lib/lib.a(wait.o) - .bss 0x000000000002332c 0x0 lib/lib.a(string.o) - .bss 0x000000000002332c 0x4 lib/lib.a(malloc.o) - 0x000000000002332c free_bucket_desc + .bss 0x0000000000021400 0x0 boot/head.o + .bss 0x0000000000021400 0x40c init/main.o + *fill* 0x000000000002180c 0x14 + .bss 0x0000000000021820 0x764 kernel/kernel.o + 0x0000000000021820 jiffies + 0x0000000000021824 startup_time + 0x0000000000021828 last_task_used_math + 0x0000000000021b64 last_pid + *fill* 0x0000000000021f84 0x1c + .bss 0x0000000000021fa0 0xf20 mm/mm.o + .bss 0x0000000000022ec0 0x710 fs/fs.o + 0x0000000000022ec0 inode_table + 0x00000000000235c0 nr_buffers + 0x00000000000235cc ROOT_DEV + *fill* 0x00000000000235d0 0x10 + .bss 0x00000000000235e0 0x58 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x00000000000235e0 wait_for_request + 0x0000000000023600 blk_dev + .bss 0x0000000000023638 0x25 kernel/blk_drv/blk_drv.a(floppy.o) + 0x0000000000023638 do_floppy + 0x000000000002363c selected + 0x0000000000023640 wait_on_floppy_select + *fill* 0x000000000002365d 0x3 + .bss 0x0000000000023660 0xb0 kernel/blk_drv/blk_drv.a(hd.o) + 0x0000000000023660 do_hd + 0x0000000000023680 hd_info + .bss 0x0000000000023710 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000023710 rd_length + .bss 0x0000000000023714 0x1c kernel/chr_drv/chr_drv.a(tty_io.o) + 0x0000000000023714 cnt + *fill* 0x0000000000023730 0x10 + .bss 0x0000000000023740 0xac kernel/chr_drv/chr_drv.a(console.o) + 0x0000000000023740 beepcount + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(serial.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(mouse.2.o) + .bss 0x00000000000237ec 0x0 kernel/math/math.a(math_emulate.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(ctype.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(_exit.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(open.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(close.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(errno.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(write.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(dup.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(setsid.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(execve.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(wait.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(string.o) + .bss 0x00000000000237ec 0x4 lib/lib.a(malloc.o) + 0x00000000000237ec free_bucket_desc *(COMMON) - *fill* 0x0000000000023330 0x10 - COMMON 0x0000000000023340 0x20 init/main.o - 0x0000000000023340 drive_info - COMMON 0x0000000000023360 0x1000 kernel/kernel.o - 0x0000000000023360 user_stack - COMMON 0x0000000000024360 0xc40 fs/fs.o - 0x0000000000024360 hash_table - 0x0000000000024840 super_block - 0x0000000000024ba0 file_table - COMMON 0x0000000000024fa0 0x480 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - 0x0000000000024fa0 request - COMMON 0x0000000000025420 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) - 0x0000000000025420 rd_start - COMMON 0x0000000000025424 0x1 lib/lib.a(ctype.o) - 0x0000000000025424 _ctmp - *fill* 0x0000000000025425 0x3 - COMMON 0x0000000000025428 0x4 lib/lib.a(errno.o) - 0x0000000000025428 errno - COMMON 0x000000000002542c 0x4 lib/lib.a(string.o) - 0x000000000002542c ___strtok - 0x0000000000025430 . = ALIGN ((. != 0x0)?0x4:0x1) - 0x0000000000025430 . = ALIGN (0x4) - 0x0000000000025430 . = SEGMENT_START ("ldata-segment", .) - 0x0000000000025430 . = ALIGN (0x4) - 0x0000000000025430 _end = . - 0x0000000000025430 PROVIDE (end, .) + *fill* 0x00000000000237f0 0x10 + COMMON 0x0000000000023800 0x40 init/main.o + 0x0000000000023800 headd + 0x0000000000023820 drive_info + COMMON 0x0000000000023840 0x1000 kernel/kernel.o + 0x0000000000023840 user_stack + COMMON 0x0000000000024840 0xc40 fs/fs.o + 0x0000000000024840 hash_table + 0x0000000000024d20 super_block + 0x0000000000025080 file_table + COMMON 0x0000000000025480 0x480 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x0000000000025480 request + COMMON 0x0000000000025900 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000025900 rd_start + COMMON 0x0000000000025904 0x1 lib/lib.a(ctype.o) + 0x0000000000025904 _ctmp + *fill* 0x0000000000025905 0x3 + COMMON 0x0000000000025908 0x4 lib/lib.a(errno.o) + 0x0000000000025908 errno + COMMON 0x000000000002590c 0x4 lib/lib.a(string.o) + 0x000000000002590c ___strtok + 0x0000000000025910 . = ALIGN ((. != 0x0)?0x4:0x1) + 0x0000000000025910 . = ALIGN (0x4) + 0x0000000000025910 . = SEGMENT_START ("ldata-segment", .) + 0x0000000000025910 . = ALIGN (0x4) + 0x0000000000025910 _end = . + 0x0000000000025910 PROVIDE (end, .) .stab *(.stab) @@ -843,7 +850,7 @@ LOAD lib/lib.a *(.comment) .comment 0x0000000000000000 0x29 init/main.o 0x2a (size before relaxing) - .comment 0x0000000000000000 0x1a4 kernel/kernel.o + .comment 0x0000000000000000 0x1ce kernel/kernel.o .comment 0x0000000000000000 0x2a mm/mm.o .comment 0x0000000000000000 0x31e fs/fs.o .comment 0x0000000000000000 0x2a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) @@ -880,200 +887,200 @@ LOAD lib/lib.a .debug_sfnames *(.debug_sfnames) -.debug_aranges 0x0000000000000000 0x668 +.debug_aranges 0x0000000000000000 0x688 *(.debug_aranges) .debug_aranges 0x0000000000000000 0x20 init/main.o .debug_aranges - 0x0000000000000020 0x140 kernel/kernel.o + 0x0000000000000020 0x160 kernel/kernel.o .debug_aranges - 0x0000000000000160 0x20 mm/mm.o + 0x0000000000000180 0x20 mm/mm.o .debug_aranges - 0x0000000000000180 0x258 fs/fs.o + 0x00000000000001a0 0x258 fs/fs.o .debug_aranges - 0x00000000000003d8 0x20 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x00000000000003f8 0x20 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) .debug_aranges - 0x00000000000003f8 0x20 kernel/blk_drv/blk_drv.a(floppy.o) + 0x0000000000000418 0x20 kernel/blk_drv/blk_drv.a(floppy.o) .debug_aranges - 0x0000000000000418 0x20 kernel/blk_drv/blk_drv.a(hd.o) + 0x0000000000000438 0x20 kernel/blk_drv/blk_drv.a(hd.o) .debug_aranges - 0x0000000000000438 0x20 kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000000458 0x20 kernel/blk_drv/blk_drv.a(ramdisk.o) .debug_aranges - 0x0000000000000458 0x20 kernel/chr_drv/chr_drv.a(tty_io.o) + 0x0000000000000478 0x20 kernel/chr_drv/chr_drv.a(tty_io.o) .debug_aranges - 0x0000000000000478 0x20 kernel/chr_drv/chr_drv.a(console.o) + 0x0000000000000498 0x20 kernel/chr_drv/chr_drv.a(console.o) .debug_aranges - 0x0000000000000498 0x20 kernel/chr_drv/chr_drv.a(serial.o) + 0x00000000000004b8 0x20 kernel/chr_drv/chr_drv.a(serial.o) .debug_aranges - 0x00000000000004b8 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + 0x00000000000004d8 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) .debug_aranges - 0x00000000000004d8 0x20 kernel/math/math.a(math_emulate.o) + 0x00000000000004f8 0x20 kernel/math/math.a(math_emulate.o) .debug_aranges - 0x00000000000004f8 0x18 lib/lib.a(ctype.o) + 0x0000000000000518 0x18 lib/lib.a(ctype.o) .debug_aranges - 0x0000000000000510 0x20 lib/lib.a(_exit.o) + 0x0000000000000530 0x20 lib/lib.a(_exit.o) .debug_aranges - 0x0000000000000530 0x20 lib/lib.a(open.o) + 0x0000000000000550 0x20 lib/lib.a(open.o) .debug_aranges - 0x0000000000000550 0x20 lib/lib.a(close.o) + 0x0000000000000570 0x20 lib/lib.a(close.o) .debug_aranges - 0x0000000000000570 0x18 lib/lib.a(errno.o) + 0x0000000000000590 0x18 lib/lib.a(errno.o) .debug_aranges - 0x0000000000000588 0x20 lib/lib.a(write.o) + 0x00000000000005a8 0x20 lib/lib.a(write.o) .debug_aranges - 0x00000000000005a8 0x20 lib/lib.a(dup.o) + 0x00000000000005c8 0x20 lib/lib.a(dup.o) .debug_aranges - 0x00000000000005c8 0x20 lib/lib.a(setsid.o) + 0x00000000000005e8 0x20 lib/lib.a(setsid.o) .debug_aranges - 0x00000000000005e8 0x20 lib/lib.a(execve.o) + 0x0000000000000608 0x20 lib/lib.a(execve.o) .debug_aranges - 0x0000000000000608 0x20 lib/lib.a(wait.o) + 0x0000000000000628 0x20 lib/lib.a(wait.o) .debug_aranges - 0x0000000000000628 0x20 lib/lib.a(string.o) + 0x0000000000000648 0x20 lib/lib.a(string.o) .debug_aranges - 0x0000000000000648 0x20 lib/lib.a(malloc.o) + 0x0000000000000668 0x20 lib/lib.a(malloc.o) .debug_pubnames *(.debug_pubnames) -.debug_info 0x0000000000000000 0x182c0 +.debug_info 0x0000000000000000 0x18724 *(.debug_info .gnu.linkonce.wi.*) - .debug_info 0x0000000000000000 0xb73 init/main.o - .debug_info 0x0000000000000b73 0x4cb6 kernel/kernel.o - .debug_info 0x0000000000005829 0xb2b mm/mm.o - .debug_info 0x0000000000006354 0xaef6 fs/fs.o - .debug_info 0x000000000001124a 0x932 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .debug_info 0x0000000000011b7c 0xc9f kernel/blk_drv/blk_drv.a(floppy.o) - .debug_info 0x000000000001281b 0xd5f kernel/blk_drv/blk_drv.a(hd.o) - .debug_info 0x000000000001357a 0xad5 kernel/blk_drv/blk_drv.a(ramdisk.o) - .debug_info 0x000000000001404f 0xba3 kernel/chr_drv/chr_drv.a(tty_io.o) - .debug_info 0x0000000000014bf2 0xdcc kernel/chr_drv/chr_drv.a(console.o) - .debug_info 0x00000000000159be 0x85c kernel/chr_drv/chr_drv.a(serial.o) - .debug_info 0x000000000001621a 0xb47 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .debug_info 0x0000000000016d61 0x7b5 kernel/math/math.a(math_emulate.o) - .debug_info 0x0000000000017516 0x66 lib/lib.a(ctype.o) - .debug_info 0x000000000001757c 0x77 lib/lib.a(_exit.o) - .debug_info 0x00000000000175f3 0xd0 lib/lib.a(open.o) - .debug_info 0x00000000000176c3 0x97 lib/lib.a(close.o) - .debug_info 0x000000000001775a 0x36 lib/lib.a(errno.o) - .debug_info 0x0000000000017790 0xc9 lib/lib.a(write.o) - .debug_info 0x0000000000017859 0x97 lib/lib.a(dup.o) - .debug_info 0x00000000000178f0 0x95 lib/lib.a(setsid.o) - .debug_info 0x0000000000017985 0xcb lib/lib.a(execve.o) - .debug_info 0x0000000000017a50 0xed lib/lib.a(wait.o) - .debug_info 0x0000000000017b3d 0x55e lib/lib.a(string.o) - .debug_info 0x000000000001809b 0x225 lib/lib.a(malloc.o) - -.debug_abbrev 0x0000000000000000 0x4789 + .debug_info 0x0000000000000000 0xbe3 init/main.o + .debug_info 0x0000000000000be3 0x4edc kernel/kernel.o + .debug_info 0x0000000000005abf 0xb2b mm/mm.o + .debug_info 0x00000000000065ea 0xaf3e fs/fs.o + .debug_info 0x0000000000011528 0x932 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_info 0x0000000000011e5a 0xc9f kernel/blk_drv/blk_drv.a(floppy.o) + .debug_info 0x0000000000012af9 0xd5f kernel/blk_drv/blk_drv.a(hd.o) + .debug_info 0x0000000000013858 0xad5 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_info 0x000000000001432d 0xc51 kernel/chr_drv/chr_drv.a(tty_io.o) + .debug_info 0x0000000000014f7e 0xe14 kernel/chr_drv/chr_drv.a(console.o) + .debug_info 0x0000000000015d92 0x8a4 kernel/chr_drv/chr_drv.a(serial.o) + .debug_info 0x0000000000016636 0xb8f kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .debug_info 0x00000000000171c5 0x7b5 kernel/math/math.a(math_emulate.o) + .debug_info 0x000000000001797a 0x66 lib/lib.a(ctype.o) + .debug_info 0x00000000000179e0 0x77 lib/lib.a(_exit.o) + .debug_info 0x0000000000017a57 0xd0 lib/lib.a(open.o) + .debug_info 0x0000000000017b27 0x97 lib/lib.a(close.o) + .debug_info 0x0000000000017bbe 0x36 lib/lib.a(errno.o) + .debug_info 0x0000000000017bf4 0xc9 lib/lib.a(write.o) + .debug_info 0x0000000000017cbd 0x97 lib/lib.a(dup.o) + .debug_info 0x0000000000017d54 0x95 lib/lib.a(setsid.o) + .debug_info 0x0000000000017de9 0xcb lib/lib.a(execve.o) + .debug_info 0x0000000000017eb4 0xed lib/lib.a(wait.o) + .debug_info 0x0000000000017fa1 0x55e lib/lib.a(string.o) + .debug_info 0x00000000000184ff 0x225 lib/lib.a(malloc.o) + +.debug_abbrev 0x0000000000000000 0x493a *(.debug_abbrev) - .debug_abbrev 0x0000000000000000 0x237 init/main.o - .debug_abbrev 0x0000000000000237 0xf63 kernel/kernel.o - .debug_abbrev 0x000000000000119a 0x20b mm/mm.o - .debug_abbrev 0x00000000000013a5 0x1c1d fs/fs.o - .debug_abbrev 0x0000000000002fc2 0x169 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .debug_abbrev 0x000000000000312b 0x27d kernel/blk_drv/blk_drv.a(floppy.o) - .debug_abbrev 0x00000000000033a8 0x23c kernel/blk_drv/blk_drv.a(hd.o) - .debug_abbrev 0x00000000000035e4 0x1a8 kernel/blk_drv/blk_drv.a(ramdisk.o) - .debug_abbrev 0x000000000000378c 0x2a0 kernel/chr_drv/chr_drv.a(tty_io.o) - .debug_abbrev 0x0000000000003a2c 0x26b kernel/chr_drv/chr_drv.a(console.o) - .debug_abbrev 0x0000000000003c97 0x175 kernel/chr_drv/chr_drv.a(serial.o) - .debug_abbrev 0x0000000000003e0c 0x18d kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .debug_abbrev 0x0000000000003f99 0x163 kernel/math/math.a(math_emulate.o) - .debug_abbrev 0x00000000000040fc 0x3e lib/lib.a(ctype.o) - .debug_abbrev 0x000000000000413a 0x51 lib/lib.a(_exit.o) - .debug_abbrev 0x000000000000418b 0x97 lib/lib.a(open.o) - .debug_abbrev 0x0000000000004222 0x75 lib/lib.a(close.o) - .debug_abbrev 0x0000000000004297 0x2c lib/lib.a(errno.o) - .debug_abbrev 0x00000000000042c3 0xa1 lib/lib.a(write.o) - .debug_abbrev 0x0000000000004364 0x75 lib/lib.a(dup.o) - .debug_abbrev 0x00000000000043d9 0x73 lib/lib.a(setsid.o) - .debug_abbrev 0x000000000000444c 0x85 lib/lib.a(execve.o) - .debug_abbrev 0x00000000000044d1 0xb6 lib/lib.a(wait.o) - .debug_abbrev 0x0000000000004587 0xe9 lib/lib.a(string.o) - .debug_abbrev 0x0000000000004670 0x119 lib/lib.a(malloc.o) - -.debug_line 0x0000000000000000 0x4a7d + .debug_abbrev 0x0000000000000000 0x253 init/main.o + .debug_abbrev 0x0000000000000253 0x1064 kernel/kernel.o + .debug_abbrev 0x00000000000012b7 0x20b mm/mm.o + .debug_abbrev 0x00000000000014c2 0x1c2e fs/fs.o + .debug_abbrev 0x00000000000030f0 0x169 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_abbrev 0x0000000000003259 0x27d kernel/blk_drv/blk_drv.a(floppy.o) + .debug_abbrev 0x00000000000034d6 0x23c kernel/blk_drv/blk_drv.a(hd.o) + .debug_abbrev 0x0000000000003712 0x1a8 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_abbrev 0x00000000000038ba 0x2f0 kernel/chr_drv/chr_drv.a(tty_io.o) + .debug_abbrev 0x0000000000003baa 0x27c kernel/chr_drv/chr_drv.a(console.o) + .debug_abbrev 0x0000000000003e26 0x186 kernel/chr_drv/chr_drv.a(serial.o) + .debug_abbrev 0x0000000000003fac 0x19e kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .debug_abbrev 0x000000000000414a 0x163 kernel/math/math.a(math_emulate.o) + .debug_abbrev 0x00000000000042ad 0x3e lib/lib.a(ctype.o) + .debug_abbrev 0x00000000000042eb 0x51 lib/lib.a(_exit.o) + .debug_abbrev 0x000000000000433c 0x97 lib/lib.a(open.o) + .debug_abbrev 0x00000000000043d3 0x75 lib/lib.a(close.o) + .debug_abbrev 0x0000000000004448 0x2c lib/lib.a(errno.o) + .debug_abbrev 0x0000000000004474 0xa1 lib/lib.a(write.o) + .debug_abbrev 0x0000000000004515 0x75 lib/lib.a(dup.o) + .debug_abbrev 0x000000000000458a 0x73 lib/lib.a(setsid.o) + .debug_abbrev 0x00000000000045fd 0x85 lib/lib.a(execve.o) + .debug_abbrev 0x0000000000004682 0xb6 lib/lib.a(wait.o) + .debug_abbrev 0x0000000000004738 0xe9 lib/lib.a(string.o) + .debug_abbrev 0x0000000000004821 0x119 lib/lib.a(malloc.o) + +.debug_line 0x0000000000000000 0x4bf6 *(.debug_line .debug_line.* .debug_line_end) - .debug_line 0x0000000000000000 0x1e5 init/main.o - .debug_line 0x00000000000001e5 0xe86 kernel/kernel.o - .debug_line 0x000000000000106b 0x276 mm/mm.o - .debug_line 0x00000000000012e1 0x1fa2 fs/fs.o - .debug_line 0x0000000000003283 0x197 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .debug_line 0x000000000000341a 0x24c kernel/blk_drv/blk_drv.a(floppy.o) - .debug_line 0x0000000000003666 0x2bf kernel/blk_drv/blk_drv.a(hd.o) - .debug_line 0x0000000000003925 0x160 kernel/blk_drv/blk_drv.a(ramdisk.o) - .debug_line 0x0000000000003a85 0x397 kernel/chr_drv/chr_drv.a(tty_io.o) - .debug_line 0x0000000000003e1c 0x3b7 kernel/chr_drv/chr_drv.a(console.o) - .debug_line 0x00000000000041d3 0xd9 kernel/chr_drv/chr_drv.a(serial.o) - .debug_line 0x00000000000042ac 0x1db kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .debug_line 0x0000000000004487 0xe1 kernel/math/math.a(math_emulate.o) - .debug_line 0x0000000000004568 0x28 lib/lib.a(ctype.o) - .debug_line 0x0000000000004590 0x39 lib/lib.a(_exit.o) - .debug_line 0x00000000000045c9 0x62 lib/lib.a(open.o) - .debug_line 0x000000000000462b 0x5c lib/lib.a(close.o) - .debug_line 0x0000000000004687 0x28 lib/lib.a(errno.o) - .debug_line 0x00000000000046af 0x76 lib/lib.a(write.o) - .debug_line 0x0000000000004725 0x5a lib/lib.a(dup.o) - .debug_line 0x000000000000477f 0x77 lib/lib.a(setsid.o) - .debug_line 0x00000000000047f6 0x5d lib/lib.a(execve.o) - .debug_line 0x0000000000004853 0x7a lib/lib.a(wait.o) - .debug_line 0x00000000000048cd 0xc6 lib/lib.a(string.o) - .debug_line 0x0000000000004993 0xea lib/lib.a(malloc.o) + .debug_line 0x0000000000000000 0x1fe init/main.o + .debug_line 0x00000000000001fe 0xfa9 kernel/kernel.o + .debug_line 0x00000000000011a7 0x276 mm/mm.o + .debug_line 0x000000000000141d 0x1fa2 fs/fs.o + .debug_line 0x00000000000033bf 0x197 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_line 0x0000000000003556 0x24c kernel/blk_drv/blk_drv.a(floppy.o) + .debug_line 0x00000000000037a2 0x2bf kernel/blk_drv/blk_drv.a(hd.o) + .debug_line 0x0000000000003a61 0x160 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_line 0x0000000000003bc1 0x3d4 kernel/chr_drv/chr_drv.a(tty_io.o) + .debug_line 0x0000000000003f95 0x3b7 kernel/chr_drv/chr_drv.a(console.o) + .debug_line 0x000000000000434c 0xd9 kernel/chr_drv/chr_drv.a(serial.o) + .debug_line 0x0000000000004425 0x1db kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .debug_line 0x0000000000004600 0xe1 kernel/math/math.a(math_emulate.o) + .debug_line 0x00000000000046e1 0x28 lib/lib.a(ctype.o) + .debug_line 0x0000000000004709 0x39 lib/lib.a(_exit.o) + .debug_line 0x0000000000004742 0x62 lib/lib.a(open.o) + .debug_line 0x00000000000047a4 0x5c lib/lib.a(close.o) + .debug_line 0x0000000000004800 0x28 lib/lib.a(errno.o) + .debug_line 0x0000000000004828 0x76 lib/lib.a(write.o) + .debug_line 0x000000000000489e 0x5a lib/lib.a(dup.o) + .debug_line 0x00000000000048f8 0x77 lib/lib.a(setsid.o) + .debug_line 0x000000000000496f 0x5d lib/lib.a(execve.o) + .debug_line 0x00000000000049cc 0x7a lib/lib.a(wait.o) + .debug_line 0x0000000000004a46 0xc6 lib/lib.a(string.o) + .debug_line 0x0000000000004b0c 0xea lib/lib.a(malloc.o) .debug_frame *(.debug_frame) -.debug_str 0x0000000000000000 0x2284 +.debug_str 0x0000000000000000 0x22da *(.debug_str) - .debug_str 0x0000000000000000 0x3c6 init/main.o - 0x469 (size before relaxing) - .debug_str 0x00000000000003c6 0x8cd kernel/kernel.o - 0x2364 (size before relaxing) - .debug_str 0x0000000000000c93 0x18a mm/mm.o + .debug_str 0x0000000000000000 0x3cc init/main.o + 0x48a (size before relaxing) + .debug_str 0x00000000000003cc 0x90b kernel/kernel.o + 0x24af (size before relaxing) + .debug_str 0x0000000000000cd7 0x18a mm/mm.o 0x4e5 (size before relaxing) - .debug_str 0x0000000000000e1d 0x9c1 fs/fs.o - 0x4f07 (size before relaxing) - .debug_str 0x00000000000017de 0xf5 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_str 0x0000000000000e61 0x9c1 fs/fs.o + 0x4f1a (size before relaxing) + .debug_str 0x0000000000001822 0xf5 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) 0x496 (size before relaxing) - .debug_str 0x00000000000018d3 0x1cf kernel/blk_drv/blk_drv.a(floppy.o) + .debug_str 0x0000000000001917 0x1cf kernel/blk_drv/blk_drv.a(floppy.o) 0x678 (size before relaxing) - .debug_str 0x0000000000001aa2 0x15e kernel/blk_drv/blk_drv.a(hd.o) + .debug_str 0x0000000000001ae6 0x15e kernel/blk_drv/blk_drv.a(hd.o) 0x5ed (size before relaxing) - .debug_str 0x0000000000001c00 0x43 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_str 0x0000000000001c44 0x43 kernel/blk_drv/blk_drv.a(ramdisk.o) 0x58f (size before relaxing) - .debug_str 0x0000000000001c43 0x191 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x580 (size before relaxing) - .debug_str 0x0000000000001dd4 0x1b9 kernel/chr_drv/chr_drv.a(console.o) - 0x5bc (size before relaxing) - .debug_str 0x0000000000001f8d 0x1a kernel/chr_drv/chr_drv.a(serial.o) - 0x401 (size before relaxing) - .debug_str 0x0000000000001fa7 0x8b kernel/chr_drv/chr_drv.a(tty_ioctl.o) - 0x4ac (size before relaxing) - .debug_str 0x0000000000002032 0x75 kernel/math/math.a(math_emulate.o) + .debug_str 0x0000000000001c87 0x1aa kernel/chr_drv/chr_drv.a(tty_io.o) + 0x5a5 (size before relaxing) + .debug_str 0x0000000000001e31 0x1b9 kernel/chr_drv/chr_drv.a(console.o) + 0x5cf (size before relaxing) + .debug_str 0x0000000000001fea 0x1a kernel/chr_drv/chr_drv.a(serial.o) + 0x414 (size before relaxing) + .debug_str 0x0000000000002004 0x8b kernel/chr_drv/chr_drv.a(tty_ioctl.o) + 0x4bf (size before relaxing) + .debug_str 0x000000000000208f 0x75 kernel/math/math.a(math_emulate.o) 0x397 (size before relaxing) - .debug_str 0x00000000000020a7 0x92 lib/lib.a(ctype.o) + .debug_str 0x0000000000002104 0x92 lib/lib.a(ctype.o) 0xbb (size before relaxing) - .debug_str 0x0000000000002139 0x8 lib/lib.a(_exit.o) + .debug_str 0x0000000000002196 0x8 lib/lib.a(_exit.o) 0xe7 (size before relaxing) .debug_str 0x0000000000000000 0x8 lib/lib.a(open.o) 0xf7 (size before relaxing) - .debug_str 0x0000000000002141 0x8 lib/lib.a(close.o) + .debug_str 0x000000000000219e 0x8 lib/lib.a(close.o) 0xe9 (size before relaxing) - .debug_str 0x0000000000002149 0x8 lib/lib.a(errno.o) + .debug_str 0x00000000000021a6 0x8 lib/lib.a(errno.o) 0x98 (size before relaxing) .debug_str 0x0000000000000000 0x8 lib/lib.a(write.o) 0xf5 (size before relaxing) - .debug_str 0x0000000000002151 0x6 lib/lib.a(dup.o) + .debug_str 0x00000000000021ae 0x6 lib/lib.a(dup.o) 0xe1 (size before relaxing) - .debug_str 0x0000000000002157 0x9 lib/lib.a(setsid.o) + .debug_str 0x00000000000021b4 0x9 lib/lib.a(setsid.o) 0xf1 (size before relaxing) - .debug_str 0x0000000000002160 0x9 lib/lib.a(execve.o) + .debug_str 0x00000000000021bd 0x9 lib/lib.a(execve.o) 0xfa (size before relaxing) - .debug_str 0x0000000000002169 0x11 lib/lib.a(wait.o) + .debug_str 0x00000000000021c6 0x11 lib/lib.a(wait.o) 0x107 (size before relaxing) - .debug_str 0x000000000000217a 0x93 lib/lib.a(string.o) + .debug_str 0x00000000000021d7 0x93 lib/lib.a(string.o) 0x14c (size before relaxing) - .debug_str 0x000000000000220d 0x77 lib/lib.a(malloc.o) + .debug_str 0x000000000000226a 0x70 lib/lib.a(malloc.o) 0x167 (size before relaxing) .debug_loc diff --git a/linux-0.11-lab/0/linux/fs/fs.o b/linux-0.11-lab/0/linux/fs/fs.o index a7f7884..65e2165 100644 Binary files a/linux-0.11-lab/0/linux/fs/fs.o and b/linux-0.11-lab/0/linux/fs/fs.o differ diff --git a/linux-0.11-lab/0/linux/fs/open.o b/linux-0.11-lab/0/linux/fs/open.o index deb7cce..5856262 100644 Binary files a/linux-0.11-lab/0/linux/fs/open.o and b/linux-0.11-lab/0/linux/fs/open.o differ diff --git a/linux-0.11-lab/0/linux/include/linux/sys.h b/linux-0.11-lab/0/linux/include/linux/sys.h index 7cca397..ec983c3 100644 --- a/linux-0.11-lab/0/linux/include/linux/sys.h +++ b/linux-0.11-lab/0/linux/include/linux/sys.h @@ -96,6 +96,9 @@ extern int sys_getdents(); extern int sys_something(); extern int sys_sleep(); extern long sys_getcwd(); +extern int sys_init_graphics(); +extern int sys_get_message(); +extern int sys_repaint(); fn_ptr sys_call_table[] = { sys_setup, sys_exit, sys_fork, sys_read, sys_write, sys_open, sys_close, sys_waitpid, sys_creat, sys_link, @@ -112,7 +115,9 @@ sys_getpgrp, sys_setsid, sys_sigaction, sys_sgetmask, sys_ssetmask, sys_setreuid,sys_setregid, sys_sigsuspend, sys_sigpending, sys_sethostname, sys_setrlimit, sys_getrlimit, sys_getrusage, sys_gettimeofday, sys_settimeofday, sys_getgroups, sys_setgroups, sys_select, sys_symlink, -sys_lstat, sys_readlink, sys_uselib, sys_execve2, sys_getdents, sys_something ,sys_sleep, sys_getcwd}; +sys_lstat, sys_readlink, sys_uselib, sys_execve2, sys_getdents, sys_something ,sys_sleep, sys_getcwd +,sys_init_graphics,sys_get_message,sys_repaint +}; /* So we don't have to do any more manual updating.... */ int NR_syscalls = sizeof(sys_call_table)/sizeof(fn_ptr); diff --git a/linux-0.11-lab/0/linux/include/linux/tty.h b/linux-0.11-lab/0/linux/include/linux/tty.h index ad846b3..7c59f87 100644 --- a/linux-0.11-lab/0/linux/include/linux/tty.h +++ b/linux-0.11-lab/0/linux/include/linux/tty.h @@ -54,6 +54,19 @@ struct tty_struct { extern struct tty_struct tty_table[]; + + +struct message{ +int mid; +int pid; +struct message *next; +}; +struct message *headd; + + + + + /* intr=^C quit=^| erase=del kill=^U eof=^D vtime=\0 vmin=\1 sxtc=\0 start=^Q stop=^S susp=^Z eol=\0 @@ -74,4 +87,5 @@ void con_write(struct tty_struct * tty); void copy_to_cooked(struct tty_struct * tty); + #endif diff --git a/linux-0.11-lab/0/linux/include/unistd.h b/linux-0.11-lab/0/linux/include/unistd.h index 07af609..a816d27 100644 --- a/linux-0.11-lab/0/linux/include/unistd.h +++ b/linux-0.11-lab/0/linux/include/unistd.h @@ -1,6 +1,6 @@ #ifndef _UNISTD_H #define _UNISTD_H - +#include /* ok, this may be a joke, but I'm working on it */ #define _POSIX_VERSION 198808L @@ -152,6 +152,10 @@ #define __NR_something 89 #define __NR_sleep 90 #define __NR_getcwd 91 +#define __NR_init_graphics 92 +#define __NR_get_message 93 +#define __NR_repaint 94 + #define _syscall0(type,name) \ type name(void) \ { \ @@ -273,11 +277,13 @@ pid_t getpgrp(void); pid_t setsid(void); -long getcwd(char *buf,size_t size); +char* getcwd(char *buf,size_t size); int something(void); int sleep(unsigned int seconds); int execve2(const char *path,char *argv[],char *envp[]); - +int init_graphics(void); +int get_message(struct message *msg); +int repaint(int x,int y,int h); #define __always_inline inline __attribute__((always_inline)) diff --git a/linux-0.11-lab/0/linux/init/main.c b/linux-0.11-lab/0/linux/init/main.c index bd86a68..a491148 100644 --- a/linux-0.11-lab/0/linux/init/main.c +++ b/linux-0.11-lab/0/linux/init/main.c @@ -25,6 +25,7 @@ __always_inline _syscall0(int,fork) __always_inline _syscall0(int,pause) __always_inline _syscall1(int,setup,void *,BIOS) __always_inline _syscall0(int,sync) +__always_inline _syscall0(int,init_graphics) #include #include @@ -52,6 +53,8 @@ extern long rd_init(long mem_start, int length); extern long kernel_mktime(struct tm * tm); extern long startup_time; +extern int init_graphics(); + /* * This is set up by the setup-routine at boot-time */ @@ -134,6 +137,7 @@ void main(void) /* This really IS void, no error here. */ buffer_init(buffer_memory_end); hd_init(); floppy_init(); + //init_graphics(); sti(); move_to_user_mode(); if (!fork()) { /* we count on this going ok */ diff --git a/linux-0.11-lab/0/linux/init/main.o b/linux-0.11-lab/0/linux/init/main.o index d318a08..cd93e81 100644 Binary files a/linux-0.11-lab/0/linux/init/main.o and b/linux-0.11-lab/0/linux/init/main.o differ diff --git a/linux-0.11-lab/0/linux/kernel/Makefile b/linux-0.11-lab/0/linux/kernel/Makefile index 29b8f8d..08649b4 100644 --- a/linux-0.11-lab/0/linux/kernel/Makefile +++ b/linux-0.11-lab/0/linux/kernel/Makefile @@ -26,7 +26,7 @@ CPP =gcc -E -nostdinc -I../include OBJS = sched.o system_call.o traps.o asm.o fork.o \ panic.o printk.o vsprintf.o sys.o exit.o \ - signal.o mktime.o + signal.o mktime.o init_graphics.o kernel.o: $(OBJS) $(LD) -r -o kernel.o $(OBJS) @@ -81,3 +81,5 @@ traps.s traps.o : traps.c ../include/string.h ../include/linux/head.h \ ../include/linux/mm.h ../include/signal.h ../include/linux/kernel.h \ ../include/asm/system.h ../include/asm/segment.h ../include/asm/io.h vsprintf.s vsprintf.o : vsprintf.c ../include/stdarg.h ../include/string.h +init_graphics.s init_graphi.o:init_graphics.c ../include/linux/kernel.h\ +../include/asm/io.h ../include/linux/tty.h \ No newline at end of file diff --git a/linux-0.11-lab/0/linux/kernel/blk_drv/blk_drv.a b/linux-0.11-lab/0/linux/kernel/blk_drv/blk_drv.a index f94d131..e527723 100644 Binary files a/linux-0.11-lab/0/linux/kernel/blk_drv/blk_drv.a and b/linux-0.11-lab/0/linux/kernel/blk_drv/blk_drv.a differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/Makefile b/linux-0.11-lab/0/linux/kernel/chr_drv/Makefile index ac92237..4a9cbeb 100644 --- a/linux-0.11-lab/0/linux/kernel/chr_drv/Makefile +++ b/linux-0.11-lab/0/linux/kernel/chr_drv/Makefile @@ -25,7 +25,7 @@ CPP =gcc -E -nostdinc -I../../include -c -o $*.o $< OBJS = tty_io.o console.o keyboard.2.o serial.o rs_io.o \ - tty_ioctl.o mouse.o + tty_ioctl.o mouse.2.o chr_drv.a: $(OBJS) $(AR) rcs chr_drv.a $(OBJS) @@ -38,7 +38,7 @@ mouse.2.s:mouse.S ../../include/linux/config.h clean: rm -f core *.o *.a tmp_make keyboard.2.s for i in *.c;do rm -f `basename $$i .c`.s;done - + rm -f core *.o *.a tmp_make mouse.2.s dep: sed '/\#\#\# Dependencies/q' < Makefile > tmp_make (for i in *.c;do echo -n `echo $$i | sed 's,\.c,\.s,'`" "; \ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/chr_drv.a b/linux-0.11-lab/0/linux/kernel/chr_drv/chr_drv.a index 7400948..62bd46e 100644 Binary files a/linux-0.11-lab/0/linux/kernel/chr_drv/chr_drv.a and b/linux-0.11-lab/0/linux/kernel/chr_drv/chr_drv.a differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/console.o b/linux-0.11-lab/0/linux/kernel/chr_drv/console.o index 0bf1de4..297a93b 100644 Binary files a/linux-0.11-lab/0/linux/kernel/chr_drv/console.o and b/linux-0.11-lab/0/linux/kernel/chr_drv/console.o differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.2.o b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.2.o new file mode 100644 index 0000000..21f6aaa Binary files /dev/null and b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.2.o differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.2.s b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.2.s new file mode 100644 index 0000000..f64fb9c --- /dev/null +++ b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.2.s @@ -0,0 +1,52 @@ +# 1 "mouse.S" +# 1 "" +# 1 "" +# 1 "mouse.S" +.globl mouse_interrupt +mouse_interrupt: + pushl %eax + pushl %ebx + pushl %ecx + pushl %edx + push %ds + + #prepare for call readmouse + movl $0x10,%eax + mov %ax,%ds + + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + + #EOI + movb $0x20,%al #8259A 操作命令字 EOI + outb %al,$0xA0 #send EOI to 8259a second + outb %al,$0x20 #send EOI to 8259a first + + + pop %ds + popl %edx + popl %ecx + popl %ebx + popl %eax + iret diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.S b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.S index 23b56aa..63a7733 100644 --- a/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.S +++ b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.S @@ -1,60 +1,43 @@ -# 1 "mouse.S" -# 1 "/home/mz/1/linux-0.11/kernel/chr_drv//" -# 1 "" -# 1 "" -# 1 "mouse.S" -# 1 "../../include/linux/config.h" 1 - - - - - - - - - - - - - - - - - - - - - -# 36 "../../include/linux/config.h" - -# 47 "../../include/linux/config.h" - -# 2 "mouse.S" 2 - .globl mouse_interrupt mouse_interrupt: pushl %eax pushl %ebx - pushl %ecx + pushl %ecx pushl %edx push %ds - //prepare for call readmouse + #prepare for call readmouse movl $0x10,%eax mov %ax,%ds - xor %eax,%eax +xor %eax,%eax inb $0x60,%al pushl %eax call readmouse + addl $4,%esp +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse addl $4,%esp - //EOI - movb $0x20,%al //8259A 操作命令字 EOI - outb %al,$0xA0 //send EOI to 8259a second - outb %al,$0x20 //send EOI to 8259a first + #EOI + movb $0x20,%al #8259A 操作命令字 EOI + outb %al,$0xA0 #send EOI to 8259a second + outb %al,$0x20 #send EOI to 8259a first pop %ds diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.o b/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.o deleted file mode 100644 index 7bbe71b..0000000 Binary files a/linux-0.11-lab/0/linux/kernel/chr_drv/mouse.o and /dev/null differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/serial.o b/linux-0.11-lab/0/linux/kernel/chr_drv/serial.o index 1ddb782..677f05c 100644 Binary files a/linux-0.11-lab/0/linux/kernel/chr_drv/serial.o and b/linux-0.11-lab/0/linux/kernel/chr_drv/serial.o differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.c b/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.c index 7311f34..a9c34bf 100644 --- a/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.c +++ b/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.c @@ -349,6 +349,8 @@ void chr_dev_init(void) { } + +#define MSG_MOUSE_CLICK 1 static unsigned char mouse_input_count = 0; //用来记录是鼠标输入的第几个字节的全局变量 static unsigned char mouse_left_down; //用来记录鼠标左键是否按下 static unsigned char mouse_right_down; //用来记录鼠标右键是否按下 @@ -359,9 +361,10 @@ static int mouse_x_position; //用来记录鼠标的 x 轴位置 static int mouse_y_position;//用来记录鼠标的 y 轴位置 static int fcreate=0; int cnt=0; +extern struct message *headd; void readmouse(int mousecode) { -printk("1\n"); +//printk("1\n"); if(fcreate==0) { fcreate=1; @@ -384,10 +387,18 @@ switch(mouse_input_count) case 1: //Misplaced abandonment mouse_left_down=(mousecode &0x01) ==0x01; + mouse_right_down=(mousecode &0x02)==0x02; mouse_left_move=(mousecode & 0x10)==0x10; mouse_down_move=(mousecode & 0x20)==0x20; mouse_input_count++; + if(mouse_left_down==1 && mouse_left_move==0 && mouse_down_move==0) + { + struct message *msg = malloc(sizeof(struct message)); + msg -> mid = MSG_MOUSE_CLICK; + msg -> pid = -1; + post_message(msg); + } break; @@ -397,9 +408,8 @@ case 2: //get the x of mouse if(mouse_left_move) mouse_x_position +=(int)(0xFFFFFF00|mousecode); if(mouse_x_position>100) mouse_x_position=100; - if(mouse_x_position<0) mouse_x_position=10; - -mouse_input_count++; + if(mouse_x_position<0) mouse_x_position=0; + mouse_input_count++; break; @@ -413,8 +423,34 @@ case 3: case 4: //get the z but we do not need it - break; } +if(mouse_input_count==4) +{ +//printk("%d\n",mouse_left_down); +//printk("%d %d\n",mouse_x_position,mouse_y_position); +} +//sys_init_graphics(); +} -} \ No newline at end of file +void post_message(struct message * msg) +{ + cli(); + //printk("mid:%d pid:%d\n",msg->mid,msg->pid); + if(headd==NULL&& msg!=NULL) + { + headd=msg; + sti(); + return ; + } + struct message *curr=headd; + if(msg==NULL)return; + while(curr->next!=NULL) + { + curr=curr->next; + } + curr->next=msg; + sti(); + +return; +} diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.o b/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.o index e591dbf..2df1eb1 100644 Binary files a/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.o and b/linux-0.11-lab/0/linux/kernel/chr_drv/tty_io.o differ diff --git a/linux-0.11-lab/0/linux/kernel/chr_drv/tty_ioctl.o b/linux-0.11-lab/0/linux/kernel/chr_drv/tty_ioctl.o index e7fcd2b..3938d9c 100644 Binary files a/linux-0.11-lab/0/linux/kernel/chr_drv/tty_ioctl.o and b/linux-0.11-lab/0/linux/kernel/chr_drv/tty_ioctl.o differ diff --git a/linux-0.11-lab/0/linux/kernel/exit.o b/linux-0.11-lab/0/linux/kernel/exit.o index 647e58e..544bfce 100644 Binary files a/linux-0.11-lab/0/linux/kernel/exit.o and b/linux-0.11-lab/0/linux/kernel/exit.o differ diff --git a/linux-0.11-lab/0/linux/kernel/init_graphics.c b/linux-0.11-lab/0/linux/kernel/init_graphics.c new file mode 100644 index 0000000..ad5a4fe --- /dev/null +++ b/linux-0.11-lab/0/linux/kernel/init_graphics.c @@ -0,0 +1,105 @@ +#include +#include +#include "linux/tty.h" +#define memstart 0xA0000 +#define memsize 64000 +#define cursor_side 3 +#define width 320 +#define height 200 +#define barrier_width 10 +struct message *headd; +static int ff=0; +int sys_init_graphics() +{ +int i,j,x,y; + char *p=0xA0000; + if(ff==0) +{ +outb(0x05,0x3CE); + outb(0x40,0x3CF);/* shift256=1*/ + outb(0x06,0x3CE); + outb(0x05,0x3CF);/*0101 0xA0000*/ + outb(0x04,0x3C4); + outb(0x08,0x3C5);/*0000 jilian*/ + + + outb(0x01,0x3D4); + outb(0x4F,0x3D5);/* end horizontal display=79 ??*/ + outb(0x03,0x3D4); + outb(0x82,0x3D5);/*display enable skew=0*/ + + outb(0x07,0x3D4); + outb(0x1F,0x3D5);/*vertical display end No8,9 bit=1,0*/ + outb(0x12,0x3D4); + outb(0x8F,0x3D5);/*vertical display end low 7b =0x8F*/ + outb(0x17,0x3D4); + outb(0xA3,0x3D5);/*SLDIV=1 ,scanline clock/2*/ + + + + outb(0x14,0x3D4); + outb(0x40,0x3D5);/*DW=1*/ + outb(0x13,0x3D4); + outb(0x28,0x3D5);/*Offset=40, 20:become long*/ + + outb(0x0C,0x3D4);/**/ + outb(0x00,0x3D5);/**/ + outb(0x0D,0x3D4);/**/ + outb(0x00,0x3D5);/*Start Address=0xA0000*/ +ff=1; +} + + + + p=memstart; + for(i=0;imid!=1)return 0; + headd=headd->next; + return 0; +} + +int sys_repaint(int x,int y,int h) +{ + int i,j,w; + char *p; + i=x; + j=y; + p=0xA0000; + w=barrier_width; + if(i+w>=320 || i<20 ) return 0; + if(i==33 || j==33){ +p=0xA0000; + for(i=0;i +#include +#include +#include + +_syscall1(void ,get_message ,struct message ,* msg) + +int main() +{ + struct message *msg; + int i; + for(i=0;i<10;i++) + { + get_message(msg); + printf("mid:%d pid:%d\n",msg->mid,msg->pid); + } +return 0; +} diff --git a/linux-0.11-lab/b/bird.c b/linux-0.11-lab/b/bird.c new file mode 100644 index 0000000..bc345fa --- /dev/null +++ b/linux-0.11-lab/b/bird.c @@ -0,0 +1,100 @@ +#define __LIBRARY__ +#include +#include +#include +#include +#include +#include +#define vga_graph_memstart 0xA0000 +#define vga_graph_memsize 64000 +#define cursor_side 6 +#define vga_width 320 +#define vga_height 200 + +#define BIRD_X 120 +#define BIRD_Y 100 +#define BIRD_WIDTH 10 +#define BIRD_HEIGHT 8 +#define MAX 40 + +char *p; +int i,j,x_pos,y_pos,k; +struct message *msg; +int cnt; +int bird_y; +int px[MAX]; +int py[MAX]; +int h[MAX]; +char *pp; +int ii,jj; +int nn; + +_syscall0(int,init_graphics) +_syscall1(int,get_message,struct message * ,msg) +_syscall3(int,repaint,int ,x,int ,y,int ,h) +int main() +{ + x_pos=20; + y_pos=20; + bird_y=BIRD_Y; + init_graphics(); + px[0]=BIRD_X; + py[0]=bird_y; + h[0]=BIRD_HEIGHT; + cnt=30; + for(i=1;i0) + { + --k; + get_message(msg); + if(msg!=NULL)py[0]-=10; + sleep(2); + } + sleep(4); + for(k=1;kpx[k] && px[0]+6px[k] && px[0]+6199) + { + repaint(44,44,44); + return 0; + + } + } + + } + } +repaint(44,44,44); +return 0; +} + diff --git a/linux-0.11-lab/b/bird.c~ b/linux-0.11-lab/b/bird.c~ new file mode 100644 index 0000000..5fb47a3 --- /dev/null +++ b/linux-0.11-lab/b/bird.c~ @@ -0,0 +1,10 @@ +#define __LIBRARY__ +#include +#include +#include +#include + +#define vga_graph_memstart 0xA0000 +#define vga_graph_memsize 64000 +#define cursor_side 6 + diff --git a/linux-0.11-lab/b/include.tar b/linux-0.11-lab/b/include.tar new file mode 100644 index 0000000..05efa40 Binary files /dev/null and b/linux-0.11-lab/b/include.tar differ diff --git a/linux-0.11-lab/b/msgtest.c b/linux-0.11-lab/b/msgtest.c new file mode 100644 index 0000000..c69f802 --- /dev/null +++ b/linux-0.11-lab/b/msgtest.c @@ -0,0 +1,19 @@ +#define __LIBRARY__ +#include +#include +#include +#include + +_syscall1(void ,get_message ,struct message ,* msg) + +int main() +{ + struct message *msg; + int i; + for(i=0;i<10;i++) + { + get_message(msg); + printf("mid:%d pid:%d\n",msg->mid,msg->pid); + } +return 0; +} diff --git a/linux-0.11-lab/b/msgtest.c~ b/linux-0.11-lab/b/msgtest.c~ new file mode 100644 index 0000000..63c9dc1 --- /dev/null +++ b/linux-0.11-lab/b/msgtest.c~ @@ -0,0 +1,20 @@ +#define __LIBRARY__ +#include +#include +#include +#include +#include"linux/tty.h" + +_syscall1(void ,get_message ,struct message ,* msg) + +int main() +{ + struct message *msg; + int i; + for(i=0;i<10;i++) + { + get_message(msg); + printf("mid:%d pid:%d\n",msg->mid,msg->pid); + } +return 0; +} diff --git a/linux-0.11-lab/b/sys.h b/linux-0.11-lab/b/sys.h new file mode 100644 index 0000000..ec983c3 --- /dev/null +++ b/linux-0.11-lab/b/sys.h @@ -0,0 +1,123 @@ +/* + * Why isn't this a .c file? Enquiring minds.... + */ + +extern int sys_setup(); +extern int sys_exit(); +extern int sys_fork(); +extern int sys_read(); +extern int sys_write(); +extern int sys_open(); +extern int sys_close(); +extern int sys_waitpid(); +extern int sys_creat(); +extern int sys_link(); +extern int sys_unlink(); +extern int sys_execve(); +extern int sys_chdir(); +extern int sys_time(); +extern int sys_mknod(); +extern int sys_chmod(); +extern int sys_chown(); +extern int sys_break(); +extern int sys_stat(); +extern int sys_lseek(); +extern int sys_getpid(); +extern int sys_mount(); +extern int sys_umount(); +extern int sys_setuid(); +extern int sys_getuid(); +extern int sys_stime(); +extern int sys_ptrace(); +extern int sys_alarm(); +extern int sys_fstat(); +extern int sys_pause(); +extern int sys_utime(); +extern int sys_stty(); +extern int sys_gtty(); +extern int sys_access(); +extern int sys_nice(); +extern int sys_ftime(); +extern int sys_sync(); +extern int sys_kill(); +extern int sys_rename(); +extern int sys_mkdir(); +extern int sys_rmdir(); +extern int sys_dup(); +extern int sys_pipe(); +extern int sys_times(); +extern int sys_prof(); +extern int sys_brk(); +extern int sys_setgid(); +extern int sys_getgid(); +extern int sys_signal(); +extern int sys_geteuid(); +extern int sys_getegid(); +extern int sys_acct(); +extern int sys_phys(); +extern int sys_lock(); +extern int sys_ioctl(); +extern int sys_fcntl(); +extern int sys_mpx(); +extern int sys_setpgid(); +extern int sys_ulimit(); +extern int sys_uname(); +extern int sys_umask(); +extern int sys_chroot(); +extern int sys_ustat(); +extern int sys_dup2(); +extern int sys_getppid(); +extern int sys_getpgrp(); +extern int sys_setsid(); +extern int sys_sigaction(); +extern int sys_sgetmask(); +extern int sys_ssetmask(); +extern int sys_setreuid(); +extern int sys_setregid(); +extern int sys_sigpending(); +extern int sys_sigsuspend(); +extern int sys_sethostname(); +extern int sys_setrlimit(); +extern int sys_getrlimit(); +extern int sys_getrusage(); +extern int sys_gettimeofday(); +extern int sys_settimeofday(); +extern int sys_getgroups(); +extern int sys_setgroups(); +extern int sys_select(); +extern int sys_symlink(); +extern int sys_lstat(); +extern int sys_readlink(); +extern int sys_uselib(); + + +extern int sys_execve2(); +extern int sys_getdents(); +extern int sys_something(); +extern int sys_sleep(); +extern long sys_getcwd(); +extern int sys_init_graphics(); +extern int sys_get_message(); +extern int sys_repaint(); + +fn_ptr sys_call_table[] = { sys_setup, sys_exit, sys_fork, sys_read, +sys_write, sys_open, sys_close, sys_waitpid, sys_creat, sys_link, +sys_unlink, sys_execve, sys_chdir, sys_time, sys_mknod, sys_chmod, +sys_chown, sys_break, sys_stat, sys_lseek, sys_getpid, sys_mount, +sys_umount, sys_setuid, sys_getuid, sys_stime, sys_ptrace, sys_alarm, +sys_fstat, sys_pause, sys_utime, sys_stty, sys_gtty, sys_access, +sys_nice, sys_ftime, sys_sync, sys_kill, sys_rename, sys_mkdir, +sys_rmdir, sys_dup, sys_pipe, sys_times, sys_prof, sys_brk, sys_setgid, +sys_getgid, sys_signal, sys_geteuid, sys_getegid, sys_acct, sys_phys, +sys_lock, sys_ioctl, sys_fcntl, sys_mpx, sys_setpgid, sys_ulimit, +sys_uname, sys_umask, sys_chroot, sys_ustat, sys_dup2, sys_getppid, +sys_getpgrp, sys_setsid, sys_sigaction, sys_sgetmask, sys_ssetmask, +sys_setreuid,sys_setregid, sys_sigsuspend, sys_sigpending, sys_sethostname, +sys_setrlimit, sys_getrlimit, sys_getrusage, sys_gettimeofday, +sys_settimeofday, sys_getgroups, sys_setgroups, sys_select, sys_symlink, +sys_lstat, sys_readlink, sys_uselib, sys_execve2, sys_getdents, sys_something ,sys_sleep, sys_getcwd +,sys_init_graphics,sys_get_message,sys_repaint +}; + +/* So we don't have to do any more manual updating.... */ +int NR_syscalls = sizeof(sys_call_table)/sizeof(fn_ptr); diff --git a/linux-0.11-lab/b/tty.h b/linux-0.11-lab/b/tty.h new file mode 100644 index 0000000..7c59f87 --- /dev/null +++ b/linux-0.11-lab/b/tty.h @@ -0,0 +1,91 @@ +/* + * 'tty.h' defines some structures used by tty_io.c and some defines. + * + * NOTE! Don't touch this without checking that nothing in rs_io.s or + * con_io.s breaks. Some constants are hardwired into the system (mainly + * offsets into 'tty_queue' + */ + +#ifndef _TTY_H +#define _TTY_H + +#include + +#define TTY_BUF_SIZE 1024 + +struct tty_queue { + unsigned long data; + unsigned long head; + unsigned long tail; + struct task_struct * proc_list; + char buf[TTY_BUF_SIZE]; +}; + +#define INC(a) ((a) = ((a)+1) & (TTY_BUF_SIZE-1)) +#define DEC(a) ((a) = ((a)-1) & (TTY_BUF_SIZE-1)) +#define EMPTY(a) ((a).head == (a).tail) +#define LEFT(a) (((a).tail-(a).head-1)&(TTY_BUF_SIZE-1)) +#define LAST(a) ((a).buf[(TTY_BUF_SIZE-1)&((a).head-1)]) +#define FULL(a) (!LEFT(a)) +#define CHARS(a) (((a).head-(a).tail)&(TTY_BUF_SIZE-1)) +#define GETCH(queue,c) \ +(void)({c=(queue).buf[(queue).tail];INC((queue).tail);}) +#define PUTCH(c,queue) \ +(void)({(queue).buf[(queue).head]=(c);INC((queue).head);}) + +#define INTR_CHAR(tty) ((tty)->termios.c_cc[VINTR]) +#define QUIT_CHAR(tty) ((tty)->termios.c_cc[VQUIT]) +#define ERASE_CHAR(tty) ((tty)->termios.c_cc[VERASE]) +#define KILL_CHAR(tty) ((tty)->termios.c_cc[VKILL]) +#define EOF_CHAR(tty) ((tty)->termios.c_cc[VEOF]) +#define START_CHAR(tty) ((tty)->termios.c_cc[VSTART]) +#define STOP_CHAR(tty) ((tty)->termios.c_cc[VSTOP]) +#define SUSPEND_CHAR(tty) ((tty)->termios.c_cc[VSUSP]) + +struct tty_struct { + struct termios termios; + int pgrp; + int stopped; + void (*write)(struct tty_struct * tty); + struct tty_queue read_q; + struct tty_queue write_q; + struct tty_queue secondary; + }; + +extern struct tty_struct tty_table[]; + + + +struct message{ +int mid; +int pid; +struct message *next; +}; +struct message *headd; + + + + + +/* intr=^C quit=^| erase=del kill=^U + eof=^D vtime=\0 vmin=\1 sxtc=\0 + start=^Q stop=^S susp=^Z eol=\0 + reprint=^R discard=^U werase=^W lnext=^V + eol2=\0 +*/ +#define INIT_C_CC "\003\034\177\025\004\0\1\0\021\023\032\0\022\017\027\026\0" + +void rs_init(void); +void con_init(void); +void tty_init(void); + +int tty_read(unsigned c, char * buf, int n); +int tty_write(unsigned c, char * buf, int n); + +void rs_write(struct tty_struct * tty); +void con_write(struct tty_struct * tty); + +void copy_to_cooked(struct tty_struct * tty); + + +#endif diff --git a/linux-0.11-lab/b/unistd.h b/linux-0.11-lab/b/unistd.h new file mode 100644 index 0000000..a816d27 --- /dev/null +++ b/linux-0.11-lab/b/unistd.h @@ -0,0 +1,290 @@ +#ifndef _UNISTD_H +#define _UNISTD_H +#include +/* ok, this may be a joke, but I'm working on it */ +#define _POSIX_VERSION 198808L + +#define _POSIX_CHOWN_RESTRICTED /* only root can do a chown (I think..) */ +#define _POSIX_NO_TRUNC /* no pathname truncation (but see in kernel) */ +#define _POSIX_VDISABLE '\0' /* character to disable things like ^C */ +/*#define _POSIX_SAVED_IDS */ /* we'll get to this yet */ +/*#define _POSIX_JOB_CONTROL */ /* we aren't there quite yet. Soon hopefully */ + +#define STDIN_FILENO 0 +#define STDOUT_FILENO 1 +#define STDERR_FILENO 2 + +#ifndef NULL +#define NULL ((void *)0) +#endif + +/* access */ +#define F_OK 0 +#define X_OK 1 +#define W_OK 2 +#define R_OK 4 + +/* lseek */ +#define SEEK_SET 0 +#define SEEK_CUR 1 +#define SEEK_END 2 + +/* _SC stands for System Configuration. We don't use them much */ +#define _SC_ARG_MAX 1 +#define _SC_CHILD_MAX 2 +#define _SC_CLOCKS_PER_SEC 3 +#define _SC_NGROUPS_MAX 4 +#define _SC_OPEN_MAX 5 +#define _SC_JOB_CONTROL 6 +#define _SC_SAVED_IDS 7 +#define _SC_VERSION 8 + +/* more (possibly) configurable things - now pathnames */ +#define _PC_LINK_MAX 1 +#define _PC_MAX_CANON 2 +#define _PC_MAX_INPUT 3 +#define _PC_NAME_MAX 4 +#define _PC_PATH_MAX 5 +#define _PC_PIPE_BUF 6 +#define _PC_NO_TRUNC 7 +#define _PC_VDISABLE 8 +#define _PC_CHOWN_RESTRICTED 9 + +#include +#include +#include +#include + +#ifdef __LIBRARY__ + +#define __NR_setup 0 /* used only by init, to get system going */ +#define __NR_exit 1 +#define __NR_fork 2 +#define __NR_read 3 +#define __NR_write 4 +#define __NR_open 5 +#define __NR_close 6 +#define __NR_waitpid 7 +#define __NR_creat 8 +#define __NR_link 9 +#define __NR_unlink 10 +#define __NR_execve 11 +#define __NR_chdir 12 +#define __NR_time 13 +#define __NR_mknod 14 +#define __NR_chmod 15 +#define __NR_chown 16 +#define __NR_break 17 +#define __NR_stat 18 +#define __NR_lseek 19 +#define __NR_getpid 20 +#define __NR_mount 21 +#define __NR_umount 22 +#define __NR_setuid 23 +#define __NR_getuid 24 +#define __NR_stime 25 +#define __NR_ptrace 26 +#define __NR_alarm 27 +#define __NR_fstat 28 +#define __NR_pause 29 +#define __NR_utime 30 +#define __NR_stty 31 +#define __NR_gtty 32 +#define __NR_access 33 +#define __NR_nice 34 +#define __NR_ftime 35 +#define __NR_sync 36 +#define __NR_kill 37 +#define __NR_rename 38 +#define __NR_mkdir 39 +#define __NR_rmdir 40 +#define __NR_dup 41 +#define __NR_pipe 42 +#define __NR_times 43 +#define __NR_prof 44 +#define __NR_brk 45 +#define __NR_setgid 46 +#define __NR_getgid 47 +#define __NR_signal 48 +#define __NR_geteuid 49 +#define __NR_getegid 50 +#define __NR_acct 51 +#define __NR_phys 52 +#define __NR_lock 53 +#define __NR_ioctl 54 +#define __NR_fcntl 55 +#define __NR_mpx 56 +#define __NR_setpgid 57 +#define __NR_ulimit 58 +#define __NR_uname 59 +#define __NR_umask 60 +#define __NR_chroot 61 +#define __NR_ustat 62 +#define __NR_dup2 63 +#define __NR_getppid 64 +#define __NR_getpgrp 65 +#define __NR_setsid 66 +#define __NR_sigaction 67 +#define __NR_sgetmask 68 +#define __NR_ssetmask 69 +#define __NR_setreuid 70 +#define __NR_setregid 71 +#define __NR_sigsuspend 72 +#define __NR_sigpending 73 +#define __NR_sethostname 74 +#define __NR_setrlimit 75 +#define __NR_getrlimit 76 +#define __NR_getrusage 77 +#define __NR_gettimeofday 78 +#define __NR_settimeofday 79 +#define __NR_getgroups 80 +#define __NR_setgroups 81 +#define __NR_select 82 +#define __NR_symlink 83 +#define __NR_lstat 84 +#define __NR_readlink 85 +#define __NR_uselib 86 + + + +#define __NR_execve2 87 +#define __NR_getdents 88 +#define __NR_something 89 +#define __NR_sleep 90 +#define __NR_getcwd 91 +#define __NR_init_graphics 92 +#define __NR_get_message 93 +#define __NR_repaint 94 + +#define _syscall0(type,name) \ +type name(void) \ +{ \ +long __res; \ +__asm__ volatile ("int $0x80" \ + : "=a" (__res) \ + : "0" (__NR_##name)); \ +if (__res >= 0) \ + return (type) __res; \ +errno = -__res; \ +return -1; \ +} + +#define _syscall1(type,name,atype,a) \ +type name(atype a) \ +{ \ +long __res; \ +__asm__ volatile ("int $0x80" \ + : "=a" (__res) \ + : "0" (__NR_##name),"b" ((long)(a))); \ +if (__res >= 0) \ + return (type) __res; \ +errno = -__res; \ +return -1; \ +} + +#define _syscall2(type,name,atype,a,btype,b) \ +type name(atype a,btype b) \ +{ \ +long __res; \ +__asm__ volatile ("int $0x80" \ + : "=a" (__res) \ + : "0" (__NR_##name),"b" ((long)(a)),"c" ((long)(b))); \ +if (__res >= 0) \ + return (type) __res; \ +errno = -__res; \ +return -1; \ +} + +#define _syscall3(type,name,atype,a,btype,b,ctype,c) \ +type name(atype a,btype b,ctype c) \ +{ \ +long __res; \ +__asm__ volatile ("int $0x80" \ + : "=a" (__res) \ + : "0" (__NR_##name),"b" ((long)(a)),"c" ((long)(b)),"d" ((long)(c))); \ +if (__res>=0) \ + return (type) __res; \ +errno=-__res; \ +return -1; \ +} + +#endif /* __LIBRARY__ */ + +extern int errno; + +int access(const char * filename, mode_t mode); +int acct(const char * filename); +int alarm(int sec); +int brk(void * end_data_segment); +void * sbrk(ptrdiff_t increment); +int chdir(const char * filename); +int chmod(const char * filename, mode_t mode); +int chown(const char * filename, uid_t owner, gid_t group); +int chroot(const char * filename); +int close(int fildes); +int creat(const char * filename, mode_t mode); +int dup(int fildes); +int execve(const char * filename, char ** argv, char ** envp); +int execv(const char * pathname, char ** argv); +int execvp(const char * file, char ** argv); +int execl(const char * pathname, char * arg0, ...); +int execlp(const char * file, char * arg0, ...); +int execle(const char * pathname, char * arg0, ...); +volatile void exit(int status); +volatile void _exit(int status); +int fcntl(int fildes, int cmd, ...); +int fork(void); +int getpid(void); +int getuid(void); +int geteuid(void); +int getgid(void); +int getegid(void); +int ioctl(int fildes, int cmd, ...); +int kill(pid_t pid, int signal); +int link(const char * filename1, const char * filename2); +int lseek(int fildes, off_t offset, int origin); +int mknod(const char * filename, mode_t mode, dev_t dev); +int mount(const char * specialfile, const char * dir, int rwflag); +int nice(int val); +int open(const char * filename, int flag, ...); +int pause(void); +int pipe(int * fildes); +int read(int fildes, char * buf, off_t count); +int setpgrp(void); +int setpgid(pid_t pid,pid_t pgid); +int setuid(uid_t uid); +int setgid(gid_t gid); +void (*signal(int sig, void (*fn)(int)))(int); +int stat(const char * filename, struct stat * stat_buf); +int fstat(int fildes, struct stat * stat_buf); +int stime(time_t * tptr); +int sync(void); +time_t time(time_t * tloc); +time_t times(struct tms * tbuf); +int ulimit(int cmd, long limit); +mode_t umask(mode_t mask); +int umount(const char * specialfile); +int uname(struct utsname * name); +int unlink(const char * filename); +int ustat(dev_t dev, struct ustat * ubuf); +int utime(const char * filename, struct utimbuf * times); +pid_t waitpid(pid_t pid,int * wait_stat,int options); +pid_t wait(int * wait_stat); +int write(int fildes, const char * buf, off_t count); +int dup2(int oldfd, int newfd); +int getppid(void); +pid_t getpgrp(void); +pid_t setsid(void); + + +char* getcwd(char *buf,size_t size); +int something(void); +int sleep(unsigned int seconds); +int execve2(const char *path,char *argv[],char *envp[]); +int init_graphics(void); +int get_message(struct message *msg); +int repaint(int x,int y,int h); + +#define __always_inline inline __attribute__((always_inline)) + +#endif diff --git a/linux-0.11-lab/bochsout.txt b/linux-0.11-lab/bochsout.txt index e436f3f..a267268 100644 --- a/linux-0.11-lab/bochsout.txt +++ b/linux-0.11-lab/bochsout.txt @@ -31,7 +31,7 @@ 00000000000i[ ] Sound support: no 00000000000i[ ] USB support: no 00000000000i[ ] VGA extension support: vbe -00000000000i[MEM0 ] allocated memory at 0xb590a008. after alignment, vector=0xb590b000 +00000000000i[MEM0 ] allocated memory at 0xb591b008. after alignment, vector=0xb591c000 00000000000i[MEM0 ] 16.00MB 00000000000i[MEM0 ] mem block size = 0x00020000, blocks=128 00000000000i[MEM0 ] rom at 0xfffe0000/131072 ('/usr/local/share/bochs/BIOS-bochs-latest') @@ -42,7 +42,7 @@ 00000000000i[DEV ] PIIX3 PCI-to-ISA bridge present at device 1, function 0 00000000000i[PLUGIN] init_dev of 'cmos' plugin device by virtual method 00000000000i[CMOS ] Using local time for initial clock -00000000000i[CMOS ] Setting initial clock to: Wed Jun 29 10:19:36 2022 (time0=1656494376) +00000000000i[CMOS ] Setting initial clock to: Fri Jul 1 04:51:49 2022 (time0=1656647509) 00000000000i[PLUGIN] init_dev of 'dma' plugin device by virtual method 00000000000i[DMA ] channel 4 used by cascade 00000000000i[PLUGIN] init_dev of 'pic' plugin device by virtual method @@ -60,7 +60,7 @@ 00000000000i[FLOPPY] fd0: 'cur/linux/Image' ro=0, h=2,t=80,spt=18 00000000000i[IMG ] redolog : Standard Header : magic='Bochs Virtual HD Image', type='Redolog', subtype='Volatile', version = 2.0 00000000000i[IMG ] redolog : Specific Header : #entries=512, bitmap size=1, exent size = 4096 disk size = 1474560 -00000000000i[IMG ] 'vvfat' disk opened: directory is 'b/', redolog is 'b//vvfat.dir.8ea7jc' +00000000000i[IMG ] 'vvfat' disk opened: directory is 'b/', redolog is 'b//vvfat.dir.3Ca5jm' 00000000000i[FLOPPY] fd1: 'vvfat:b/' ro=0, h=2,t=80,spt=18 00000000000i[FLOPPY] Using boot sequence floppy, none, none 00000000000i[FLOPPY] Floppy boot signature check is enabled @@ -185,13 +185,11 @@ 00001647811i[BXVGA ] VBE known Display Interface b0c0 00001647843i[BXVGA ] VBE known Display Interface b0c5 00001650768i[VBIOS ] VBE Bios $Id: vbe.c,v 1.64 2011/07/19 18:25:05 vruppert Exp $ -00001789455i[XGUI ] charmap update. Font is 9 x 16 +00001869270i[XGUI ] charmap update. Font is 9 x 16 00001995333i[BIOS ] ata0-0: PCHS=512/2/20 translation=none LCHS=512/2/20 00005872240i[BIOS ] IDE time out 00051753879i[BIOS ] Booting from 0000:7c00 -00096455859i[FLOPPY] partial read() on floppy image returns 240/512 -00096623570i[FLOPPY] read() on floppy image returns 0 -00096790235i[FLOPPY] read() on floppy image returns 0 +00096790235i[FLOPPY] partial read() on floppy image returns 400/512 00096956900i[FLOPPY] read() on floppy image returns 0 00097123565i[FLOPPY] read() on floppy image returns 0 00097290230i[FLOPPY] read() on floppy image returns 0 @@ -310,27 +308,27 @@ 00116129680i[FLOPPY] read() on floppy image returns 0 00116296345i[FLOPPY] read() on floppy image returns 0 00116467319i[BIOS ] int13_harddisk: function 15, unmapped device for ELDL=81 -00204585000i[XGUI ] Mouse capture on -00269970000i[ ] cpu loop quit, shutting down simulator -00269970000i[CPU0 ] CPU is in protected mode (active) -00269970000i[CPU0 ] CS.mode = 32 bit -00269970000i[CPU0 ] SS.mode = 32 bit -00269970000i[CPU0 ] EFER = 0x00000000 -00269970000i[CPU0 ] | EAX=00000000 EBX=00090080 ECX=0001d580 EDX=00000000 -00269970000i[CPU0 ] | ESP=0001e52c EBP=0002434c ESI=000900a0 EDI=00023360 -00269970000i[CPU0 ] | IOPL=0 id vip vif ac vm rf nt of df IF tf sf zf af pf cf -00269970000i[CPU0 ] | SEG sltr(index|ti|rpl) base limit G D -00269970000i[CPU0 ] | CS:0008( 0001| 0| 0) 00000000 00ffffff 1 1 -00269970000i[CPU0 ] | DS:0010( 0002| 0| 0) 00000000 00ffffff 1 1 -00269970000i[CPU0 ] | SS:0010( 0002| 0| 0) 00000000 00ffffff 1 1 -00269970000i[CPU0 ] | ES:0010( 0002| 0| 0) 00000000 00ffffff 1 1 -00269970000i[CPU0 ] | FS:0017( 0002| 1| 3) 00000000 0009ffff 1 1 -00269970000i[CPU0 ] | GS:0017( 0002| 1| 3) 00000000 0009ffff 1 1 -00269970000i[CPU0 ] | EIP=00006e10 (00006e10) -00269970000i[CPU0 ] | CR0=0x8000001b CR2=0x08032ef0 -00269970000i[CPU0 ] | CR3=0x00000000 CR4=0x00000000 -00269970000i[CPU0 ] 0x00006e10>> test eax, eax : 85C0 -00269970000i[CMOS ] Last time is 1656494393 (Wed Jun 29 10:19:53 2022) -00269970000i[XGUI ] Exit -00269970000i[ ] restoring default signal behavior -00269970000i[SIM ] quit_sim called with exit code 1 +00227715000i[XGUI ] Mouse capture on +00576540000i[ ] cpu loop quit, shutting down simulator +00576540000i[CPU0 ] CPU is in protected mode (active) +00576540000i[CPU0 ] CS.mode = 32 bit +00576540000i[CPU0 ] SS.mode = 32 bit +00576540000i[CPU0 ] EFER = 0x00000000 +00576540000i[CPU0 ] | EAX=0001eb04 EBX=00090080 ECX=0001da20 EDX=00000000 +00576540000i[CPU0 ] | ESP=0001e9cc EBP=0002482c ESI=000900a0 EDI=00023840 +00576540000i[CPU0 ] | IOPL=0 id vip vif ac vm rf nt of df IF tf sf zf af pf cf +00576540000i[CPU0 ] | SEG sltr(index|ti|rpl) base limit G D +00576540000i[CPU0 ] | CS:0008( 0001| 0| 0) 00000000 00ffffff 1 1 +00576540000i[CPU0 ] | DS:0010( 0002| 0| 0) 00000000 00ffffff 1 1 +00576540000i[CPU0 ] | SS:0010( 0002| 0| 0) 00000000 00ffffff 1 1 +00576540000i[CPU0 ] | ES:0010( 0002| 0| 0) 00000000 00ffffff 1 1 +00576540000i[CPU0 ] | FS:0017( 0002| 1| 3) 00000000 0009ffff 1 1 +00576540000i[CPU0 ] | GS:0017( 0002| 1| 3) 00000000 0009ffff 1 1 +00576540000i[CPU0 ] | EIP=00006e3e (00006e3e) +00576540000i[CPU0 ] | CR0=0x8000001b CR2=0x0804253c +00576540000i[CPU0 ] | CR3=0x00000000 CR4=0x00000000 +00576540000i[CPU0 ] 0x00006e3e>> mov eax, dword ptr ds:[eax] : 8B00 +00576540000i[CMOS ] Last time is 1656647547 (Fri Jul 1 04:52:27 2022) +00576540000i[XGUI ] Exit +00576540000i[ ] restoring default signal behavior +00576540000i[SIM ] quit_sim called with exit code 1 diff --git a/linux-0.11-lab/cur/linux/Image b/linux-0.11-lab/cur/linux/Image index 7107e5b..fc5e064 100644 Binary files a/linux-0.11-lab/cur/linux/Image and b/linux-0.11-lab/cur/linux/Image differ diff --git a/linux-0.11-lab/cur/linux/System.map b/linux-0.11-lab/cur/linux/System.map index 6d4212d..03c32e3 100644 --- a/linux-0.11-lab/cur/linux/System.map +++ b/linux-0.11-lab/cur/linux/System.map @@ -21,581 +21,588 @@ 000064ef T pause 0000651e T setup 00006555 T sync -00006584 t time_init -00006799 T main -0000690c t printf -0000695b T init -00006bd3 T print_nr -00006c04 T show_task -00006c89 T show_stat -00006ccf T math_state_restore -00006d2d T schedule -00006edf T sys_pause -00006ef5 T sleep_on -00006f54 T interruptible_sleep_on -0000700f T ticks_to_floppy_on -000070da T floppy_on -00007109 T floppy_off -00007119 T do_floppy_timer -00007311 T do_timer -00007400 T sys_alarm -0000747f T sys_getpid -0000748b T sys_getppid -00007497 T sys_getuid -000074a6 T sys_geteuid -000074b6 T sys_getgid -000074c6 T sys_getegid -000074d5 T sys_nice -00007500 T sched_init -00007690 t bad_sys_call -00007698 t reschedule -000076a4 T system_call -000076df t ret_from_sys_call -00007728 T coprocessor_error -0000774a T device_not_available -00007784 T timer_interrupt -000077bc T sys_execve -000077cc T sys_execve2 -000077dc T sys_fork -000077f4 T hd_interrupt -00007830 T floppy_interrupt -00007866 T parallel_interrupt -0000786d t _get_base -0000789f t die -00007a81 T do_double_fault -00007aa4 T do_general_protection -00007ac7 T do_divide_error -00007aea T do_int3 -00007bb2 T do_nmi -00007bd5 T do_debug -00007bf8 T do_overflow -00007c1b T do_bounds -00007c3e T do_invalid_op -00007c61 T do_device_not_available -00007c84 T do_coprocessor_segment_overrun -00007ca7 T do_invalid_TSS -00007cca T do_segment_not_present -00007ced T do_stack_segment -00007d10 T do_coprocessor_error -00007d44 T do_reserved -00007d67 T trap_init -0000804b T divide_error -00008050 t no_error_code -00008080 T debug -00008087 T nmi -0000808e T int3 -00008095 T overflow -0000809c T bounds -000080a3 T invalid_op -000080aa T coprocessor_segment_overrun -000080b1 T reserved -000080b8 T irq13 -000080cd T double_fault -000080d2 t error_code -00008104 T invalid_TSS -0000810b T segment_not_present -00008112 T stack_segment -00008119 T general_protection -00008120 t _get_base -00008152 T verify_area -000081b9 T copy_mem -00008313 T copy_process -000087c0 T find_empty_process -00008854 T panic -0000888f T printk -000088e0 t skip_atoi -0000893b t number -00008bac T vsprintf -00009038 t get_fs_long -0000904e t put_fs_byte -00009066 t put_fs_long -00009072 T sys_ftime -00009078 T sys_break -0000907e T sys_ptrace -00009084 T sys_stty -0000908a T sys_gtty -00009090 T sys_rename -00009096 T sys_prof -0000909c T sys_setregid -00009155 T sys_setgid -000091ec T sys_acct -000091f2 T sys_phys -000091f8 T sys_lock -000091fe T sys_mpx -00009204 T sys_ulimit -0000920a T sys_time -00009266 T sys_setreuid -00009348 T sys_setuid -000093dd T sys_stime -00009433 T sys_times -000094d3 T sys_brk -00009515 T sys_setpgid -000095ee T sys_getpgrp -000095fa T sys_setsid -00009674 T sys_getgroups -0000967a T sys_setgroups -00009680 T sys_uname -000096e9 T sys_sethostname -000096ef T sys_getrlimit -000096f5 T sys_setrlimit -000096fb T sys_getrusage -00009701 T sys_gettimeofday -00009707 T sys_settimeofday -0000970d T sys_umask -00009740 t _get_base -00009772 t put_fs_long -0000977e T release -000097e2 t send_sig -00009861 t kill_session -000098bb T sys_kill -00009a6b t tell_father -00009af5 T do_exit -00009d29 T sys_exit -00009d42 T sys_waitpid -00009f68 t get_fs_byte -00009f76 t put_fs_byte -00009f8e t put_fs_long -00009f9a T sys_sgetmask -00009fa6 T sys_ssetmask -00009fd2 T sys_sigpending -00009fd8 T sys_sigsuspend -00009fde t save_old -0000a031 t get_new -0000a071 T sys_signal -0000a0f5 T sys_sigaction -0000a1ff T do_signal -0000a3eb T kernel_mktime -0000a530 t oom -0000a54f T get_free_page -0000a58b T free_page -0000a5fa T free_page_tables -0000a6f9 T copy_page_tables -0000a87a T put_page -0000a966 T un_wp_page -0000aa1e T do_wp_page -0000aaa9 T get_empty_page -0000aae9 t try_to_share -0000ac7b t share_page -0000ad2f T do_no_page -0000ae91 T mem_init -0000af05 T calc_mem -0000affa T page_fault -0000b031 t get_fs_long -0000b047 T sys_ustat -0000b04d T sys_utime -0000b0fa T sys_access -0000b1d6 T sys_chdir -0000b24a T sys_chroot -0000b2be T sys_chmod -0000b358 T sys_chown -0000b3d3 T sys_open -0000b676 T sys_creat -0000b699 T sys_close -0000b768 T sys_lseek -0000b87f T sys_read -0000ba72 T sys_write -0000bc20 t lock_inode -0000bc4d t unlock_inode -0000bc6b T invalidate_inodes -0000bcda T sync_inodes -0000bd31 t _bmap -0000c11d T bmap -0000c140 T create_block -0000c163 T iput -0000c2d2 T get_empty_inode -0000c427 T get_pipe_inode -0000c49c T iget -0000c661 t read_inode -0000c897 T sys_sync -0000c8fa T sync_dev -0000c9f3 T invalidate_buffers -0000ca65 T check_disk_change -0000cb0f t remove_from_queues -0000cc06 t insert_into_queues -0000cccb t find_buffer -0000cd33 T get_hash_table -0000cdb5 T getblk -0000cf53 T brelse -0000cf9c T bread -0000d021 T bread_page -0000d143 T breada -0000d238 T buffer_init -0000d367 t lock_super -0000d394 t free_super -0000d3d9 T get_super -0000d448 T put_super -0000d51b t read_super -0000d85e T sys_umount -0000d9bf T sys_mount -0000db30 T mount_root -0000dd3e t get_fs_byte -0000dd4c t put_fs_byte -0000dd64 T block_write -0000deb6 T block_read -0000dfe1 t get_fs_byte -0000dfef t put_fs_byte -0000e007 t rw_ttyx -0000e04f t rw_tty -0000e09f t rw_ram -0000e0a5 t rw_mem -0000e0ab t rw_kmem -0000e0b1 t rw_port -0000e14b t rw_memory -0000e221 T rw_char -0000e28b t get_fs_byte -0000e299 t put_fs_byte -0000e2b1 T file_read -0000e45c T file_write -0000e656 t put_fs_byte -0000e66e t cp_stat -0000e745 T sys_stat -0000e78f T sys_lstat -0000e7aa T sys_fstat -0000e807 T sys_readlink -0000e80d t _get_base -0000e83f t get_fs_byte -0000e84d t get_fs_long -0000e863 t put_fs_byte -0000e87b t put_fs_long -0000e887 t get_fs -0000e89b t get_ds -0000e8af t set_fs -0000e8b6 T sys_uselib -0000e8bc t create_tables -0000ea07 t count -0000ea46 t copy_strings -0000ec02 t change_ldt -0000ed85 T do_execve -0000f807 t oom -0000f826 T do_execve2 -000103f1 t get_fs_byte -000103ff t put_fs_byte -00010417 t put_fs_long -00010423 T read_pipe -000106f8 T sys_pipe -000108fa t get_fs_byte -00010908 t permission -000109a9 t match -00010a11 t find_entry -00010e6b t get_dir -00011058 t dir_namei -000110d7 T namei -000111ed T open_namei -00011540 T sys_mknod -00011770 T sys_mkdir -00011b21 t empty_dir -00011cff T sys_rmdir -00012057 T sys_unlink -000122f8 T sys_symlink -000122fe T sys_link -00012558 T free_block -000126ca T new_block -0001286e T free_inode -000129d5 T new_inode -00012baf t dupfd -00012c89 T sys_dup2 -00012cb0 T sys_dup -00012ccb T sys_fcntl -00012e0a T sys_ioctl -00012edb t free_ind -00012f7a t free_dind -00013019 T truncate -0001314e T sys_select -00013154 t put_fs_byte -0001316c T sys_getdents -00013332 T sys_sleep -0001336f T sys_something -00013375 T sys_getcwd -00013581 t lock_buffer -000135ae t unlock_buffer -000137a0 t make_request -00013944 T ll_rw_block -0001399d T blk_dev_init -000139eb t unlock_buffer -00013a20 t end_request -00013ad1 T floppy_deselect -00013b08 T floppy_change -00013b8e t setup_DMA -00013c44 t output_byte -00013cba t result -00013d77 t bad_flp_intr -00013dd6 t rw_interrupt -00013ec5 T setup_rw_floppy -00013f86 t seek_interrupt -00013fdf t transfer -00014114 t recal_interrupt -0001415e T unexpected_floppy_interrupt -000141a3 t recalibrate_floppy -00014205 t reset_interrupt -0001424a t reset_floppy -000142c7 t floppy_on_interrupt -00014332 t do_fd_request -00014536 T floppy_init -00014588 t unlock_buffer -000145bd t end_request -0001465c T sys_setup -00014a0f t controller_ready -00014aa3 t hd_out -00014b90 t drive_busy -00014bf6 t reset_controller -00014c73 t reset_hd -00014d0b T unexpected_hd_interrupt -00014d1e t bad_rw_intr -00014d5c t read_intr -00014e82 t recal_intr -00014e9c t do_hd_request -0001519d T hd_init -00015217 t unlock_buffer -0001524c t end_request -000152eb t do_rd_request -00015421 T rd_init -00015477 T rd_load -00015723 t get_fs_byte -00015731 t put_fs_byte -00015749 T tty_init -0001575a T tty_intr -000157ce t sleep_if_empty -00015806 t sleep_if_full -0001587a T copy_to_cooked -00015e35 T tty_read -000161a3 T tty_write -000163b5 T do_tty_interrupt -000163dd T chr_dev_init -000163de T readmouse -00016569 t gotoxy -000165b7 t set_origin -0001661d t scrup -0001680d t scrdown -00016904 t lf -0001693a t ri -00016970 t cr -00016991 t del -000169c3 t csi_J -00016a54 t csi_K -00016b06 T csi_m -00016b6d t set_cursor -00016bd3 t respond -00016c2b t insert_char -00016c8e t insert_line -00016cd2 t delete_char -00016d30 t delete_line -00016d74 t csi_at -00016db2 t csi_L -00016df0 t csi_P -00016e2e t csi_M -00016e6c t save_cur -00016e81 t restore_cur -00016ea0 T con_write -0001752e T con_init -00017813 T sysbeepstop -0001783c t sysbeep -0001789a t mode -0001789b t leds -0001789c t e0 -0001789d T keyboard_interrupt -000178c6 t e0_e1 -000178f1 t set_e0 -000178fa t set_e1 -00017903 t put_queue -0001793c t ctrl -00017954 t unctrl -00017958 t unalt -0001796e t lshift -00017976 t unlshift -0001797e t rshift -00017986 t unrshift -0001798e t caps -000179b0 t set_leds -000179c6 t uncaps -000179ce t scroll -000179d7 t num -000179e0 t cursor -00017a00 t cur2 -00017a29 t cur -00017a35 t ok_cur -00017a43 t num_table -00017a50 t cur_table -00017a5d t func -00017a7a t ok_func -00017a8d t end_func -00017a8e t func_table -00017abe t key_map -00017b1f t shift_map -00017be1 t do_self -00017c49 t none -00017c4a t minus -00017c5f t key_table -0001805f t kb_wait -00018068 t reboot -0001807a t die -0001807c t init -000180f1 T rs_init -00018174 T rs_write -000181c4 T rs1_interrupt -000181cc T rs2_interrupt -000181d1 t rs_int -000181e8 t rep_int -00018205 t end -00018213 t jmp_table -00018224 t modem_status -0001822c t line_status -00018234 t read_char -000182bb t get_fs_byte -000182c9 t get_fs_long -000182df t put_fs_byte -000182f7 t put_fs_long -00018303 t change_speed -00018381 t flush -00018393 t send_break -00018394 t get_termios -000183f0 t set_termios -00018440 t get_termio -00018508 t set_termio -000185cc T tty_ioctl -000188ca T mouse_interrupt -000188ef t get_fs_byte -000188fd T math_emulate -000189e0 T math_error -00018a00 T _exit -00018a10 T open -00018a59 T close -00018acd T dup -00018b04 T setsid -00018b33 T execve -00018bd0 T strcpy -00018bec T strncpy -00018c11 T strcat -00018c3c T strncat -00018c71 T strcmp -00018c98 T strncmp -00018cc6 T strchr -00018cf3 T strrchr -00018d22 T strspn -00018d5f T strcspn -00018d9c T strpbrk -00018dd3 T strstr -00018e0c T strlen -00018e2f T strtok -00018eb2 T memcpy -00018ed2 T memmove -00018f26 T memcmp -00018f50 T memchr -00018f88 T memset -00018fac t init_bucket_desc -00019015 T malloc -000191a1 T free_s -0001d3c8 d envp_rc -0001d3dc d envp -0001d400 D sys_call_table -0001d570 D NR_syscalls -0001d580 d init_task -0001e580 D current -0001e5a0 D task -0001e6a0 D stack_start -0001e6a8 D current_DOR -0001e6c0 d thisname.1955 -0001e700 d month -0001e740 d last_inode.1935 -0001e744 D start_buffer -0001e760 d crw_table -0001e780 d ioctl_table -0001e7a0 d floppy_type -0001e860 d cur_spec1 -0001e864 d cur_rate -0001e868 d floppy -0001e86c d current_track -0001e870 d callable.1844 -0001e880 D tty_table -00020da0 D table_list -00020dc0 d quotient -00020de0 D _ctype -00020f00 D bucket_dir -00020f50 B __bss_start -00020f50 D _edata -00020f60 b printbuf -00021360 b memory_end -00021364 b buffer_memory_end -00021368 b main_memory_start -00021380 B jiffies -00021384 B startup_time -00021388 B last_task_used_math -0002139c b mon_timer -000213ac b moff_timer -000213c0 b timer_list -000216c0 b next_timer -000216c4 B last_pid -000216e0 b buf -00021ae0 b HIGH_MEMORY -00021b00 b mem_map -00022a00 B inode_table -00023100 B nr_buffers -00023104 b free_list -00023108 b buffer_wait -0002310c B ROOT_DEV -00023140 B blk_dev -00023178 B do_floppy -0002317c B selected -00023184 b recalibrate -00023188 b reset -0002318c b seek -00023190 b reply_buffer -00023197 b current_drive -00023198 b sector -00023199 b head -0002319a b track -0002319b b seek_track -0002319c b command -000231a0 B do_hd -000231c0 B hd_info -000231f0 b recalibrate -000231f4 b reset -000231f8 b NR_HD -00023200 b hd -00023250 B rd_length -00023254 B cnt -00023258 b mouse_input_count -00023259 b mouse_left_down -0002325a b mouse_right_down -0002325b b mouse_left_move -0002325c b mouse_down_move -00023260 b mouse_x_position -00023264 b mouse_y_position -00023268 b fcreate -0002326c b cr_flag.1923 -00023280 B beepcount -00023284 b video_type -00023288 b video_num_columns -0002328c b video_size_row -00023290 b video_num_lines -00023294 b video_page -00023298 b video_mem_start -0002329c b video_mem_end -000232a0 b video_port_reg -000232a2 b video_port_val -000232a4 b video_erase_char -000232a8 b origin -000232ac b scr_end -000232b0 b pos -000232b4 b x -000232b8 b y -000232bc b top -000232c0 b bottom -000232c4 b state -000232c8 b npar -000232e0 b par -00023320 b ques -00023324 b saved_x -00023328 b saved_y -0002332c B free_bucket_desc -00023340 B drive_info -00023360 B user_stack -00024360 B hash_table -00024840 B super_block -00024ba0 B file_table -00024fa0 B request -00025420 B rd_start -00025424 B _ctmp -00025428 B errno -0002542c B ___strtok -00025430 B end -00025430 B _end +00006584 T init_graphics +000065b3 t time_init +000067c8 T main +0000693b t printf +0000698a T init +00006c02 T print_nr +00006c34 T show_task +00006cb9 T show_stat +00006cff T math_state_restore +00006d5d T schedule +00006f0f T sys_pause +00006f25 T sleep_on +00006f84 T interruptible_sleep_on +0000703f T ticks_to_floppy_on +0000710a T floppy_on +00007139 T floppy_off +00007149 T do_floppy_timer +00007341 T do_timer +00007430 T sys_alarm +000074af T sys_getpid +000074bb T sys_getppid +000074c7 T sys_getuid +000074d6 T sys_geteuid +000074e6 T sys_getgid +000074f6 T sys_getegid +00007505 T sys_nice +00007530 T sched_init +000076c0 t bad_sys_call +000076c8 t reschedule +000076d4 T system_call +0000770f t ret_from_sys_call +00007758 T coprocessor_error +0000777a T device_not_available +000077b4 T timer_interrupt +000077ec T sys_execve +000077fc T sys_execve2 +0000780c T sys_fork +00007824 T hd_interrupt +00007860 T floppy_interrupt +00007896 T parallel_interrupt +0000789d t _get_base +000078cf t die +00007ab1 T do_double_fault +00007ad4 T do_general_protection +00007af7 T do_divide_error +00007b1a T do_int3 +00007be2 T do_nmi +00007c05 T do_debug +00007c28 T do_overflow +00007c4b T do_bounds +00007c6e T do_invalid_op +00007c91 T do_device_not_available +00007cb4 T do_coprocessor_segment_overrun +00007cd7 T do_invalid_TSS +00007cfa T do_segment_not_present +00007d1d T do_stack_segment +00007d40 T do_coprocessor_error +00007d74 T do_reserved +00007d97 T trap_init +0000807b T divide_error +00008080 t no_error_code +000080b0 T debug +000080b7 T nmi +000080be T int3 +000080c5 T overflow +000080cc T bounds +000080d3 T invalid_op +000080da T coprocessor_segment_overrun +000080e1 T reserved +000080e8 T irq13 +000080fd T double_fault +00008102 t error_code +00008134 T invalid_TSS +0000813b T segment_not_present +00008142 T stack_segment +00008149 T general_protection +00008150 t _get_base +00008182 T verify_area +000081e9 T copy_mem +00008343 T copy_process +000087f0 T find_empty_process +00008884 T panic +000088bf T printk +00008910 t skip_atoi +0000896b t number +00008bdc T vsprintf +00009068 t get_fs_long +0000907e t put_fs_byte +00009096 t put_fs_long +000090a2 T sys_ftime +000090a8 T sys_break +000090ae T sys_ptrace +000090b4 T sys_stty +000090ba T sys_gtty +000090c0 T sys_rename +000090c6 T sys_prof +000090cc T sys_setregid +00009185 T sys_setgid +0000921c T sys_acct +00009222 T sys_phys +00009228 T sys_lock +0000922e T sys_mpx +00009234 T sys_ulimit +0000923a T sys_time +00009296 T sys_setreuid +00009378 T sys_setuid +0000940d T sys_stime +00009463 T sys_times +00009503 T sys_brk +00009545 T sys_setpgid +0000961e T sys_getpgrp +0000962a T sys_setsid +000096a4 T sys_getgroups +000096aa T sys_setgroups +000096b0 T sys_uname +00009719 T sys_sethostname +0000971f T sys_getrlimit +00009725 T sys_setrlimit +0000972b T sys_getrusage +00009731 T sys_gettimeofday +00009737 T sys_settimeofday +0000973d T sys_umask +00009770 t _get_base +000097a2 t put_fs_long +000097ae T release +00009812 t send_sig +00009891 t kill_session +000098eb T sys_kill +00009a9b t tell_father +00009b25 T do_exit +00009d59 T sys_exit +00009d72 T sys_waitpid +00009f98 t get_fs_byte +00009fa6 t put_fs_byte +00009fbe t put_fs_long +00009fca T sys_sgetmask +00009fd6 T sys_ssetmask +0000a002 T sys_sigpending +0000a008 T sys_sigsuspend +0000a00e t save_old +0000a061 t get_new +0000a0a1 T sys_signal +0000a125 T sys_sigaction +0000a22f T do_signal +0000a41b T kernel_mktime +0000a560 T sys_init_graphics +0000a733 T sys_get_message +0000a75f T sys_repaint +0000a894 t oom +0000a8b3 T get_free_page +0000a8ef T free_page +0000a95e T free_page_tables +0000aa5d T copy_page_tables +0000abde T put_page +0000acca T un_wp_page +0000ad82 T do_wp_page +0000ae0d T get_empty_page +0000ae4d t try_to_share +0000afdf t share_page +0000b093 T do_no_page +0000b1f5 T mem_init +0000b269 T calc_mem +0000b35e T page_fault +0000b395 t get_fs_long +0000b3ab T sys_ustat +0000b3b1 T sys_utime +0000b45e T sys_access +0000b53a T sys_chdir +0000b5ae T sys_chroot +0000b622 T sys_chmod +0000b6bc T sys_chown +0000b737 T sys_open +0000b9da T sys_creat +0000b9fd T sys_close +0000bacc T sys_lseek +0000bbe3 T sys_read +0000bdd6 T sys_write +0000bf84 t lock_inode +0000bfb1 t unlock_inode +0000bfcf T invalidate_inodes +0000c03e T sync_inodes +0000c095 t _bmap +0000c481 T bmap +0000c4a4 T create_block +0000c4c7 T iput +0000c636 T get_empty_inode +0000c78b T get_pipe_inode +0000c800 T iget +0000c9c5 t read_inode +0000cbfb T sys_sync +0000cc5e T sync_dev +0000cd57 T invalidate_buffers +0000cdc9 T check_disk_change +0000ce73 t remove_from_queues +0000cf6a t insert_into_queues +0000d02f t find_buffer +0000d097 T get_hash_table +0000d119 T getblk +0000d2b7 T brelse +0000d300 T bread +0000d385 T bread_page +0000d4a7 T breada +0000d59c T buffer_init +0000d6cb t lock_super +0000d6f8 t free_super +0000d73d T get_super +0000d7ac T put_super +0000d87f t read_super +0000dbc2 T sys_umount +0000dd23 T sys_mount +0000de94 T mount_root +0000e0a2 t get_fs_byte +0000e0b0 t put_fs_byte +0000e0c8 T block_write +0000e21a T block_read +0000e345 t get_fs_byte +0000e353 t put_fs_byte +0000e36b t rw_ttyx +0000e3b3 t rw_tty +0000e403 t rw_ram +0000e409 t rw_mem +0000e40f t rw_kmem +0000e415 t rw_port +0000e4af t rw_memory +0000e585 T rw_char +0000e5ef t get_fs_byte +0000e5fd t put_fs_byte +0000e615 T file_read +0000e7c0 T file_write +0000e9ba t put_fs_byte +0000e9d2 t cp_stat +0000eaa9 T sys_stat +0000eaf3 T sys_lstat +0000eb0e T sys_fstat +0000eb6b T sys_readlink +0000eb71 t _get_base +0000eba3 t get_fs_byte +0000ebb1 t get_fs_long +0000ebc7 t put_fs_byte +0000ebdf t put_fs_long +0000ebeb t get_fs +0000ebff t get_ds +0000ec13 t set_fs +0000ec1a T sys_uselib +0000ec20 t create_tables +0000ed6b t count +0000edaa t copy_strings +0000ef66 t change_ldt +0000f0e9 T do_execve +0000fb6b t oom +0000fb8a T do_execve2 +00010755 t get_fs_byte +00010763 t put_fs_byte +0001077b t put_fs_long +00010787 T read_pipe +00010a5c T sys_pipe +00010c5e t get_fs_byte +00010c6c t permission +00010d0d t match +00010d75 t find_entry +000111cf t get_dir +000113bc t dir_namei +0001143b T namei +00011551 T open_namei +000118a4 T sys_mknod +00011ad4 T sys_mkdir +00011e85 t empty_dir +00012063 T sys_rmdir +000123bb T sys_unlink +0001265c T sys_symlink +00012662 T sys_link +000128bc T free_block +00012a2e T new_block +00012bd2 T free_inode +00012d39 T new_inode +00012f13 t dupfd +00012fed T sys_dup2 +00013014 T sys_dup +0001302f T sys_fcntl +0001316e T sys_ioctl +0001323f t free_ind +000132de t free_dind +0001337d T truncate +000134b2 T sys_select +000134b8 t put_fs_byte +000134d0 T sys_getdents +00013696 T sys_sleep +000136d3 T sys_something +000136d9 T sys_getcwd +000138e5 t lock_buffer +00013912 t unlock_buffer +00013b04 t make_request +00013ca8 T ll_rw_block +00013d01 T blk_dev_init +00013d4f t unlock_buffer +00013d84 t end_request +00013e35 T floppy_deselect +00013e6c T floppy_change +00013ef2 t setup_DMA +00013fa8 t output_byte +0001401e t result +000140db t bad_flp_intr +0001413a t rw_interrupt +00014229 T setup_rw_floppy +000142ea t seek_interrupt +00014343 t transfer +00014478 t recal_interrupt +000144c2 T unexpected_floppy_interrupt +00014507 t recalibrate_floppy +00014569 t reset_interrupt +000145ae t reset_floppy +0001462b t floppy_on_interrupt +00014696 t do_fd_request +0001489a T floppy_init +000148ec t unlock_buffer +00014921 t end_request +000149c0 T sys_setup +00014d73 t controller_ready +00014e07 t hd_out +00014ef4 t drive_busy +00014f5a t reset_controller +00014fd7 t reset_hd +0001506f T unexpected_hd_interrupt +00015082 t bad_rw_intr +000150c0 t read_intr +000151e6 t recal_intr +00015200 t do_hd_request +00015501 T hd_init +0001557b t unlock_buffer +000155b0 t end_request +0001564f t do_rd_request +00015785 T rd_init +000157db T rd_load +00015a87 t get_fs_byte +00015a95 t put_fs_byte +00015aad T tty_init +00015abe T tty_intr +00015b32 t sleep_if_empty +00015b6a t sleep_if_full +00015bde T copy_to_cooked +00016199 T tty_read +00016507 T tty_write +00016719 T do_tty_interrupt +00016741 T chr_dev_init +00016742 T readmouse +00016916 T post_message +00016971 t gotoxy +000169bf t set_origin +00016a25 t scrup +00016c15 t scrdown +00016d0c t lf +00016d42 t ri +00016d78 t cr +00016d99 t del +00016dcb t csi_J +00016e5c t csi_K +00016f0e T csi_m +00016f75 t set_cursor +00016fdb t respond +00017033 t insert_char +00017096 t insert_line +000170da t delete_char +00017138 t delete_line +0001717c t csi_at +000171ba t csi_L +000171f8 t csi_P +00017236 t csi_M +00017274 t save_cur +00017289 t restore_cur +000172a8 T con_write +00017936 T con_init +00017c1b T sysbeepstop +00017c44 t sysbeep +00017ca2 t mode +00017ca3 t leds +00017ca4 t e0 +00017ca5 T keyboard_interrupt +00017cce t e0_e1 +00017cf9 t set_e0 +00017d02 t set_e1 +00017d0b t put_queue +00017d44 t ctrl +00017d5c t unctrl +00017d60 t unalt +00017d76 t lshift +00017d7e t unlshift +00017d86 t rshift +00017d8e t unrshift +00017d96 t caps +00017db8 t set_leds +00017dce t uncaps +00017dd6 t scroll +00017ddf t num +00017de8 t cursor +00017e08 t cur2 +00017e31 t cur +00017e3d t ok_cur +00017e4b t num_table +00017e58 t cur_table +00017e65 t func +00017e82 t ok_func +00017e95 t end_func +00017e96 t func_table +00017ec6 t key_map +00017f27 t shift_map +00017fe9 t do_self +00018051 t none +00018052 t minus +00018067 t key_table +00018467 t kb_wait +00018470 t reboot +00018482 t die +00018484 t init +000184f9 T rs_init +0001857c T rs_write +000185cc T rs1_interrupt +000185d4 T rs2_interrupt +000185d9 t rs_int +000185f0 t rep_int +0001860d t end +0001861b t jmp_table +0001862c t modem_status +00018634 t line_status +0001863c t read_char +000186c3 t get_fs_byte +000186d1 t get_fs_long +000186e7 t put_fs_byte +000186ff t put_fs_long +0001870b t change_speed +00018789 t flush +0001879b t send_break +0001879c t get_termios +000187f8 t set_termios +00018848 t get_termio +00018910 t set_termio +000189d4 T tty_ioctl +00018cd2 T mouse_interrupt +00018d1e t get_fs_byte +00018d2c T math_emulate +00018e0f T math_error +00018e2f T _exit +00018e3f T open +00018e88 T close +00018efc T dup +00018f33 T setsid +00018f62 T execve +00018fff T strcpy +0001901b T strncpy +00019040 T strcat +0001906b T strncat +000190a0 T strcmp +000190c7 T strncmp +000190f5 T strchr +00019122 T strrchr +00019151 T strspn +0001918e T strcspn +000191cb T strpbrk +00019202 T strstr +0001923b T strlen +0001925e T strtok +000192e1 T memcpy +00019301 T memmove +00019355 T memcmp +0001937f T memchr +000193b7 T memset +000193db t init_bucket_desc +00019444 T malloc +000195d0 T free_s +0001d868 d envp_rc +0001d87c d envp +0001d8a0 D sys_call_table +0001da1c D NR_syscalls +0001da20 d init_task +0001ea20 D current +0001ea40 D task +0001eb40 D stack_start +0001eb48 D current_DOR +0001eb60 d thisname.1960 +0001eba0 d month +0001ebe0 d last_inode.1935 +0001ebe4 D start_buffer +0001ec00 d crw_table +0001ec20 d ioctl_table +0001ec40 d floppy_type +0001ed00 d cur_spec1 +0001ed04 d cur_rate +0001ed08 d floppy +0001ed0c d current_track +0001ed10 d callable.1844 +0001ed20 D tty_table +00021240 D table_list +00021260 d quotient +00021280 D _ctype +000213a0 D bucket_dir +000213f0 B __bss_start +000213f0 D _edata +00021400 b printbuf +00021800 b memory_end +00021804 b buffer_memory_end +00021808 b main_memory_start +00021820 B jiffies +00021824 B startup_time +00021828 B last_task_used_math +0002183c b mon_timer +0002184c b moff_timer +00021860 b timer_list +00021b60 b next_timer +00021b64 B last_pid +00021b80 b buf +00021f80 b ff +00021fa0 b HIGH_MEMORY +00021fc0 b mem_map +00022ec0 B inode_table +000235c0 B nr_buffers +000235c4 b free_list +000235c8 b buffer_wait +000235cc B ROOT_DEV +00023600 B blk_dev +00023638 B do_floppy +0002363c B selected +00023644 b recalibrate +00023648 b reset +0002364c b seek +00023650 b reply_buffer +00023657 b current_drive +00023658 b sector +00023659 b head +0002365a b track +0002365b b seek_track +0002365c b command +00023660 B do_hd +00023680 B hd_info +000236b0 b recalibrate +000236b4 b reset +000236b8 b NR_HD +000236c0 b hd +00023710 B rd_length +00023714 B cnt +00023718 b mouse_input_count +00023719 b mouse_left_down +0002371a b mouse_right_down +0002371b b mouse_left_move +0002371c b mouse_down_move +00023720 b mouse_x_position +00023724 b mouse_y_position +00023728 b fcreate +0002372c b cr_flag.1928 +00023740 B beepcount +00023744 b video_type +00023748 b video_num_columns +0002374c b video_size_row +00023750 b video_num_lines +00023754 b video_page +00023758 b video_mem_start +0002375c b video_mem_end +00023760 b video_port_reg +00023762 b video_port_val +00023764 b video_erase_char +00023768 b origin +0002376c b scr_end +00023770 b pos +00023774 b x +00023778 b y +0002377c b top +00023780 b bottom +00023784 b state +00023788 b npar +000237a0 b par +000237e0 b ques +000237e4 b saved_x +000237e8 b saved_y +000237ec B free_bucket_desc +00023800 B headd +00023820 B drive_info +00023840 B user_stack +00024840 B hash_table +00024d20 B super_block +00025080 B file_table +00025480 B request +00025900 B rd_start +00025904 B _ctmp +00025908 B errno +0002590c B ___strtok +00025910 B end +00025910 B _end diff --git a/linux-0.11-lab/cur/linux/System.map.2 b/linux-0.11-lab/cur/linux/System.map.2 index 8ddc59c..6625959 100644 --- a/linux-0.11-lab/cur/linux/System.map.2 +++ b/linux-0.11-lab/cur/linux/System.map.2 @@ -20,7 +20,7 @@ kernel/chr_drv/chr_drv.a(rs_io.o) kernel/chr_drv/chr_drv.a(serial.o) (rs1_interrupt) kernel/chr_drv/chr_drv.a(tty_ioctl.o) fs/fs.o (tty_ioctl) -kernel/chr_drv/chr_drv.a(mouse.o) +kernel/chr_drv/chr_drv.a(mouse.2.o) kernel/chr_drv/chr_drv.a(console.o) (mouse_interrupt) kernel/math/math.a(math_emulate.o) kernel/kernel.o (math_emulate) @@ -41,6 +41,7 @@ lib/lib.a(malloc.o) fs/fs.o (malloc) 公共符号 大小 文件 errno 0x4 lib/lib.a(errno.o) +headd 0x4 init/main.o hash_table 0x4cc fs/fs.o ___strtok 0x4 lib/lib.a(string.o) rd_start 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) @@ -207,7 +208,7 @@ LOAD lib/lib.a *(.iplt) .iplt 0x0000000000000000 0x0 boot/head.o -.text 0x0000000000000000 0x19318 +.text 0x0000000000000000 0x19747 *(.text.unlikely .text.*_unlikely .text.unlikely.*) *(.text.exit .text.exit.*) *(.text.startup .text.startup.*) @@ -219,342 +220,346 @@ LOAD lib/lib.a 0x0000000000005000 tmp_floppy_area 0x00000000000054c0 idt 0x0000000000005cc0 gdt - .text 0x00000000000064c0 0x744 init/main.o + .text 0x00000000000064c0 0x773 init/main.o 0x00000000000064c0 fork 0x00000000000064ef pause 0x000000000000651e setup 0x0000000000006555 sync - 0x0000000000006799 main - 0x000000000000695b init - 0x0000000000006bd3 print_nr - .text 0x0000000000006c04 0x392c kernel/kernel.o - 0x0000000000006c04 show_task - 0x0000000000006c89 show_stat - 0x0000000000006ccf math_state_restore - 0x0000000000006d2d schedule - 0x0000000000006edf sys_pause - 0x0000000000006ef5 sleep_on - 0x0000000000006f54 interruptible_sleep_on - 0x0000000000006fe7 wake_up - 0x000000000000700f ticks_to_floppy_on - 0x00000000000070da floppy_on - 0x0000000000007109 floppy_off - 0x0000000000007119 do_floppy_timer - 0x00000000000071ed add_timer - 0x0000000000007311 do_timer - 0x0000000000007400 sys_alarm - 0x000000000000747f sys_getpid - 0x000000000000748b sys_getppid - 0x0000000000007497 sys_getuid - 0x00000000000074a6 sys_geteuid - 0x00000000000074b6 sys_getgid - 0x00000000000074c6 sys_getegid - 0x00000000000074d5 sys_nice - 0x0000000000007500 sched_init - 0x00000000000076a4 system_call - 0x0000000000007728 coprocessor_error - 0x000000000000774a device_not_available - 0x0000000000007784 timer_interrupt - 0x00000000000077bc sys_execve - 0x00000000000077cc sys_execve2 - 0x00000000000077dc sys_fork - 0x00000000000077f4 hd_interrupt - 0x0000000000007830 floppy_interrupt - 0x0000000000007866 parallel_interrupt - 0x0000000000007a81 do_double_fault - 0x0000000000007aa4 do_general_protection - 0x0000000000007ac7 do_divide_error - 0x0000000000007aea do_int3 - 0x0000000000007bb2 do_nmi - 0x0000000000007bd5 do_debug - 0x0000000000007bf8 do_overflow - 0x0000000000007c1b do_bounds - 0x0000000000007c3e do_invalid_op - 0x0000000000007c61 do_device_not_available - 0x0000000000007c84 do_coprocessor_segment_overrun - 0x0000000000007ca7 do_invalid_TSS - 0x0000000000007cca do_segment_not_present - 0x0000000000007ced do_stack_segment - 0x0000000000007d10 do_coprocessor_error - 0x0000000000007d44 do_reserved - 0x0000000000007d67 trap_init - 0x000000000000804b divide_error - 0x0000000000008080 debug - 0x0000000000008087 nmi - 0x000000000000808e int3 - 0x0000000000008095 overflow - 0x000000000000809c bounds - 0x00000000000080a3 invalid_op - 0x00000000000080aa coprocessor_segment_overrun - 0x00000000000080b1 reserved - 0x00000000000080b8 irq13 - 0x00000000000080cd double_fault - 0x0000000000008104 invalid_TSS - 0x000000000000810b segment_not_present - 0x0000000000008112 stack_segment - 0x0000000000008119 general_protection - 0x0000000000008152 verify_area - 0x00000000000081b9 copy_mem - 0x0000000000008313 copy_process - 0x00000000000087c0 find_empty_process - 0x0000000000008854 panic - 0x000000000000888f printk - 0x0000000000008bac vsprintf - 0x0000000000009072 sys_ftime - 0x0000000000009078 sys_break - 0x000000000000907e sys_ptrace - 0x0000000000009084 sys_stty - 0x000000000000908a sys_gtty - 0x0000000000009090 sys_rename - 0x0000000000009096 sys_prof - 0x000000000000909c sys_setregid - 0x0000000000009155 sys_setgid - 0x00000000000091ec sys_acct - 0x00000000000091f2 sys_phys - 0x00000000000091f8 sys_lock - 0x00000000000091fe sys_mpx - 0x0000000000009204 sys_ulimit - 0x000000000000920a sys_time - 0x0000000000009266 sys_setreuid - 0x0000000000009348 sys_setuid - 0x00000000000093dd sys_stime - 0x0000000000009433 sys_times - 0x00000000000094d3 sys_brk - 0x0000000000009515 sys_setpgid - 0x00000000000095ee sys_getpgrp - 0x00000000000095fa sys_setsid - 0x0000000000009674 sys_getgroups - 0x000000000000967a sys_setgroups - 0x0000000000009680 sys_uname - 0x00000000000096e9 sys_sethostname - 0x00000000000096ef sys_getrlimit - 0x00000000000096f5 sys_setrlimit - 0x00000000000096fb sys_getrusage - 0x0000000000009701 sys_gettimeofday - 0x0000000000009707 sys_settimeofday - 0x000000000000970d sys_umask - 0x000000000000977e release - 0x00000000000098bb sys_kill - 0x0000000000009af5 do_exit - 0x0000000000009d29 sys_exit - 0x0000000000009d42 sys_waitpid - 0x0000000000009f9a sys_sgetmask - 0x0000000000009fa6 sys_ssetmask - 0x0000000000009fd2 sys_sigpending - 0x0000000000009fd8 sys_sigsuspend - 0x000000000000a071 sys_signal - 0x000000000000a0f5 sys_sigaction - 0x000000000000a1ff do_signal - 0x000000000000a3eb kernel_mktime - .text 0x000000000000a530 0xb01 mm/mm.o - 0x000000000000a54f get_free_page - 0x000000000000a58b free_page - 0x000000000000a5fa free_page_tables - 0x000000000000a6f9 copy_page_tables - 0x000000000000a87a put_page - 0x000000000000a966 un_wp_page - 0x000000000000aa1e do_wp_page - 0x000000000000aa50 write_verify - 0x000000000000aaa9 get_empty_page - 0x000000000000ad2f do_no_page - 0x000000000000ae91 mem_init - 0x000000000000af05 calc_mem - 0x000000000000affa page_fault - .text 0x000000000000b031 0x8550 fs/fs.o - 0x000000000000b047 sys_ustat - 0x000000000000b04d sys_utime - 0x000000000000b0fa sys_access - 0x000000000000b1d6 sys_chdir - 0x000000000000b24a sys_chroot - 0x000000000000b2be sys_chmod - 0x000000000000b358 sys_chown - 0x000000000000b3d3 sys_open - 0x000000000000b676 sys_creat - 0x000000000000b699 sys_close - 0x000000000000b768 sys_lseek - 0x000000000000b87f sys_read - 0x000000000000ba72 sys_write - 0x000000000000bc6b invalidate_inodes - 0x000000000000bcda sync_inodes - 0x000000000000c11d bmap - 0x000000000000c140 create_block - 0x000000000000c163 iput - 0x000000000000c2d2 get_empty_inode - 0x000000000000c427 get_pipe_inode - 0x000000000000c49c iget - 0x000000000000c897 sys_sync - 0x000000000000c8fa sync_dev - 0x000000000000c9f3 invalidate_buffers - 0x000000000000ca65 check_disk_change - 0x000000000000cd33 get_hash_table - 0x000000000000cdb5 getblk - 0x000000000000cf53 brelse - 0x000000000000cf9c bread - 0x000000000000d021 bread_page - 0x000000000000d143 breada - 0x000000000000d238 buffer_init - 0x000000000000d3d9 get_super - 0x000000000000d448 put_super - 0x000000000000d85e sys_umount - 0x000000000000d9bf sys_mount - 0x000000000000db30 mount_root - 0x000000000000dd64 block_write - 0x000000000000deb6 block_read - 0x000000000000e221 rw_char - 0x000000000000e2b1 file_read - 0x000000000000e45c file_write - 0x000000000000e745 sys_stat - 0x000000000000e78f sys_lstat - 0x000000000000e7aa sys_fstat - 0x000000000000e807 sys_readlink - 0x000000000000e8b6 sys_uselib - 0x000000000000ed85 do_execve - 0x000000000000f826 do_execve2 - 0x0000000000010423 read_pipe - 0x0000000000010579 write_pipe - 0x00000000000106f8 sys_pipe - 0x00000000000110d7 namei - 0x00000000000111ed open_namei - 0x0000000000011540 sys_mknod - 0x0000000000011770 sys_mkdir - 0x0000000000011cff sys_rmdir - 0x0000000000012057 sys_unlink - 0x00000000000122f8 sys_symlink - 0x00000000000122fe sys_link - 0x0000000000012558 free_block - 0x00000000000126ca new_block - 0x000000000001286e free_inode - 0x00000000000129d5 new_inode - 0x0000000000012c89 sys_dup2 - 0x0000000000012cb0 sys_dup - 0x0000000000012ccb sys_fcntl - 0x0000000000012e0a sys_ioctl - 0x0000000000013019 truncate - 0x000000000001314e sys_select - 0x000000000001316c sys_getdents - 0x0000000000013332 sys_sleep - 0x000000000001336f sys_something - 0x0000000000013375 sys_getcwd - .text 0x0000000000013581 0x46a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - 0x0000000000013944 ll_rw_block - 0x000000000001399d blk_dev_init - .text 0x00000000000139eb 0xb9d kernel/blk_drv/blk_drv.a(floppy.o) - 0x0000000000013ad1 floppy_deselect - 0x0000000000013b08 floppy_change - 0x0000000000013ec5 setup_rw_floppy - 0x000000000001415e unexpected_floppy_interrupt - 0x0000000000014536 floppy_init - .text 0x0000000000014588 0xc8f kernel/blk_drv/blk_drv.a(hd.o) - 0x000000000001465c sys_setup - 0x0000000000014d0b unexpected_hd_interrupt - 0x000000000001519d hd_init - .text 0x0000000000015217 0x50c kernel/blk_drv/blk_drv.a(ramdisk.o) - 0x0000000000015421 rd_init - 0x0000000000015477 rd_load - .text 0x0000000000015723 0xe46 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x0000000000015749 tty_init - 0x000000000001575a tty_intr - 0x0000000000015867 wait_for_keypress - 0x000000000001587a copy_to_cooked - 0x0000000000015e35 tty_read - 0x00000000000161a3 tty_write - 0x00000000000163b5 do_tty_interrupt - 0x00000000000163dd chr_dev_init - 0x00000000000163de readmouse - .text 0x0000000000016569 0x1331 kernel/chr_drv/chr_drv.a(console.o) - 0x0000000000016b06 csi_m - 0x0000000000016ea0 con_write - 0x000000000001752e con_init - 0x0000000000017813 sysbeepstop - .text 0x000000000001789a 0x7e2 kernel/chr_drv/chr_drv.a(keyboard.2.o) - 0x000000000001789d keyboard_interrupt - .text 0x000000000001807c 0x145 kernel/chr_drv/chr_drv.a(serial.o) - 0x00000000000180f1 rs_init - 0x0000000000018174 rs_write - *fill* 0x00000000000181c1 0x3 - .text 0x00000000000181c4 0xf7 kernel/chr_drv/chr_drv.a(rs_io.o) - 0x00000000000181c4 rs1_interrupt - 0x00000000000181cc rs2_interrupt - .text 0x00000000000182bb 0x60f kernel/chr_drv/chr_drv.a(tty_ioctl.o) - 0x00000000000185cc tty_ioctl - .text 0x00000000000188ca 0x25 kernel/chr_drv/chr_drv.a(mouse.o) - 0x00000000000188ca mouse_interrupt - .text 0x00000000000188ef 0x111 kernel/math/math.a(math_emulate.o) - 0x00000000000188fd math_emulate - 0x00000000000189e0 math_error - .text 0x0000000000018a00 0x0 lib/lib.a(ctype.o) - .text 0x0000000000018a00 0x10 lib/lib.a(_exit.o) - 0x0000000000018a00 _exit - .text 0x0000000000018a10 0x49 lib/lib.a(open.o) - 0x0000000000018a10 open - .text 0x0000000000018a59 0x37 lib/lib.a(close.o) - 0x0000000000018a59 close - .text 0x0000000000018a90 0x0 lib/lib.a(errno.o) - .text 0x0000000000018a90 0x3d lib/lib.a(write.o) - 0x0000000000018a90 write - .text 0x0000000000018acd 0x37 lib/lib.a(dup.o) - 0x0000000000018acd dup - .text 0x0000000000018b04 0x2f lib/lib.a(setsid.o) - 0x0000000000018b04 setsid - .text 0x0000000000018b33 0x3d lib/lib.a(execve.o) - 0x0000000000018b33 execve - .text 0x0000000000018b70 0x60 lib/lib.a(wait.o) - 0x0000000000018b70 waitpid - 0x0000000000018bad wait - .text 0x0000000000018bd0 0x3dc lib/lib.a(string.o) - 0x0000000000018bd0 strcpy - 0x0000000000018bec strncpy - 0x0000000000018c11 strcat - 0x0000000000018c3c strncat - 0x0000000000018c71 strcmp - 0x0000000000018c98 strncmp - 0x0000000000018cc6 strchr - 0x0000000000018cf3 strrchr - 0x0000000000018d22 strspn - 0x0000000000018d5f strcspn - 0x0000000000018d9c strpbrk - 0x0000000000018dd3 strstr - 0x0000000000018e0c strlen - 0x0000000000018e2f strtok - 0x0000000000018eb2 memcpy - 0x0000000000018ed2 memmove - 0x0000000000018f26 memcmp - 0x0000000000018f50 memchr - 0x0000000000018f88 memset - .text 0x0000000000018fac 0x36c lib/lib.a(malloc.o) - 0x0000000000019015 malloc - 0x00000000000191a1 free_s + 0x0000000000006584 init_graphics + 0x00000000000067c8 main + 0x000000000000698a init + 0x0000000000006c02 print_nr + *fill* 0x0000000000006c33 0x1 + .text 0x0000000000006c34 0x3c60 kernel/kernel.o + 0x0000000000006c34 show_task + 0x0000000000006cb9 show_stat + 0x0000000000006cff math_state_restore + 0x0000000000006d5d schedule + 0x0000000000006f0f sys_pause + 0x0000000000006f25 sleep_on + 0x0000000000006f84 interruptible_sleep_on + 0x0000000000007017 wake_up + 0x000000000000703f ticks_to_floppy_on + 0x000000000000710a floppy_on + 0x0000000000007139 floppy_off + 0x0000000000007149 do_floppy_timer + 0x000000000000721d add_timer + 0x0000000000007341 do_timer + 0x0000000000007430 sys_alarm + 0x00000000000074af sys_getpid + 0x00000000000074bb sys_getppid + 0x00000000000074c7 sys_getuid + 0x00000000000074d6 sys_geteuid + 0x00000000000074e6 sys_getgid + 0x00000000000074f6 sys_getegid + 0x0000000000007505 sys_nice + 0x0000000000007530 sched_init + 0x00000000000076d4 system_call + 0x0000000000007758 coprocessor_error + 0x000000000000777a device_not_available + 0x00000000000077b4 timer_interrupt + 0x00000000000077ec sys_execve + 0x00000000000077fc sys_execve2 + 0x000000000000780c sys_fork + 0x0000000000007824 hd_interrupt + 0x0000000000007860 floppy_interrupt + 0x0000000000007896 parallel_interrupt + 0x0000000000007ab1 do_double_fault + 0x0000000000007ad4 do_general_protection + 0x0000000000007af7 do_divide_error + 0x0000000000007b1a do_int3 + 0x0000000000007be2 do_nmi + 0x0000000000007c05 do_debug + 0x0000000000007c28 do_overflow + 0x0000000000007c4b do_bounds + 0x0000000000007c6e do_invalid_op + 0x0000000000007c91 do_device_not_available + 0x0000000000007cb4 do_coprocessor_segment_overrun + 0x0000000000007cd7 do_invalid_TSS + 0x0000000000007cfa do_segment_not_present + 0x0000000000007d1d do_stack_segment + 0x0000000000007d40 do_coprocessor_error + 0x0000000000007d74 do_reserved + 0x0000000000007d97 trap_init + 0x000000000000807b divide_error + 0x00000000000080b0 debug + 0x00000000000080b7 nmi + 0x00000000000080be int3 + 0x00000000000080c5 overflow + 0x00000000000080cc bounds + 0x00000000000080d3 invalid_op + 0x00000000000080da coprocessor_segment_overrun + 0x00000000000080e1 reserved + 0x00000000000080e8 irq13 + 0x00000000000080fd double_fault + 0x0000000000008134 invalid_TSS + 0x000000000000813b segment_not_present + 0x0000000000008142 stack_segment + 0x0000000000008149 general_protection + 0x0000000000008182 verify_area + 0x00000000000081e9 copy_mem + 0x0000000000008343 copy_process + 0x00000000000087f0 find_empty_process + 0x0000000000008884 panic + 0x00000000000088bf printk + 0x0000000000008bdc vsprintf + 0x00000000000090a2 sys_ftime + 0x00000000000090a8 sys_break + 0x00000000000090ae sys_ptrace + 0x00000000000090b4 sys_stty + 0x00000000000090ba sys_gtty + 0x00000000000090c0 sys_rename + 0x00000000000090c6 sys_prof + 0x00000000000090cc sys_setregid + 0x0000000000009185 sys_setgid + 0x000000000000921c sys_acct + 0x0000000000009222 sys_phys + 0x0000000000009228 sys_lock + 0x000000000000922e sys_mpx + 0x0000000000009234 sys_ulimit + 0x000000000000923a sys_time + 0x0000000000009296 sys_setreuid + 0x0000000000009378 sys_setuid + 0x000000000000940d sys_stime + 0x0000000000009463 sys_times + 0x0000000000009503 sys_brk + 0x0000000000009545 sys_setpgid + 0x000000000000961e sys_getpgrp + 0x000000000000962a sys_setsid + 0x00000000000096a4 sys_getgroups + 0x00000000000096aa sys_setgroups + 0x00000000000096b0 sys_uname + 0x0000000000009719 sys_sethostname + 0x000000000000971f sys_getrlimit + 0x0000000000009725 sys_setrlimit + 0x000000000000972b sys_getrusage + 0x0000000000009731 sys_gettimeofday + 0x0000000000009737 sys_settimeofday + 0x000000000000973d sys_umask + 0x00000000000097ae release + 0x00000000000098eb sys_kill + 0x0000000000009b25 do_exit + 0x0000000000009d59 sys_exit + 0x0000000000009d72 sys_waitpid + 0x0000000000009fca sys_sgetmask + 0x0000000000009fd6 sys_ssetmask + 0x000000000000a002 sys_sigpending + 0x000000000000a008 sys_sigsuspend + 0x000000000000a0a1 sys_signal + 0x000000000000a125 sys_sigaction + 0x000000000000a22f do_signal + 0x000000000000a41b kernel_mktime + 0x000000000000a560 sys_init_graphics + 0x000000000000a733 sys_get_message + 0x000000000000a75f sys_repaint + .text 0x000000000000a894 0xb01 mm/mm.o + 0x000000000000a8b3 get_free_page + 0x000000000000a8ef free_page + 0x000000000000a95e free_page_tables + 0x000000000000aa5d copy_page_tables + 0x000000000000abde put_page + 0x000000000000acca un_wp_page + 0x000000000000ad82 do_wp_page + 0x000000000000adb4 write_verify + 0x000000000000ae0d get_empty_page + 0x000000000000b093 do_no_page + 0x000000000000b1f5 mem_init + 0x000000000000b269 calc_mem + 0x000000000000b35e page_fault + .text 0x000000000000b395 0x8550 fs/fs.o + 0x000000000000b3ab sys_ustat + 0x000000000000b3b1 sys_utime + 0x000000000000b45e sys_access + 0x000000000000b53a sys_chdir + 0x000000000000b5ae sys_chroot + 0x000000000000b622 sys_chmod + 0x000000000000b6bc sys_chown + 0x000000000000b737 sys_open + 0x000000000000b9da sys_creat + 0x000000000000b9fd sys_close + 0x000000000000bacc sys_lseek + 0x000000000000bbe3 sys_read + 0x000000000000bdd6 sys_write + 0x000000000000bfcf invalidate_inodes + 0x000000000000c03e sync_inodes + 0x000000000000c481 bmap + 0x000000000000c4a4 create_block + 0x000000000000c4c7 iput + 0x000000000000c636 get_empty_inode + 0x000000000000c78b get_pipe_inode + 0x000000000000c800 iget + 0x000000000000cbfb sys_sync + 0x000000000000cc5e sync_dev + 0x000000000000cd57 invalidate_buffers + 0x000000000000cdc9 check_disk_change + 0x000000000000d097 get_hash_table + 0x000000000000d119 getblk + 0x000000000000d2b7 brelse + 0x000000000000d300 bread + 0x000000000000d385 bread_page + 0x000000000000d4a7 breada + 0x000000000000d59c buffer_init + 0x000000000000d73d get_super + 0x000000000000d7ac put_super + 0x000000000000dbc2 sys_umount + 0x000000000000dd23 sys_mount + 0x000000000000de94 mount_root + 0x000000000000e0c8 block_write + 0x000000000000e21a block_read + 0x000000000000e585 rw_char + 0x000000000000e615 file_read + 0x000000000000e7c0 file_write + 0x000000000000eaa9 sys_stat + 0x000000000000eaf3 sys_lstat + 0x000000000000eb0e sys_fstat + 0x000000000000eb6b sys_readlink + 0x000000000000ec1a sys_uselib + 0x000000000000f0e9 do_execve + 0x000000000000fb8a do_execve2 + 0x0000000000010787 read_pipe + 0x00000000000108dd write_pipe + 0x0000000000010a5c sys_pipe + 0x000000000001143b namei + 0x0000000000011551 open_namei + 0x00000000000118a4 sys_mknod + 0x0000000000011ad4 sys_mkdir + 0x0000000000012063 sys_rmdir + 0x00000000000123bb sys_unlink + 0x000000000001265c sys_symlink + 0x0000000000012662 sys_link + 0x00000000000128bc free_block + 0x0000000000012a2e new_block + 0x0000000000012bd2 free_inode + 0x0000000000012d39 new_inode + 0x0000000000012fed sys_dup2 + 0x0000000000013014 sys_dup + 0x000000000001302f sys_fcntl + 0x000000000001316e sys_ioctl + 0x000000000001337d truncate + 0x00000000000134b2 sys_select + 0x00000000000134d0 sys_getdents + 0x0000000000013696 sys_sleep + 0x00000000000136d3 sys_something + 0x00000000000136d9 sys_getcwd + .text 0x00000000000138e5 0x46a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x0000000000013ca8 ll_rw_block + 0x0000000000013d01 blk_dev_init + .text 0x0000000000013d4f 0xb9d kernel/blk_drv/blk_drv.a(floppy.o) + 0x0000000000013e35 floppy_deselect + 0x0000000000013e6c floppy_change + 0x0000000000014229 setup_rw_floppy + 0x00000000000144c2 unexpected_floppy_interrupt + 0x000000000001489a floppy_init + .text 0x00000000000148ec 0xc8f kernel/blk_drv/blk_drv.a(hd.o) + 0x00000000000149c0 sys_setup + 0x000000000001506f unexpected_hd_interrupt + 0x0000000000015501 hd_init + .text 0x000000000001557b 0x50c kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000015785 rd_init + 0x00000000000157db rd_load + .text 0x0000000000015a87 0xeea kernel/chr_drv/chr_drv.a(tty_io.o) + 0x0000000000015aad tty_init + 0x0000000000015abe tty_intr + 0x0000000000015bcb wait_for_keypress + 0x0000000000015bde copy_to_cooked + 0x0000000000016199 tty_read + 0x0000000000016507 tty_write + 0x0000000000016719 do_tty_interrupt + 0x0000000000016741 chr_dev_init + 0x0000000000016742 readmouse + 0x0000000000016916 post_message + .text 0x0000000000016971 0x1331 kernel/chr_drv/chr_drv.a(console.o) + 0x0000000000016f0e csi_m + 0x00000000000172a8 con_write + 0x0000000000017936 con_init + 0x0000000000017c1b sysbeepstop + .text 0x0000000000017ca2 0x7e2 kernel/chr_drv/chr_drv.a(keyboard.2.o) + 0x0000000000017ca5 keyboard_interrupt + .text 0x0000000000018484 0x145 kernel/chr_drv/chr_drv.a(serial.o) + 0x00000000000184f9 rs_init + 0x000000000001857c rs_write + *fill* 0x00000000000185c9 0x3 + .text 0x00000000000185cc 0xf7 kernel/chr_drv/chr_drv.a(rs_io.o) + 0x00000000000185cc rs1_interrupt + 0x00000000000185d4 rs2_interrupt + .text 0x00000000000186c3 0x60f kernel/chr_drv/chr_drv.a(tty_ioctl.o) + 0x00000000000189d4 tty_ioctl + .text 0x0000000000018cd2 0x4c kernel/chr_drv/chr_drv.a(mouse.2.o) + 0x0000000000018cd2 mouse_interrupt + .text 0x0000000000018d1e 0x111 kernel/math/math.a(math_emulate.o) + 0x0000000000018d2c math_emulate + 0x0000000000018e0f math_error + .text 0x0000000000018e2f 0x0 lib/lib.a(ctype.o) + .text 0x0000000000018e2f 0x10 lib/lib.a(_exit.o) + 0x0000000000018e2f _exit + .text 0x0000000000018e3f 0x49 lib/lib.a(open.o) + 0x0000000000018e3f open + .text 0x0000000000018e88 0x37 lib/lib.a(close.o) + 0x0000000000018e88 close + .text 0x0000000000018ebf 0x0 lib/lib.a(errno.o) + .text 0x0000000000018ebf 0x3d lib/lib.a(write.o) + 0x0000000000018ebf write + .text 0x0000000000018efc 0x37 lib/lib.a(dup.o) + 0x0000000000018efc dup + .text 0x0000000000018f33 0x2f lib/lib.a(setsid.o) + 0x0000000000018f33 setsid + .text 0x0000000000018f62 0x3d lib/lib.a(execve.o) + 0x0000000000018f62 execve + .text 0x0000000000018f9f 0x60 lib/lib.a(wait.o) + 0x0000000000018f9f waitpid + 0x0000000000018fdc wait + .text 0x0000000000018fff 0x3dc lib/lib.a(string.o) + 0x0000000000018fff strcpy + 0x000000000001901b strncpy + 0x0000000000019040 strcat + 0x000000000001906b strncat + 0x00000000000190a0 strcmp + 0x00000000000190c7 strncmp + 0x00000000000190f5 strchr + 0x0000000000019122 strrchr + 0x0000000000019151 strspn + 0x000000000001918e strcspn + 0x00000000000191cb strpbrk + 0x0000000000019202 strstr + 0x000000000001923b strlen + 0x000000000001925e strtok + 0x00000000000192e1 memcpy + 0x0000000000019301 memmove + 0x0000000000019355 memcmp + 0x000000000001937f memchr + 0x00000000000193b7 memset + .text 0x00000000000193db 0x36c lib/lib.a(malloc.o) + 0x0000000000019444 malloc + 0x00000000000195d0 free_s *(.gnu.warning) .fini *(SORT(.fini)) - 0x0000000000019318 PROVIDE (__etext, .) - 0x0000000000019318 PROVIDE (_etext, .) - 0x0000000000019318 PROVIDE (etext, .) + 0x0000000000019747 PROVIDE (__etext, .) + 0x0000000000019747 PROVIDE (_etext, .) + 0x0000000000019747 PROVIDE (etext, .) -.rodata 0x0000000000019318 0x14cf +.rodata 0x0000000000019748 0x14cb *(.rodata .rodata.* .gnu.linkonce.r.*) - .rodata 0x0000000000019318 0xc9 init/main.o - *fill* 0x00000000000193e1 0x3 - .rodata 0x00000000000193e4 0x438 kernel/kernel.o - .rodata 0x000000000001981c 0x18f mm/mm.o - *fill* 0x00000000000199ab 0x1 - .rodata 0x00000000000199ac 0x63c fs/fs.o - .rodata 0x0000000000019fe8 0x7a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - *fill* 0x000000000001a062 0x2 - .rodata 0x000000000001a064 0x133 kernel/blk_drv/blk_drv.a(floppy.o) - *fill* 0x000000000001a197 0x1 - .rodata 0x000000000001a198 0x19b kernel/blk_drv/blk_drv.a(hd.o) - *fill* 0x000000000001a333 0x1 - .rodata 0x000000000001a334 0x188 kernel/blk_drv/blk_drv.a(ramdisk.o) - .rodata 0x000000000001a4bc 0x3 kernel/chr_drv/chr_drv.a(tty_io.o) - *fill* 0x000000000001a4bf 0x1 - .rodata 0x000000000001a4c0 0x17d kernel/chr_drv/chr_drv.a(console.o) - *fill* 0x000000000001a63d 0x3 - .rodata 0x000000000001a640 0x80 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .rodata 0x000000000001a6c0 0x52 kernel/math/math.a(math_emulate.o) - *fill* 0x000000000001a712 0x2 - .rodata 0x000000000001a714 0xd3 lib/lib.a(malloc.o) + .rodata 0x0000000000019748 0xc9 init/main.o + *fill* 0x0000000000019811 0x3 + .rodata 0x0000000000019814 0x438 kernel/kernel.o + .rodata 0x0000000000019c4c 0x18f mm/mm.o + *fill* 0x0000000000019ddb 0x1 + .rodata 0x0000000000019ddc 0x63c fs/fs.o + .rodata 0x000000000001a418 0x7a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + *fill* 0x000000000001a492 0x2 + .rodata 0x000000000001a494 0x133 kernel/blk_drv/blk_drv.a(floppy.o) + *fill* 0x000000000001a5c7 0x1 + .rodata 0x000000000001a5c8 0x19b kernel/blk_drv/blk_drv.a(hd.o) + *fill* 0x000000000001a763 0x1 + .rodata 0x000000000001a764 0x188 kernel/blk_drv/blk_drv.a(ramdisk.o) + .rodata 0x000000000001a8ec 0x17d kernel/chr_drv/chr_drv.a(console.o) + *fill* 0x000000000001aa69 0x3 + .rodata 0x000000000001aa6c 0x80 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .rodata 0x000000000001aaec 0x52 kernel/math/math.a(math_emulate.o) + *fill* 0x000000000001ab3e 0x2 + .rodata 0x000000000001ab40 0xd3 lib/lib.a(malloc.o) .rodata1 *(.rodata1) @@ -562,52 +567,52 @@ LOAD lib/lib.a .eh_frame_hdr *(.eh_frame_hdr) -.eh_frame 0x000000000001a7e8 0x2bbc +.eh_frame 0x000000000001ac14 0x2c3c *(.eh_frame) - .eh_frame 0x000000000001a7e8 0x108 init/main.o - .eh_frame 0x000000000001a8f0 0xb04 kernel/kernel.o - 0xbf4 (size before relaxing) - .eh_frame 0x000000000001b3f4 0x194 mm/mm.o + .eh_frame 0x000000000001ac14 0x120 init/main.o + .eh_frame 0x000000000001ad34 0xb54 kernel/kernel.o + 0xc5c (size before relaxing) + .eh_frame 0x000000000001b888 0x194 mm/mm.o 0x1ac (size before relaxing) - .eh_frame 0x000000000001b588 0xea4 fs/fs.o + .eh_frame 0x000000000001ba1c 0xea4 fs/fs.o 0x1054 (size before relaxing) - .eh_frame 0x000000000001c42c 0x98 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .eh_frame 0x000000000001c8c0 0x98 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) 0xb0 (size before relaxing) - .eh_frame 0x000000000001c4c4 0x23c kernel/blk_drv/blk_drv.a(floppy.o) + .eh_frame 0x000000000001c958 0x23c kernel/blk_drv/blk_drv.a(floppy.o) 0x254 (size before relaxing) - .eh_frame 0x000000000001c700 0x1e8 kernel/blk_drv/blk_drv.a(hd.o) + .eh_frame 0x000000000001cb94 0x1e8 kernel/blk_drv/blk_drv.a(hd.o) 0x200 (size before relaxing) - .eh_frame 0x000000000001c8e8 0xac kernel/blk_drv/blk_drv.a(ramdisk.o) + .eh_frame 0x000000000001cd7c 0xac kernel/blk_drv/blk_drv.a(ramdisk.o) 0xc4 (size before relaxing) - .eh_frame 0x000000000001c994 0x148 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x160 (size before relaxing) - .eh_frame 0x000000000001cadc 0x2c0 kernel/chr_drv/chr_drv.a(console.o) + .eh_frame 0x000000000001ce28 0x160 kernel/chr_drv/chr_drv.a(tty_io.o) + 0x178 (size before relaxing) + .eh_frame 0x000000000001cf88 0x2c0 kernel/chr_drv/chr_drv.a(console.o) 0x2d8 (size before relaxing) - .eh_frame 0x000000000001cd9c 0x54 kernel/chr_drv/chr_drv.a(serial.o) + .eh_frame 0x000000000001d248 0x54 kernel/chr_drv/chr_drv.a(serial.o) 0x6c (size before relaxing) - .eh_frame 0x000000000001cdf0 0x148 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .eh_frame 0x000000000001d29c 0x148 kernel/chr_drv/chr_drv.a(tty_ioctl.o) 0x160 (size before relaxing) - .eh_frame 0x000000000001cf38 0x5c kernel/math/math.a(math_emulate.o) + .eh_frame 0x000000000001d3e4 0x5c kernel/math/math.a(math_emulate.o) 0x74 (size before relaxing) - .eh_frame 0x000000000001cf94 0x1c lib/lib.a(_exit.o) + .eh_frame 0x000000000001d440 0x1c lib/lib.a(_exit.o) 0x34 (size before relaxing) - .eh_frame 0x000000000001cfb0 0x24 lib/lib.a(open.o) + .eh_frame 0x000000000001d45c 0x24 lib/lib.a(open.o) 0x3c (size before relaxing) - .eh_frame 0x000000000001cfd4 0x20 lib/lib.a(close.o) + .eh_frame 0x000000000001d480 0x20 lib/lib.a(close.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001cff4 0x20 lib/lib.a(write.o) + .eh_frame 0x000000000001d4a0 0x20 lib/lib.a(write.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001d014 0x20 lib/lib.a(dup.o) + .eh_frame 0x000000000001d4c0 0x20 lib/lib.a(dup.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001d034 0x18 lib/lib.a(setsid.o) + .eh_frame 0x000000000001d4e0 0x18 lib/lib.a(setsid.o) 0x30 (size before relaxing) - .eh_frame 0x000000000001d04c 0x20 lib/lib.a(execve.o) + .eh_frame 0x000000000001d4f8 0x20 lib/lib.a(execve.o) 0x38 (size before relaxing) - .eh_frame 0x000000000001d06c 0x38 lib/lib.a(wait.o) + .eh_frame 0x000000000001d518 0x38 lib/lib.a(wait.o) 0x50 (size before relaxing) - .eh_frame 0x000000000001d0a4 0x2b0 lib/lib.a(string.o) + .eh_frame 0x000000000001d550 0x2b0 lib/lib.a(string.o) 0x2c8 (size before relaxing) - .eh_frame 0x000000000001d354 0x50 lib/lib.a(malloc.o) + .eh_frame 0x000000000001d800 0x50 lib/lib.a(malloc.o) 0x68 (size before relaxing) .gcc_except_table @@ -615,7 +620,7 @@ LOAD lib/lib.a .exception_ranges *(.exception_ranges .exception_ranges*) - 0x000000000001d3a4 . = . + 0x000000000001d850 . = . .eh_frame *(.eh_frame) @@ -633,22 +638,22 @@ LOAD lib/lib.a *(.tbss .tbss.* .gnu.linkonce.tb.*) *(.tcommon) -.preinit_array 0x000000000001d3a4 0x0 - 0x000000000001d3a4 PROVIDE (__preinit_array_start, .) +.preinit_array 0x000000000001d850 0x0 + 0x000000000001d850 PROVIDE (__preinit_array_start, .) *(.preinit_array) - 0x000000000001d3a4 PROVIDE (__preinit_array_end, .) + 0x000000000001d850 PROVIDE (__preinit_array_end, .) -.init_array 0x000000000001d3a4 0x0 - 0x000000000001d3a4 PROVIDE (__init_array_start, .) +.init_array 0x000000000001d850 0x0 + 0x000000000001d850 PROVIDE (__init_array_start, .) *(SORT(.init_array.*) SORT(.ctors.*)) *(.init_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .ctors) - 0x000000000001d3a4 PROVIDE (__init_array_end, .) + 0x000000000001d850 PROVIDE (__init_array_end, .) -.fini_array 0x000000000001d3a4 0x0 - 0x000000000001d3a4 PROVIDE (__fini_array_start, .) +.fini_array 0x000000000001d850 0x0 + 0x000000000001d850 PROVIDE (__fini_array_start, .) *(SORT(.fini_array.*) SORT(.dtors.*)) *(.fini_array EXCLUDE_FILE(*crtend?.o *crtend.o *crtbegin?.o *crtbegin.o) .dtors) - 0x000000000001d3a4 PROVIDE (__fini_array_end, .) + 0x000000000001d850 PROVIDE (__fini_array_end, .) .ctors *crtbegin.o(.ctors) @@ -678,148 +683,150 @@ LOAD lib/lib.a *(.got) *(.igot) -.got.plt 0x000000000001d3a4 0x0 +.got.plt 0x000000000001d850 0x0 *(.got.plt) *(.igot.plt) .igot.plt 0x0000000000000000 0x0 boot/head.o -.data 0x000000000001d3c0 0x3b90 +.data 0x000000000001d860 0x3b90 *(.data .data.* .gnu.linkonce.d.*) - .data 0x000000000001d3c0 0x0 boot/head.o - .data 0x000000000001d3c0 0x28 init/main.o - *fill* 0x000000000001d3e8 0x18 - .data 0x000000000001d400 0x1330 kernel/kernel.o - 0x000000000001d400 sys_call_table - 0x000000000001d570 NR_syscalls - 0x000000000001e580 current - 0x000000000001e5a0 task - 0x000000000001e6a0 stack_start - 0x000000000001e6a8 current_DOR - .data 0x000000000001e730 0x0 mm/mm.o - *fill* 0x000000000001e730 0x10 - .data 0x000000000001e740 0x60 fs/fs.o - 0x000000000001e744 start_buffer - .data 0x000000000001e7a0 0x0 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .data 0x000000000001e7a0 0xcd kernel/blk_drv/blk_drv.a(floppy.o) - *fill* 0x000000000001e86d 0x3 - .data 0x000000000001e870 0x4 kernel/blk_drv/blk_drv.a(hd.o) - .data 0x000000000001e874 0x0 kernel/blk_drv/blk_drv.a(ramdisk.o) - *fill* 0x000000000001e874 0xc - .data 0x000000000001e880 0x2538 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x000000000001e880 tty_table - 0x0000000000020da0 table_list - .data 0x0000000000020db8 0x1 kernel/chr_drv/chr_drv.a(console.o) - .data 0x0000000000020db9 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) - .data 0x0000000000020db9 0x0 kernel/chr_drv/chr_drv.a(serial.o) - .data 0x0000000000020db9 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) - *fill* 0x0000000000020db9 0x7 - .data 0x0000000000020dc0 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .data 0x0000000000020de0 0x0 kernel/chr_drv/chr_drv.a(mouse.o) - .data 0x0000000000020de0 0x0 kernel/math/math.a(math_emulate.o) - .data 0x0000000000020de0 0x101 lib/lib.a(ctype.o) - 0x0000000000020de0 _ctype - .data 0x0000000000020ee1 0x0 lib/lib.a(_exit.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(open.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(close.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(errno.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(write.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(dup.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(setsid.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(execve.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(wait.o) - .data 0x0000000000020ee1 0x0 lib/lib.a(string.o) - *fill* 0x0000000000020ee1 0x1f - .data 0x0000000000020f00 0x50 lib/lib.a(malloc.o) - 0x0000000000020f00 bucket_dir + .data 0x000000000001d860 0x0 boot/head.o + .data 0x000000000001d860 0x28 init/main.o + *fill* 0x000000000001d888 0x18 + .data 0x000000000001d8a0 0x1330 kernel/kernel.o + 0x000000000001d8a0 sys_call_table + 0x000000000001da1c NR_syscalls + 0x000000000001ea20 current + 0x000000000001ea40 task + 0x000000000001eb40 stack_start + 0x000000000001eb48 current_DOR + .data 0x000000000001ebd0 0x0 mm/mm.o + *fill* 0x000000000001ebd0 0x10 + .data 0x000000000001ebe0 0x60 fs/fs.o + 0x000000000001ebe4 start_buffer + .data 0x000000000001ec40 0x0 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .data 0x000000000001ec40 0xcd kernel/blk_drv/blk_drv.a(floppy.o) + *fill* 0x000000000001ed0d 0x3 + .data 0x000000000001ed10 0x4 kernel/blk_drv/blk_drv.a(hd.o) + .data 0x000000000001ed14 0x0 kernel/blk_drv/blk_drv.a(ramdisk.o) + *fill* 0x000000000001ed14 0xc + .data 0x000000000001ed20 0x2538 kernel/chr_drv/chr_drv.a(tty_io.o) + 0x000000000001ed20 tty_table + 0x0000000000021240 table_list + .data 0x0000000000021258 0x1 kernel/chr_drv/chr_drv.a(console.o) + .data 0x0000000000021259 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) + .data 0x0000000000021259 0x0 kernel/chr_drv/chr_drv.a(serial.o) + .data 0x0000000000021259 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) + *fill* 0x0000000000021259 0x7 + .data 0x0000000000021260 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .data 0x0000000000021280 0x0 kernel/chr_drv/chr_drv.a(mouse.2.o) + .data 0x0000000000021280 0x0 kernel/math/math.a(math_emulate.o) + .data 0x0000000000021280 0x101 lib/lib.a(ctype.o) + 0x0000000000021280 _ctype + .data 0x0000000000021381 0x0 lib/lib.a(_exit.o) + .data 0x0000000000021381 0x0 lib/lib.a(open.o) + .data 0x0000000000021381 0x0 lib/lib.a(close.o) + .data 0x0000000000021381 0x0 lib/lib.a(errno.o) + .data 0x0000000000021381 0x0 lib/lib.a(write.o) + .data 0x0000000000021381 0x0 lib/lib.a(dup.o) + .data 0x0000000000021381 0x0 lib/lib.a(setsid.o) + .data 0x0000000000021381 0x0 lib/lib.a(execve.o) + .data 0x0000000000021381 0x0 lib/lib.a(wait.o) + .data 0x0000000000021381 0x0 lib/lib.a(string.o) + *fill* 0x0000000000021381 0x1f + .data 0x00000000000213a0 0x50 lib/lib.a(malloc.o) + 0x00000000000213a0 bucket_dir .data1 *(.data1) - 0x0000000000020f50 _edata = . - 0x0000000000020f50 PROVIDE (edata, .) - 0x0000000000020f50 . = . - 0x0000000000020f50 __bss_start = . + 0x00000000000213f0 _edata = . + 0x00000000000213f0 PROVIDE (edata, .) + 0x00000000000213f0 . = . + 0x00000000000213f0 __bss_start = . -.bss 0x0000000000020f60 0x44d0 +.bss 0x0000000000021400 0x4510 *(.dynbss) *(.bss .bss.* .gnu.linkonce.b.*) - .bss 0x0000000000020f60 0x0 boot/head.o - .bss 0x0000000000020f60 0x40c init/main.o - *fill* 0x000000000002136c 0x14 - .bss 0x0000000000021380 0x760 kernel/kernel.o - 0x0000000000021380 jiffies - 0x0000000000021384 startup_time - 0x0000000000021388 last_task_used_math - 0x00000000000216c4 last_pid - .bss 0x0000000000021ae0 0xf20 mm/mm.o - .bss 0x0000000000022a00 0x710 fs/fs.o - 0x0000000000022a00 inode_table - 0x0000000000023100 nr_buffers - 0x000000000002310c ROOT_DEV - *fill* 0x0000000000023110 0x10 - .bss 0x0000000000023120 0x58 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - 0x0000000000023120 wait_for_request - 0x0000000000023140 blk_dev - .bss 0x0000000000023178 0x25 kernel/blk_drv/blk_drv.a(floppy.o) - 0x0000000000023178 do_floppy - 0x000000000002317c selected - 0x0000000000023180 wait_on_floppy_select - *fill* 0x000000000002319d 0x3 - .bss 0x00000000000231a0 0xb0 kernel/blk_drv/blk_drv.a(hd.o) - 0x00000000000231a0 do_hd - 0x00000000000231c0 hd_info - .bss 0x0000000000023250 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) - 0x0000000000023250 rd_length - .bss 0x0000000000023254 0x1c kernel/chr_drv/chr_drv.a(tty_io.o) - 0x0000000000023254 cnt - *fill* 0x0000000000023270 0x10 - .bss 0x0000000000023280 0xac kernel/chr_drv/chr_drv.a(console.o) - 0x0000000000023280 beepcount - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(serial.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .bss 0x000000000002332c 0x0 kernel/chr_drv/chr_drv.a(mouse.o) - .bss 0x000000000002332c 0x0 kernel/math/math.a(math_emulate.o) - .bss 0x000000000002332c 0x0 lib/lib.a(ctype.o) - .bss 0x000000000002332c 0x0 lib/lib.a(_exit.o) - .bss 0x000000000002332c 0x0 lib/lib.a(open.o) - .bss 0x000000000002332c 0x0 lib/lib.a(close.o) - .bss 0x000000000002332c 0x0 lib/lib.a(errno.o) - .bss 0x000000000002332c 0x0 lib/lib.a(write.o) - .bss 0x000000000002332c 0x0 lib/lib.a(dup.o) - .bss 0x000000000002332c 0x0 lib/lib.a(setsid.o) - .bss 0x000000000002332c 0x0 lib/lib.a(execve.o) - .bss 0x000000000002332c 0x0 lib/lib.a(wait.o) - .bss 0x000000000002332c 0x0 lib/lib.a(string.o) - .bss 0x000000000002332c 0x4 lib/lib.a(malloc.o) - 0x000000000002332c free_bucket_desc + .bss 0x0000000000021400 0x0 boot/head.o + .bss 0x0000000000021400 0x40c init/main.o + *fill* 0x000000000002180c 0x14 + .bss 0x0000000000021820 0x764 kernel/kernel.o + 0x0000000000021820 jiffies + 0x0000000000021824 startup_time + 0x0000000000021828 last_task_used_math + 0x0000000000021b64 last_pid + *fill* 0x0000000000021f84 0x1c + .bss 0x0000000000021fa0 0xf20 mm/mm.o + .bss 0x0000000000022ec0 0x710 fs/fs.o + 0x0000000000022ec0 inode_table + 0x00000000000235c0 nr_buffers + 0x00000000000235cc ROOT_DEV + *fill* 0x00000000000235d0 0x10 + .bss 0x00000000000235e0 0x58 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x00000000000235e0 wait_for_request + 0x0000000000023600 blk_dev + .bss 0x0000000000023638 0x25 kernel/blk_drv/blk_drv.a(floppy.o) + 0x0000000000023638 do_floppy + 0x000000000002363c selected + 0x0000000000023640 wait_on_floppy_select + *fill* 0x000000000002365d 0x3 + .bss 0x0000000000023660 0xb0 kernel/blk_drv/blk_drv.a(hd.o) + 0x0000000000023660 do_hd + 0x0000000000023680 hd_info + .bss 0x0000000000023710 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000023710 rd_length + .bss 0x0000000000023714 0x1c kernel/chr_drv/chr_drv.a(tty_io.o) + 0x0000000000023714 cnt + *fill* 0x0000000000023730 0x10 + .bss 0x0000000000023740 0xac kernel/chr_drv/chr_drv.a(console.o) + 0x0000000000023740 beepcount + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(keyboard.2.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(serial.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(rs_io.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .bss 0x00000000000237ec 0x0 kernel/chr_drv/chr_drv.a(mouse.2.o) + .bss 0x00000000000237ec 0x0 kernel/math/math.a(math_emulate.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(ctype.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(_exit.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(open.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(close.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(errno.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(write.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(dup.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(setsid.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(execve.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(wait.o) + .bss 0x00000000000237ec 0x0 lib/lib.a(string.o) + .bss 0x00000000000237ec 0x4 lib/lib.a(malloc.o) + 0x00000000000237ec free_bucket_desc *(COMMON) - *fill* 0x0000000000023330 0x10 - COMMON 0x0000000000023340 0x20 init/main.o - 0x0000000000023340 drive_info - COMMON 0x0000000000023360 0x1000 kernel/kernel.o - 0x0000000000023360 user_stack - COMMON 0x0000000000024360 0xc40 fs/fs.o - 0x0000000000024360 hash_table - 0x0000000000024840 super_block - 0x0000000000024ba0 file_table - COMMON 0x0000000000024fa0 0x480 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - 0x0000000000024fa0 request - COMMON 0x0000000000025420 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) - 0x0000000000025420 rd_start - COMMON 0x0000000000025424 0x1 lib/lib.a(ctype.o) - 0x0000000000025424 _ctmp - *fill* 0x0000000000025425 0x3 - COMMON 0x0000000000025428 0x4 lib/lib.a(errno.o) - 0x0000000000025428 errno - COMMON 0x000000000002542c 0x4 lib/lib.a(string.o) - 0x000000000002542c ___strtok - 0x0000000000025430 . = ALIGN ((. != 0x0)?0x4:0x1) - 0x0000000000025430 . = ALIGN (0x4) - 0x0000000000025430 . = SEGMENT_START ("ldata-segment", .) - 0x0000000000025430 . = ALIGN (0x4) - 0x0000000000025430 _end = . - 0x0000000000025430 PROVIDE (end, .) + *fill* 0x00000000000237f0 0x10 + COMMON 0x0000000000023800 0x40 init/main.o + 0x0000000000023800 headd + 0x0000000000023820 drive_info + COMMON 0x0000000000023840 0x1000 kernel/kernel.o + 0x0000000000023840 user_stack + COMMON 0x0000000000024840 0xc40 fs/fs.o + 0x0000000000024840 hash_table + 0x0000000000024d20 super_block + 0x0000000000025080 file_table + COMMON 0x0000000000025480 0x480 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x0000000000025480 request + COMMON 0x0000000000025900 0x4 kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000025900 rd_start + COMMON 0x0000000000025904 0x1 lib/lib.a(ctype.o) + 0x0000000000025904 _ctmp + *fill* 0x0000000000025905 0x3 + COMMON 0x0000000000025908 0x4 lib/lib.a(errno.o) + 0x0000000000025908 errno + COMMON 0x000000000002590c 0x4 lib/lib.a(string.o) + 0x000000000002590c ___strtok + 0x0000000000025910 . = ALIGN ((. != 0x0)?0x4:0x1) + 0x0000000000025910 . = ALIGN (0x4) + 0x0000000000025910 . = SEGMENT_START ("ldata-segment", .) + 0x0000000000025910 . = ALIGN (0x4) + 0x0000000000025910 _end = . + 0x0000000000025910 PROVIDE (end, .) .stab *(.stab) @@ -843,7 +850,7 @@ LOAD lib/lib.a *(.comment) .comment 0x0000000000000000 0x29 init/main.o 0x2a (size before relaxing) - .comment 0x0000000000000000 0x1a4 kernel/kernel.o + .comment 0x0000000000000000 0x1ce kernel/kernel.o .comment 0x0000000000000000 0x2a mm/mm.o .comment 0x0000000000000000 0x31e fs/fs.o .comment 0x0000000000000000 0x2a kernel/blk_drv/blk_drv.a(ll_rw_blk.o) @@ -880,200 +887,200 @@ LOAD lib/lib.a .debug_sfnames *(.debug_sfnames) -.debug_aranges 0x0000000000000000 0x668 +.debug_aranges 0x0000000000000000 0x688 *(.debug_aranges) .debug_aranges 0x0000000000000000 0x20 init/main.o .debug_aranges - 0x0000000000000020 0x140 kernel/kernel.o + 0x0000000000000020 0x160 kernel/kernel.o .debug_aranges - 0x0000000000000160 0x20 mm/mm.o + 0x0000000000000180 0x20 mm/mm.o .debug_aranges - 0x0000000000000180 0x258 fs/fs.o + 0x00000000000001a0 0x258 fs/fs.o .debug_aranges - 0x00000000000003d8 0x20 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + 0x00000000000003f8 0x20 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) .debug_aranges - 0x00000000000003f8 0x20 kernel/blk_drv/blk_drv.a(floppy.o) + 0x0000000000000418 0x20 kernel/blk_drv/blk_drv.a(floppy.o) .debug_aranges - 0x0000000000000418 0x20 kernel/blk_drv/blk_drv.a(hd.o) + 0x0000000000000438 0x20 kernel/blk_drv/blk_drv.a(hd.o) .debug_aranges - 0x0000000000000438 0x20 kernel/blk_drv/blk_drv.a(ramdisk.o) + 0x0000000000000458 0x20 kernel/blk_drv/blk_drv.a(ramdisk.o) .debug_aranges - 0x0000000000000458 0x20 kernel/chr_drv/chr_drv.a(tty_io.o) + 0x0000000000000478 0x20 kernel/chr_drv/chr_drv.a(tty_io.o) .debug_aranges - 0x0000000000000478 0x20 kernel/chr_drv/chr_drv.a(console.o) + 0x0000000000000498 0x20 kernel/chr_drv/chr_drv.a(console.o) .debug_aranges - 0x0000000000000498 0x20 kernel/chr_drv/chr_drv.a(serial.o) + 0x00000000000004b8 0x20 kernel/chr_drv/chr_drv.a(serial.o) .debug_aranges - 0x00000000000004b8 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) + 0x00000000000004d8 0x20 kernel/chr_drv/chr_drv.a(tty_ioctl.o) .debug_aranges - 0x00000000000004d8 0x20 kernel/math/math.a(math_emulate.o) + 0x00000000000004f8 0x20 kernel/math/math.a(math_emulate.o) .debug_aranges - 0x00000000000004f8 0x18 lib/lib.a(ctype.o) + 0x0000000000000518 0x18 lib/lib.a(ctype.o) .debug_aranges - 0x0000000000000510 0x20 lib/lib.a(_exit.o) + 0x0000000000000530 0x20 lib/lib.a(_exit.o) .debug_aranges - 0x0000000000000530 0x20 lib/lib.a(open.o) + 0x0000000000000550 0x20 lib/lib.a(open.o) .debug_aranges - 0x0000000000000550 0x20 lib/lib.a(close.o) + 0x0000000000000570 0x20 lib/lib.a(close.o) .debug_aranges - 0x0000000000000570 0x18 lib/lib.a(errno.o) + 0x0000000000000590 0x18 lib/lib.a(errno.o) .debug_aranges - 0x0000000000000588 0x20 lib/lib.a(write.o) + 0x00000000000005a8 0x20 lib/lib.a(write.o) .debug_aranges - 0x00000000000005a8 0x20 lib/lib.a(dup.o) + 0x00000000000005c8 0x20 lib/lib.a(dup.o) .debug_aranges - 0x00000000000005c8 0x20 lib/lib.a(setsid.o) + 0x00000000000005e8 0x20 lib/lib.a(setsid.o) .debug_aranges - 0x00000000000005e8 0x20 lib/lib.a(execve.o) + 0x0000000000000608 0x20 lib/lib.a(execve.o) .debug_aranges - 0x0000000000000608 0x20 lib/lib.a(wait.o) + 0x0000000000000628 0x20 lib/lib.a(wait.o) .debug_aranges - 0x0000000000000628 0x20 lib/lib.a(string.o) + 0x0000000000000648 0x20 lib/lib.a(string.o) .debug_aranges - 0x0000000000000648 0x20 lib/lib.a(malloc.o) + 0x0000000000000668 0x20 lib/lib.a(malloc.o) .debug_pubnames *(.debug_pubnames) -.debug_info 0x0000000000000000 0x182c0 +.debug_info 0x0000000000000000 0x18724 *(.debug_info .gnu.linkonce.wi.*) - .debug_info 0x0000000000000000 0xb73 init/main.o - .debug_info 0x0000000000000b73 0x4cb6 kernel/kernel.o - .debug_info 0x0000000000005829 0xb2b mm/mm.o - .debug_info 0x0000000000006354 0xaef6 fs/fs.o - .debug_info 0x000000000001124a 0x932 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .debug_info 0x0000000000011b7c 0xc9f kernel/blk_drv/blk_drv.a(floppy.o) - .debug_info 0x000000000001281b 0xd5f kernel/blk_drv/blk_drv.a(hd.o) - .debug_info 0x000000000001357a 0xad5 kernel/blk_drv/blk_drv.a(ramdisk.o) - .debug_info 0x000000000001404f 0xba3 kernel/chr_drv/chr_drv.a(tty_io.o) - .debug_info 0x0000000000014bf2 0xdcc kernel/chr_drv/chr_drv.a(console.o) - .debug_info 0x00000000000159be 0x85c kernel/chr_drv/chr_drv.a(serial.o) - .debug_info 0x000000000001621a 0xb47 kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .debug_info 0x0000000000016d61 0x7b5 kernel/math/math.a(math_emulate.o) - .debug_info 0x0000000000017516 0x66 lib/lib.a(ctype.o) - .debug_info 0x000000000001757c 0x77 lib/lib.a(_exit.o) - .debug_info 0x00000000000175f3 0xd0 lib/lib.a(open.o) - .debug_info 0x00000000000176c3 0x97 lib/lib.a(close.o) - .debug_info 0x000000000001775a 0x36 lib/lib.a(errno.o) - .debug_info 0x0000000000017790 0xc9 lib/lib.a(write.o) - .debug_info 0x0000000000017859 0x97 lib/lib.a(dup.o) - .debug_info 0x00000000000178f0 0x95 lib/lib.a(setsid.o) - .debug_info 0x0000000000017985 0xcb lib/lib.a(execve.o) - .debug_info 0x0000000000017a50 0xed lib/lib.a(wait.o) - .debug_info 0x0000000000017b3d 0x55e lib/lib.a(string.o) - .debug_info 0x000000000001809b 0x225 lib/lib.a(malloc.o) - -.debug_abbrev 0x0000000000000000 0x4789 + .debug_info 0x0000000000000000 0xbe3 init/main.o + .debug_info 0x0000000000000be3 0x4edc kernel/kernel.o + .debug_info 0x0000000000005abf 0xb2b mm/mm.o + .debug_info 0x00000000000065ea 0xaf3e fs/fs.o + .debug_info 0x0000000000011528 0x932 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_info 0x0000000000011e5a 0xc9f kernel/blk_drv/blk_drv.a(floppy.o) + .debug_info 0x0000000000012af9 0xd5f kernel/blk_drv/blk_drv.a(hd.o) + .debug_info 0x0000000000013858 0xad5 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_info 0x000000000001432d 0xc51 kernel/chr_drv/chr_drv.a(tty_io.o) + .debug_info 0x0000000000014f7e 0xe14 kernel/chr_drv/chr_drv.a(console.o) + .debug_info 0x0000000000015d92 0x8a4 kernel/chr_drv/chr_drv.a(serial.o) + .debug_info 0x0000000000016636 0xb8f kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .debug_info 0x00000000000171c5 0x7b5 kernel/math/math.a(math_emulate.o) + .debug_info 0x000000000001797a 0x66 lib/lib.a(ctype.o) + .debug_info 0x00000000000179e0 0x77 lib/lib.a(_exit.o) + .debug_info 0x0000000000017a57 0xd0 lib/lib.a(open.o) + .debug_info 0x0000000000017b27 0x97 lib/lib.a(close.o) + .debug_info 0x0000000000017bbe 0x36 lib/lib.a(errno.o) + .debug_info 0x0000000000017bf4 0xc9 lib/lib.a(write.o) + .debug_info 0x0000000000017cbd 0x97 lib/lib.a(dup.o) + .debug_info 0x0000000000017d54 0x95 lib/lib.a(setsid.o) + .debug_info 0x0000000000017de9 0xcb lib/lib.a(execve.o) + .debug_info 0x0000000000017eb4 0xed lib/lib.a(wait.o) + .debug_info 0x0000000000017fa1 0x55e lib/lib.a(string.o) + .debug_info 0x00000000000184ff 0x225 lib/lib.a(malloc.o) + +.debug_abbrev 0x0000000000000000 0x493a *(.debug_abbrev) - .debug_abbrev 0x0000000000000000 0x237 init/main.o - .debug_abbrev 0x0000000000000237 0xf63 kernel/kernel.o - .debug_abbrev 0x000000000000119a 0x20b mm/mm.o - .debug_abbrev 0x00000000000013a5 0x1c1d fs/fs.o - .debug_abbrev 0x0000000000002fc2 0x169 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .debug_abbrev 0x000000000000312b 0x27d kernel/blk_drv/blk_drv.a(floppy.o) - .debug_abbrev 0x00000000000033a8 0x23c kernel/blk_drv/blk_drv.a(hd.o) - .debug_abbrev 0x00000000000035e4 0x1a8 kernel/blk_drv/blk_drv.a(ramdisk.o) - .debug_abbrev 0x000000000000378c 0x2a0 kernel/chr_drv/chr_drv.a(tty_io.o) - .debug_abbrev 0x0000000000003a2c 0x26b kernel/chr_drv/chr_drv.a(console.o) - .debug_abbrev 0x0000000000003c97 0x175 kernel/chr_drv/chr_drv.a(serial.o) - .debug_abbrev 0x0000000000003e0c 0x18d kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .debug_abbrev 0x0000000000003f99 0x163 kernel/math/math.a(math_emulate.o) - .debug_abbrev 0x00000000000040fc 0x3e lib/lib.a(ctype.o) - .debug_abbrev 0x000000000000413a 0x51 lib/lib.a(_exit.o) - .debug_abbrev 0x000000000000418b 0x97 lib/lib.a(open.o) - .debug_abbrev 0x0000000000004222 0x75 lib/lib.a(close.o) - .debug_abbrev 0x0000000000004297 0x2c lib/lib.a(errno.o) - .debug_abbrev 0x00000000000042c3 0xa1 lib/lib.a(write.o) - .debug_abbrev 0x0000000000004364 0x75 lib/lib.a(dup.o) - .debug_abbrev 0x00000000000043d9 0x73 lib/lib.a(setsid.o) - .debug_abbrev 0x000000000000444c 0x85 lib/lib.a(execve.o) - .debug_abbrev 0x00000000000044d1 0xb6 lib/lib.a(wait.o) - .debug_abbrev 0x0000000000004587 0xe9 lib/lib.a(string.o) - .debug_abbrev 0x0000000000004670 0x119 lib/lib.a(malloc.o) - -.debug_line 0x0000000000000000 0x4a7d + .debug_abbrev 0x0000000000000000 0x253 init/main.o + .debug_abbrev 0x0000000000000253 0x1064 kernel/kernel.o + .debug_abbrev 0x00000000000012b7 0x20b mm/mm.o + .debug_abbrev 0x00000000000014c2 0x1c2e fs/fs.o + .debug_abbrev 0x00000000000030f0 0x169 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_abbrev 0x0000000000003259 0x27d kernel/blk_drv/blk_drv.a(floppy.o) + .debug_abbrev 0x00000000000034d6 0x23c kernel/blk_drv/blk_drv.a(hd.o) + .debug_abbrev 0x0000000000003712 0x1a8 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_abbrev 0x00000000000038ba 0x2f0 kernel/chr_drv/chr_drv.a(tty_io.o) + .debug_abbrev 0x0000000000003baa 0x27c kernel/chr_drv/chr_drv.a(console.o) + .debug_abbrev 0x0000000000003e26 0x186 kernel/chr_drv/chr_drv.a(serial.o) + .debug_abbrev 0x0000000000003fac 0x19e kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .debug_abbrev 0x000000000000414a 0x163 kernel/math/math.a(math_emulate.o) + .debug_abbrev 0x00000000000042ad 0x3e lib/lib.a(ctype.o) + .debug_abbrev 0x00000000000042eb 0x51 lib/lib.a(_exit.o) + .debug_abbrev 0x000000000000433c 0x97 lib/lib.a(open.o) + .debug_abbrev 0x00000000000043d3 0x75 lib/lib.a(close.o) + .debug_abbrev 0x0000000000004448 0x2c lib/lib.a(errno.o) + .debug_abbrev 0x0000000000004474 0xa1 lib/lib.a(write.o) + .debug_abbrev 0x0000000000004515 0x75 lib/lib.a(dup.o) + .debug_abbrev 0x000000000000458a 0x73 lib/lib.a(setsid.o) + .debug_abbrev 0x00000000000045fd 0x85 lib/lib.a(execve.o) + .debug_abbrev 0x0000000000004682 0xb6 lib/lib.a(wait.o) + .debug_abbrev 0x0000000000004738 0xe9 lib/lib.a(string.o) + .debug_abbrev 0x0000000000004821 0x119 lib/lib.a(malloc.o) + +.debug_line 0x0000000000000000 0x4bf6 *(.debug_line .debug_line.* .debug_line_end) - .debug_line 0x0000000000000000 0x1e5 init/main.o - .debug_line 0x00000000000001e5 0xe86 kernel/kernel.o - .debug_line 0x000000000000106b 0x276 mm/mm.o - .debug_line 0x00000000000012e1 0x1fa2 fs/fs.o - .debug_line 0x0000000000003283 0x197 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) - .debug_line 0x000000000000341a 0x24c kernel/blk_drv/blk_drv.a(floppy.o) - .debug_line 0x0000000000003666 0x2bf kernel/blk_drv/blk_drv.a(hd.o) - .debug_line 0x0000000000003925 0x160 kernel/blk_drv/blk_drv.a(ramdisk.o) - .debug_line 0x0000000000003a85 0x397 kernel/chr_drv/chr_drv.a(tty_io.o) - .debug_line 0x0000000000003e1c 0x3b7 kernel/chr_drv/chr_drv.a(console.o) - .debug_line 0x00000000000041d3 0xd9 kernel/chr_drv/chr_drv.a(serial.o) - .debug_line 0x00000000000042ac 0x1db kernel/chr_drv/chr_drv.a(tty_ioctl.o) - .debug_line 0x0000000000004487 0xe1 kernel/math/math.a(math_emulate.o) - .debug_line 0x0000000000004568 0x28 lib/lib.a(ctype.o) - .debug_line 0x0000000000004590 0x39 lib/lib.a(_exit.o) - .debug_line 0x00000000000045c9 0x62 lib/lib.a(open.o) - .debug_line 0x000000000000462b 0x5c lib/lib.a(close.o) - .debug_line 0x0000000000004687 0x28 lib/lib.a(errno.o) - .debug_line 0x00000000000046af 0x76 lib/lib.a(write.o) - .debug_line 0x0000000000004725 0x5a lib/lib.a(dup.o) - .debug_line 0x000000000000477f 0x77 lib/lib.a(setsid.o) - .debug_line 0x00000000000047f6 0x5d lib/lib.a(execve.o) - .debug_line 0x0000000000004853 0x7a lib/lib.a(wait.o) - .debug_line 0x00000000000048cd 0xc6 lib/lib.a(string.o) - .debug_line 0x0000000000004993 0xea lib/lib.a(malloc.o) + .debug_line 0x0000000000000000 0x1fe init/main.o + .debug_line 0x00000000000001fe 0xfa9 kernel/kernel.o + .debug_line 0x00000000000011a7 0x276 mm/mm.o + .debug_line 0x000000000000141d 0x1fa2 fs/fs.o + .debug_line 0x00000000000033bf 0x197 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_line 0x0000000000003556 0x24c kernel/blk_drv/blk_drv.a(floppy.o) + .debug_line 0x00000000000037a2 0x2bf kernel/blk_drv/blk_drv.a(hd.o) + .debug_line 0x0000000000003a61 0x160 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_line 0x0000000000003bc1 0x3d4 kernel/chr_drv/chr_drv.a(tty_io.o) + .debug_line 0x0000000000003f95 0x3b7 kernel/chr_drv/chr_drv.a(console.o) + .debug_line 0x000000000000434c 0xd9 kernel/chr_drv/chr_drv.a(serial.o) + .debug_line 0x0000000000004425 0x1db kernel/chr_drv/chr_drv.a(tty_ioctl.o) + .debug_line 0x0000000000004600 0xe1 kernel/math/math.a(math_emulate.o) + .debug_line 0x00000000000046e1 0x28 lib/lib.a(ctype.o) + .debug_line 0x0000000000004709 0x39 lib/lib.a(_exit.o) + .debug_line 0x0000000000004742 0x62 lib/lib.a(open.o) + .debug_line 0x00000000000047a4 0x5c lib/lib.a(close.o) + .debug_line 0x0000000000004800 0x28 lib/lib.a(errno.o) + .debug_line 0x0000000000004828 0x76 lib/lib.a(write.o) + .debug_line 0x000000000000489e 0x5a lib/lib.a(dup.o) + .debug_line 0x00000000000048f8 0x77 lib/lib.a(setsid.o) + .debug_line 0x000000000000496f 0x5d lib/lib.a(execve.o) + .debug_line 0x00000000000049cc 0x7a lib/lib.a(wait.o) + .debug_line 0x0000000000004a46 0xc6 lib/lib.a(string.o) + .debug_line 0x0000000000004b0c 0xea lib/lib.a(malloc.o) .debug_frame *(.debug_frame) -.debug_str 0x0000000000000000 0x2284 +.debug_str 0x0000000000000000 0x22da *(.debug_str) - .debug_str 0x0000000000000000 0x3c6 init/main.o - 0x469 (size before relaxing) - .debug_str 0x00000000000003c6 0x8cd kernel/kernel.o - 0x2364 (size before relaxing) - .debug_str 0x0000000000000c93 0x18a mm/mm.o + .debug_str 0x0000000000000000 0x3cc init/main.o + 0x48a (size before relaxing) + .debug_str 0x00000000000003cc 0x90b kernel/kernel.o + 0x24af (size before relaxing) + .debug_str 0x0000000000000cd7 0x18a mm/mm.o 0x4e5 (size before relaxing) - .debug_str 0x0000000000000e1d 0x9c1 fs/fs.o - 0x4f07 (size before relaxing) - .debug_str 0x00000000000017de 0xf5 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) + .debug_str 0x0000000000000e61 0x9c1 fs/fs.o + 0x4f1a (size before relaxing) + .debug_str 0x0000000000001822 0xf5 kernel/blk_drv/blk_drv.a(ll_rw_blk.o) 0x496 (size before relaxing) - .debug_str 0x00000000000018d3 0x1cf kernel/blk_drv/blk_drv.a(floppy.o) + .debug_str 0x0000000000001917 0x1cf kernel/blk_drv/blk_drv.a(floppy.o) 0x678 (size before relaxing) - .debug_str 0x0000000000001aa2 0x15e kernel/blk_drv/blk_drv.a(hd.o) + .debug_str 0x0000000000001ae6 0x15e kernel/blk_drv/blk_drv.a(hd.o) 0x5ed (size before relaxing) - .debug_str 0x0000000000001c00 0x43 kernel/blk_drv/blk_drv.a(ramdisk.o) + .debug_str 0x0000000000001c44 0x43 kernel/blk_drv/blk_drv.a(ramdisk.o) 0x58f (size before relaxing) - .debug_str 0x0000000000001c43 0x191 kernel/chr_drv/chr_drv.a(tty_io.o) - 0x580 (size before relaxing) - .debug_str 0x0000000000001dd4 0x1b9 kernel/chr_drv/chr_drv.a(console.o) - 0x5bc (size before relaxing) - .debug_str 0x0000000000001f8d 0x1a kernel/chr_drv/chr_drv.a(serial.o) - 0x401 (size before relaxing) - .debug_str 0x0000000000001fa7 0x8b kernel/chr_drv/chr_drv.a(tty_ioctl.o) - 0x4ac (size before relaxing) - .debug_str 0x0000000000002032 0x75 kernel/math/math.a(math_emulate.o) + .debug_str 0x0000000000001c87 0x1aa kernel/chr_drv/chr_drv.a(tty_io.o) + 0x5a5 (size before relaxing) + .debug_str 0x0000000000001e31 0x1b9 kernel/chr_drv/chr_drv.a(console.o) + 0x5cf (size before relaxing) + .debug_str 0x0000000000001fea 0x1a kernel/chr_drv/chr_drv.a(serial.o) + 0x414 (size before relaxing) + .debug_str 0x0000000000002004 0x8b kernel/chr_drv/chr_drv.a(tty_ioctl.o) + 0x4bf (size before relaxing) + .debug_str 0x000000000000208f 0x75 kernel/math/math.a(math_emulate.o) 0x397 (size before relaxing) - .debug_str 0x00000000000020a7 0x92 lib/lib.a(ctype.o) + .debug_str 0x0000000000002104 0x92 lib/lib.a(ctype.o) 0xbb (size before relaxing) - .debug_str 0x0000000000002139 0x8 lib/lib.a(_exit.o) + .debug_str 0x0000000000002196 0x8 lib/lib.a(_exit.o) 0xe7 (size before relaxing) .debug_str 0x0000000000000000 0x8 lib/lib.a(open.o) 0xf7 (size before relaxing) - .debug_str 0x0000000000002141 0x8 lib/lib.a(close.o) + .debug_str 0x000000000000219e 0x8 lib/lib.a(close.o) 0xe9 (size before relaxing) - .debug_str 0x0000000000002149 0x8 lib/lib.a(errno.o) + .debug_str 0x00000000000021a6 0x8 lib/lib.a(errno.o) 0x98 (size before relaxing) .debug_str 0x0000000000000000 0x8 lib/lib.a(write.o) 0xf5 (size before relaxing) - .debug_str 0x0000000000002151 0x6 lib/lib.a(dup.o) + .debug_str 0x00000000000021ae 0x6 lib/lib.a(dup.o) 0xe1 (size before relaxing) - .debug_str 0x0000000000002157 0x9 lib/lib.a(setsid.o) + .debug_str 0x00000000000021b4 0x9 lib/lib.a(setsid.o) 0xf1 (size before relaxing) - .debug_str 0x0000000000002160 0x9 lib/lib.a(execve.o) + .debug_str 0x00000000000021bd 0x9 lib/lib.a(execve.o) 0xfa (size before relaxing) - .debug_str 0x0000000000002169 0x11 lib/lib.a(wait.o) + .debug_str 0x00000000000021c6 0x11 lib/lib.a(wait.o) 0x107 (size before relaxing) - .debug_str 0x000000000000217a 0x93 lib/lib.a(string.o) + .debug_str 0x00000000000021d7 0x93 lib/lib.a(string.o) 0x14c (size before relaxing) - .debug_str 0x000000000000220d 0x77 lib/lib.a(malloc.o) + .debug_str 0x000000000000226a 0x70 lib/lib.a(malloc.o) 0x167 (size before relaxing) .debug_loc diff --git a/linux-0.11-lab/cur/linux/fs/fs.o b/linux-0.11-lab/cur/linux/fs/fs.o index a7f7884..65e2165 100644 Binary files a/linux-0.11-lab/cur/linux/fs/fs.o and b/linux-0.11-lab/cur/linux/fs/fs.o differ diff --git a/linux-0.11-lab/cur/linux/fs/open.o b/linux-0.11-lab/cur/linux/fs/open.o index deb7cce..5856262 100644 Binary files a/linux-0.11-lab/cur/linux/fs/open.o and b/linux-0.11-lab/cur/linux/fs/open.o differ diff --git a/linux-0.11-lab/cur/linux/include/linux/sys.h b/linux-0.11-lab/cur/linux/include/linux/sys.h index 7cca397..ec983c3 100644 --- a/linux-0.11-lab/cur/linux/include/linux/sys.h +++ b/linux-0.11-lab/cur/linux/include/linux/sys.h @@ -96,6 +96,9 @@ extern int sys_getdents(); extern int sys_something(); extern int sys_sleep(); extern long sys_getcwd(); +extern int sys_init_graphics(); +extern int sys_get_message(); +extern int sys_repaint(); fn_ptr sys_call_table[] = { sys_setup, sys_exit, sys_fork, sys_read, sys_write, sys_open, sys_close, sys_waitpid, sys_creat, sys_link, @@ -112,7 +115,9 @@ sys_getpgrp, sys_setsid, sys_sigaction, sys_sgetmask, sys_ssetmask, sys_setreuid,sys_setregid, sys_sigsuspend, sys_sigpending, sys_sethostname, sys_setrlimit, sys_getrlimit, sys_getrusage, sys_gettimeofday, sys_settimeofday, sys_getgroups, sys_setgroups, sys_select, sys_symlink, -sys_lstat, sys_readlink, sys_uselib, sys_execve2, sys_getdents, sys_something ,sys_sleep, sys_getcwd}; +sys_lstat, sys_readlink, sys_uselib, sys_execve2, sys_getdents, sys_something ,sys_sleep, sys_getcwd +,sys_init_graphics,sys_get_message,sys_repaint +}; /* So we don't have to do any more manual updating.... */ int NR_syscalls = sizeof(sys_call_table)/sizeof(fn_ptr); diff --git a/linux-0.11-lab/cur/linux/include/linux/tty.h b/linux-0.11-lab/cur/linux/include/linux/tty.h index ad846b3..7c59f87 100644 --- a/linux-0.11-lab/cur/linux/include/linux/tty.h +++ b/linux-0.11-lab/cur/linux/include/linux/tty.h @@ -54,6 +54,19 @@ struct tty_struct { extern struct tty_struct tty_table[]; + + +struct message{ +int mid; +int pid; +struct message *next; +}; +struct message *headd; + + + + + /* intr=^C quit=^| erase=del kill=^U eof=^D vtime=\0 vmin=\1 sxtc=\0 start=^Q stop=^S susp=^Z eol=\0 @@ -74,4 +87,5 @@ void con_write(struct tty_struct * tty); void copy_to_cooked(struct tty_struct * tty); + #endif diff --git a/linux-0.11-lab/cur/linux/include/unistd.h b/linux-0.11-lab/cur/linux/include/unistd.h index 07af609..a816d27 100644 --- a/linux-0.11-lab/cur/linux/include/unistd.h +++ b/linux-0.11-lab/cur/linux/include/unistd.h @@ -1,6 +1,6 @@ #ifndef _UNISTD_H #define _UNISTD_H - +#include /* ok, this may be a joke, but I'm working on it */ #define _POSIX_VERSION 198808L @@ -152,6 +152,10 @@ #define __NR_something 89 #define __NR_sleep 90 #define __NR_getcwd 91 +#define __NR_init_graphics 92 +#define __NR_get_message 93 +#define __NR_repaint 94 + #define _syscall0(type,name) \ type name(void) \ { \ @@ -273,11 +277,13 @@ pid_t getpgrp(void); pid_t setsid(void); -long getcwd(char *buf,size_t size); +char* getcwd(char *buf,size_t size); int something(void); int sleep(unsigned int seconds); int execve2(const char *path,char *argv[],char *envp[]); - +int init_graphics(void); +int get_message(struct message *msg); +int repaint(int x,int y,int h); #define __always_inline inline __attribute__((always_inline)) diff --git a/linux-0.11-lab/cur/linux/init/main.c b/linux-0.11-lab/cur/linux/init/main.c index bd86a68..a491148 100644 --- a/linux-0.11-lab/cur/linux/init/main.c +++ b/linux-0.11-lab/cur/linux/init/main.c @@ -25,6 +25,7 @@ __always_inline _syscall0(int,fork) __always_inline _syscall0(int,pause) __always_inline _syscall1(int,setup,void *,BIOS) __always_inline _syscall0(int,sync) +__always_inline _syscall0(int,init_graphics) #include #include @@ -52,6 +53,8 @@ extern long rd_init(long mem_start, int length); extern long kernel_mktime(struct tm * tm); extern long startup_time; +extern int init_graphics(); + /* * This is set up by the setup-routine at boot-time */ @@ -134,6 +137,7 @@ void main(void) /* This really IS void, no error here. */ buffer_init(buffer_memory_end); hd_init(); floppy_init(); + //init_graphics(); sti(); move_to_user_mode(); if (!fork()) { /* we count on this going ok */ diff --git a/linux-0.11-lab/cur/linux/init/main.o b/linux-0.11-lab/cur/linux/init/main.o index d318a08..cd93e81 100644 Binary files a/linux-0.11-lab/cur/linux/init/main.o and b/linux-0.11-lab/cur/linux/init/main.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/Makefile b/linux-0.11-lab/cur/linux/kernel/Makefile index 29b8f8d..08649b4 100644 --- a/linux-0.11-lab/cur/linux/kernel/Makefile +++ b/linux-0.11-lab/cur/linux/kernel/Makefile @@ -26,7 +26,7 @@ CPP =gcc -E -nostdinc -I../include OBJS = sched.o system_call.o traps.o asm.o fork.o \ panic.o printk.o vsprintf.o sys.o exit.o \ - signal.o mktime.o + signal.o mktime.o init_graphics.o kernel.o: $(OBJS) $(LD) -r -o kernel.o $(OBJS) @@ -81,3 +81,5 @@ traps.s traps.o : traps.c ../include/string.h ../include/linux/head.h \ ../include/linux/mm.h ../include/signal.h ../include/linux/kernel.h \ ../include/asm/system.h ../include/asm/segment.h ../include/asm/io.h vsprintf.s vsprintf.o : vsprintf.c ../include/stdarg.h ../include/string.h +init_graphics.s init_graphi.o:init_graphics.c ../include/linux/kernel.h\ +../include/asm/io.h ../include/linux/tty.h \ No newline at end of file diff --git a/linux-0.11-lab/cur/linux/kernel/blk_drv/blk_drv.a b/linux-0.11-lab/cur/linux/kernel/blk_drv/blk_drv.a index f94d131..e527723 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/blk_drv/blk_drv.a and b/linux-0.11-lab/cur/linux/kernel/blk_drv/blk_drv.a differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/Makefile b/linux-0.11-lab/cur/linux/kernel/chr_drv/Makefile index ac92237..4a9cbeb 100644 --- a/linux-0.11-lab/cur/linux/kernel/chr_drv/Makefile +++ b/linux-0.11-lab/cur/linux/kernel/chr_drv/Makefile @@ -25,7 +25,7 @@ CPP =gcc -E -nostdinc -I../../include -c -o $*.o $< OBJS = tty_io.o console.o keyboard.2.o serial.o rs_io.o \ - tty_ioctl.o mouse.o + tty_ioctl.o mouse.2.o chr_drv.a: $(OBJS) $(AR) rcs chr_drv.a $(OBJS) @@ -38,7 +38,7 @@ mouse.2.s:mouse.S ../../include/linux/config.h clean: rm -f core *.o *.a tmp_make keyboard.2.s for i in *.c;do rm -f `basename $$i .c`.s;done - + rm -f core *.o *.a tmp_make mouse.2.s dep: sed '/\#\#\# Dependencies/q' < Makefile > tmp_make (for i in *.c;do echo -n `echo $$i | sed 's,\.c,\.s,'`" "; \ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/chr_drv.a b/linux-0.11-lab/cur/linux/kernel/chr_drv/chr_drv.a index 7400948..62bd46e 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/chr_drv/chr_drv.a and b/linux-0.11-lab/cur/linux/kernel/chr_drv/chr_drv.a differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/console.o b/linux-0.11-lab/cur/linux/kernel/chr_drv/console.o index 0bf1de4..297a93b 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/chr_drv/console.o and b/linux-0.11-lab/cur/linux/kernel/chr_drv/console.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.2.o b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.2.o new file mode 100644 index 0000000..21f6aaa Binary files /dev/null and b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.2.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.2.s b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.2.s new file mode 100644 index 0000000..f64fb9c --- /dev/null +++ b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.2.s @@ -0,0 +1,52 @@ +# 1 "mouse.S" +# 1 "" +# 1 "" +# 1 "mouse.S" +.globl mouse_interrupt +mouse_interrupt: + pushl %eax + pushl %ebx + pushl %ecx + pushl %edx + push %ds + + #prepare for call readmouse + movl $0x10,%eax + mov %ax,%ds + + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + + #EOI + movb $0x20,%al #8259A 操作命令字 EOI + outb %al,$0xA0 #send EOI to 8259a second + outb %al,$0x20 #send EOI to 8259a first + + + pop %ds + popl %edx + popl %ecx + popl %ebx + popl %eax + iret diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.S b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.S index 23b56aa..63a7733 100644 --- a/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.S +++ b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.S @@ -1,60 +1,43 @@ -# 1 "mouse.S" -# 1 "/home/mz/1/linux-0.11/kernel/chr_drv//" -# 1 "" -# 1 "" -# 1 "mouse.S" -# 1 "../../include/linux/config.h" 1 - - - - - - - - - - - - - - - - - - - - - -# 36 "../../include/linux/config.h" - -# 47 "../../include/linux/config.h" - -# 2 "mouse.S" 2 - .globl mouse_interrupt mouse_interrupt: pushl %eax pushl %ebx - pushl %ecx + pushl %ecx pushl %edx push %ds - //prepare for call readmouse + #prepare for call readmouse movl $0x10,%eax mov %ax,%ds - xor %eax,%eax +xor %eax,%eax inb $0x60,%al pushl %eax call readmouse + addl $4,%esp +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp + +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse + addl $4,%esp +xor %eax,%eax + inb $0x60,%al + pushl %eax + call readmouse addl $4,%esp - //EOI - movb $0x20,%al //8259A 操作命令字 EOI - outb %al,$0xA0 //send EOI to 8259a second - outb %al,$0x20 //send EOI to 8259a first + #EOI + movb $0x20,%al #8259A 操作命令字 EOI + outb %al,$0xA0 #send EOI to 8259a second + outb %al,$0x20 #send EOI to 8259a first pop %ds diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.o b/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.o deleted file mode 100644 index 7bbe71b..0000000 Binary files a/linux-0.11-lab/cur/linux/kernel/chr_drv/mouse.o and /dev/null differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/serial.o b/linux-0.11-lab/cur/linux/kernel/chr_drv/serial.o index 1ddb782..677f05c 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/chr_drv/serial.o and b/linux-0.11-lab/cur/linux/kernel/chr_drv/serial.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.c b/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.c index 7311f34..a9c34bf 100644 --- a/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.c +++ b/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.c @@ -349,6 +349,8 @@ void chr_dev_init(void) { } + +#define MSG_MOUSE_CLICK 1 static unsigned char mouse_input_count = 0; //用来记录是鼠标输入的第几个字节的全局变量 static unsigned char mouse_left_down; //用来记录鼠标左键是否按下 static unsigned char mouse_right_down; //用来记录鼠标右键是否按下 @@ -359,9 +361,10 @@ static int mouse_x_position; //用来记录鼠标的 x 轴位置 static int mouse_y_position;//用来记录鼠标的 y 轴位置 static int fcreate=0; int cnt=0; +extern struct message *headd; void readmouse(int mousecode) { -printk("1\n"); +//printk("1\n"); if(fcreate==0) { fcreate=1; @@ -384,10 +387,18 @@ switch(mouse_input_count) case 1: //Misplaced abandonment mouse_left_down=(mousecode &0x01) ==0x01; + mouse_right_down=(mousecode &0x02)==0x02; mouse_left_move=(mousecode & 0x10)==0x10; mouse_down_move=(mousecode & 0x20)==0x20; mouse_input_count++; + if(mouse_left_down==1 && mouse_left_move==0 && mouse_down_move==0) + { + struct message *msg = malloc(sizeof(struct message)); + msg -> mid = MSG_MOUSE_CLICK; + msg -> pid = -1; + post_message(msg); + } break; @@ -397,9 +408,8 @@ case 2: //get the x of mouse if(mouse_left_move) mouse_x_position +=(int)(0xFFFFFF00|mousecode); if(mouse_x_position>100) mouse_x_position=100; - if(mouse_x_position<0) mouse_x_position=10; - -mouse_input_count++; + if(mouse_x_position<0) mouse_x_position=0; + mouse_input_count++; break; @@ -413,8 +423,34 @@ case 3: case 4: //get the z but we do not need it - break; } +if(mouse_input_count==4) +{ +//printk("%d\n",mouse_left_down); +//printk("%d %d\n",mouse_x_position,mouse_y_position); +} +//sys_init_graphics(); +} -} \ No newline at end of file +void post_message(struct message * msg) +{ + cli(); + //printk("mid:%d pid:%d\n",msg->mid,msg->pid); + if(headd==NULL&& msg!=NULL) + { + headd=msg; + sti(); + return ; + } + struct message *curr=headd; + if(msg==NULL)return; + while(curr->next!=NULL) + { + curr=curr->next; + } + curr->next=msg; + sti(); + +return; +} diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.o b/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.o index e591dbf..2df1eb1 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.o and b/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_io.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_ioctl.o b/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_ioctl.o index e7fcd2b..3938d9c 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_ioctl.o and b/linux-0.11-lab/cur/linux/kernel/chr_drv/tty_ioctl.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/exit.o b/linux-0.11-lab/cur/linux/kernel/exit.o index 647e58e..544bfce 100644 Binary files a/linux-0.11-lab/cur/linux/kernel/exit.o and b/linux-0.11-lab/cur/linux/kernel/exit.o differ diff --git a/linux-0.11-lab/cur/linux/kernel/init_graphics.c b/linux-0.11-lab/cur/linux/kernel/init_graphics.c new file mode 100644 index 0000000..ad5a4fe --- /dev/null +++ b/linux-0.11-lab/cur/linux/kernel/init_graphics.c @@ -0,0 +1,105 @@ +#include +#include +#include "linux/tty.h" +#define memstart 0xA0000 +#define memsize 64000 +#define cursor_side 3 +#define width 320 +#define height 200 +#define barrier_width 10 +struct message *headd; +static int ff=0; +int sys_init_graphics() +{ +int i,j,x,y; + char *p=0xA0000; + if(ff==0) +{ +outb(0x05,0x3CE); + outb(0x40,0x3CF);/* shift256=1*/ + outb(0x06,0x3CE); + outb(0x05,0x3CF);/*0101 0xA0000*/ + outb(0x04,0x3C4); + outb(0x08,0x3C5);/*0000 jilian*/ + + + outb(0x01,0x3D4); + outb(0x4F,0x3D5);/* end horizontal display=79 ??*/ + outb(0x03,0x3D4); + outb(0x82,0x3D5);/*display enable skew=0*/ + + outb(0x07,0x3D4); + outb(0x1F,0x3D5);/*vertical display end No8,9 bit=1,0*/ + outb(0x12,0x3D4); + outb(0x8F,0x3D5);/*vertical display end low 7b =0x8F*/ + outb(0x17,0x3D4); + outb(0xA3,0x3D5);/*SLDIV=1 ,scanline clock/2*/ + + + + outb(0x14,0x3D4); + outb(0x40,0x3D5);/*DW=1*/ + outb(0x13,0x3D4); + outb(0x28,0x3D5);/*Offset=40, 20:become long*/ + + outb(0x0C,0x3D4);/**/ + outb(0x00,0x3D5);/**/ + outb(0x0D,0x3D4);/**/ + outb(0x00,0x3D5);/*Start Address=0xA0000*/ +ff=1; +} + + + + p=memstart; + for(i=0;imid!=1)return 0; + headd=headd->next; + return 0; +} + +int sys_repaint(int x,int y,int h) +{ + int i,j,w; + char *p; + i=x; + j=y; + p=0xA0000; + w=barrier_width; + if(i+w>=320 || i<20 ) return 0; + if(i==33 || j==33){ +p=0xA0000; + for(i=0;i