upload the code

master
栗端宇 4 years ago
parent 2a8b5a5b77
commit f07876d09e

Binary file not shown.

@ -145,443 +145,444 @@
00009740 T sys_getdents
000098d5 T sys_pipe2
00009ad7 T sys_sleep
00009b10 T sys_getcwd
00009b16 T sys_mmap
00009b1c T sys_munmap
00009b22 T sys_clone
00009b28 t _get_base
00009b5a t put_fs_long
00009b66 T release
00009bca t send_sig
00009c49 t kill_session
00009ca3 T sys_kill
00009e53 t tell_father
00009edd T do_exit
0000a111 T sys_exit
0000a12a T sys_waitpid
0000a350 t get_fs_byte
0000a35e t put_fs_byte
0000a376 t put_fs_long
0000a382 T sys_sgetmask
0000a38e T sys_ssetmask
0000a3ba T sys_sigpending
0000a3c0 T sys_sigsuspend
0000a3c6 t save_old
0000a419 t get_new
0000a459 T sys_signal
0000a4dd T sys_sigaction
0000a5e7 T do_signal
0000a7d3 T kernel_mktime
0000a918 t oom
0000a937 T get_free_page
0000a973 T free_page
0000a9e2 T free_page_tables
0000aae1 T copy_page_tables
0000ac62 T put_page
0000ad4e T un_wp_page
0000ae06 T do_wp_page
0000ae91 T get_empty_page
0000aed1 t try_to_share
0000b063 t share_page
0000b117 T do_no_page
0000b2ac T do_no_page_myself
0000b40e T mem_init
0000b482 T calc_mem
0000b577 T page_fault
0000b5ae t get_fs_long
0000b5c4 T sys_ustat
0000b5ca T sys_utime
0000b677 T sys_access
0000b753 T sys_chdir
0000b7c7 T sys_chroot
0000b83b T sys_chmod
0000b8d5 T sys_chown
0000b950 T sys_open
0000bbf3 T sys_creat
0000bc16 T sys_close
0000bce5 T sys_lseek
0000bdfc T sys_read
0000bfef T sys_write
0000c19d t lock_inode
0000c1ca t unlock_inode
0000c1e8 T invalidate_inodes
0000c257 T sync_inodes
0000c2ae t _bmap
0000c69a T bmap
0000c6bd T create_block
0000c6e0 T iput
0000c84f T get_empty_inode
0000c9a4 T get_pipe_inode
0000ca19 T iget
0000cbde t read_inode
0000ce14 T sys_sync
0000ce77 T sync_dev
0000cf70 T invalidate_buffers
0000cfe2 T check_disk_change
0000d08c t remove_from_queues
0000d183 t insert_into_queues
0000d248 t find_buffer
0000d2b0 T get_hash_table
0000d332 T getblk
0000d4d0 T brelse
0000d519 T bread
0000d59e T bread_page
0000d6c0 T breada
0000d7b5 T buffer_init
0000d8e4 t lock_super
0000d911 t free_super
0000d956 T get_super
0000d9c5 T put_super
0000da98 t read_super
0000dddb T sys_umount
0000df3c T sys_mount
0000e0ad T mount_root
0000e2bb t get_fs_byte
0000e2c9 t put_fs_byte
0000e2e1 T block_write
0000e433 T block_read
0000e55e t get_fs_byte
0000e56c t put_fs_byte
0000e584 t rw_ttyx
0000e5cc t rw_tty
0000e61c t rw_ram
0000e622 t rw_mem
0000e628 t rw_kmem
0000e62e t rw_port
0000e6c8 t rw_memory
0000e79e T rw_char
0000e808 t get_fs_byte
0000e816 t put_fs_byte
0000e82e T file_read
0000e9d9 T file_write
0000ebd3 t put_fs_byte
0000ebeb t cp_stat
0000ecc2 T sys_stat
0000ed0c T sys_lstat
0000ed27 T sys_fstat
0000ed84 T sys_readlink
0000ed8a t _get_base
0000edbc t get_fs_byte
0000edca t get_fs_long
0000ede0 t put_fs_byte
0000edf8 t put_fs_long
0000ee04 t get_fs
0000ee18 t get_ds
0000ee2c t set_fs
0000ee33 T sys_uselib
0000ee39 t create_tables
0000ef84 t count
0000efc3 t copy_strings
0000f17f t change_ldt
0000f302 T do_execve
0000fd84 T do_execve2
0001085e t get_fs_byte
0001086c t put_fs_byte
00010884 t put_fs_long
00010890 T read_pipe
00010b65 T sys_pipe
00010d67 t get_fs_byte
00010d75 t permission
00010e16 t match
00010e7e t find_entry
000112d8 t get_dir
000114c5 t dir_namei
00011544 T namei
0001165a T open_namei
000119ad T sys_mknod
00011bdd T sys_mkdir
00011f8e t empty_dir
0001216c T sys_rmdir
000124c4 T sys_unlink
00012765 T sys_symlink
0001276b T sys_link
000129c5 T free_block
00012b37 T new_block
00012cdb T free_inode
00012e42 T new_inode
0001301c t dupfd
000130f6 T sys_dup2
0001311d T sys_dup
00013138 T sys_fcntl
00013277 T sys_ioctl
00013348 t free_ind
000133e7 t free_dind
00013486 T truncate
000135bb T sys_select
000135c1 t lock_buffer
000135ee t unlock_buffer
000137e0 t make_request
00013984 T ll_rw_block
000139dd T blk_dev_init
00013a2b t unlock_buffer
00013a60 t end_request
00013b11 T floppy_deselect
00013b48 T floppy_change
00013bce t setup_DMA
00013c84 t output_byte
00013cfa t result
00013db7 t bad_flp_intr
00013e16 t rw_interrupt
00013f05 T setup_rw_floppy
00013fc6 t seek_interrupt
0001401f t transfer
00014154 t recal_interrupt
0001419e T unexpected_floppy_interrupt
000141e3 t recalibrate_floppy
00014245 t reset_interrupt
0001428a t reset_floppy
00014307 t floppy_on_interrupt
00014372 t do_fd_request
00014576 T floppy_init
000145c8 t unlock_buffer
000145fd t end_request
0001469c T sys_setup
00014a4f t controller_ready
00014ae3 t hd_out
00014bd0 t drive_busy
00014c36 t reset_controller
00014cb3 t reset_hd
00014d4b T unexpected_hd_interrupt
00014d5e t bad_rw_intr
00014d9c t read_intr
00014ec2 t recal_intr
00014edc t do_hd_request
000151dd T hd_init
00015257 t unlock_buffer
0001528c t end_request
0001532b t do_rd_request
00015461 T rd_init
000154b7 T rd_load
00015763 t get_fs_byte
00015771 t put_fs_byte
00015789 T tty_init
0001579a T tty_intr
0001580e t sleep_if_empty
00015846 t sleep_if_full
000158ba T copy_to_cooked
00015e75 T tty_read
000161e3 T tty_write
000163f5 T do_tty_interrupt
0001641d T chr_dev_init
0001641e t gotoxy
0001646c t set_origin
000164d2 t scrup
000166c2 t scrdown
000167b9 t lf
000167ef t ri
00016825 t cr
00016846 t del
00016878 t csi_J
00016909 t csi_K
000169bb T csi_m
00016a22 t set_cursor
00016a88 t respond
00016ae0 t insert_char
00016b43 t insert_line
00016b87 t delete_char
00016be5 t delete_line
00016c29 t csi_at
00016c67 t csi_L
00016ca5 t csi_P
00016ce3 t csi_M
00016d21 t save_cur
00016d36 t restore_cur
00016d55 T con_write
000173e3 T con_init
0001761a T sysbeepstop
00017643 t sysbeep
000176a1 t mode
000176a2 t leds
000176a3 t e0
000176a4 T keyboard_interrupt
000176cd t e0_e1
000176f8 t set_e0
00017701 t set_e1
0001770a t put_queue
00017743 t ctrl
0001775b t unctrl
0001775f t unalt
00017775 t lshift
0001777d t unlshift
00017785 t rshift
0001778d t unrshift
00017795 t caps
000177b7 t set_leds
000177cd t uncaps
000177d5 t scroll
000177de t num
000177e7 t cursor
00017807 t cur2
00017830 t cur
0001783c t ok_cur
0001784a t num_table
00017857 t cur_table
00017864 t func
00017881 t ok_func
00017894 t end_func
00017895 t func_table
000178c5 t key_map
00017926 t shift_map
000179e8 t do_self
00017a50 t none
00017a51 t minus
00017a66 t key_table
00017e66 t kb_wait
00017e6f t reboot
00017e81 t die
00017e83 t init
00017ef8 T rs_init
00017f7b T rs_write
00017fc8 T rs1_interrupt
00017fd0 T rs2_interrupt
00017fd5 t rs_int
00017fec t rep_int
00018009 t end
00018017 t jmp_table
00018028 t modem_status
00018030 t line_status
00018038 t read_char
000180bf t get_fs_byte
000180cd t get_fs_long
000180e3 t put_fs_byte
000180fb t put_fs_long
00018107 t change_speed
00018185 t flush
00018197 t send_break
00018198 t get_termios
000181f4 t set_termios
00018244 t get_termio
0001830c t set_termio
000183d0 T tty_ioctl
000186ce t get_fs_byte
000186dc T math_emulate
000187bf T math_error
000187df T _exit
000187ef T open
00018838 T close
000188ac T dup
000188e3 T setsid
00018912 T execve
000189af T strcpy
000189cb T strncpy
000189f0 T strcat
00018a1b T strncat
00018a50 T strcmp
00018a77 T strncmp
00018aa5 T strchr
00018ad2 T strrchr
00018b01 T strspn
00018b3e T strcspn
00018b7b T strpbrk
00018bb2 T strstr
00018beb T strlen
00018c0e T strtok
00018c91 T memcpy
00018cb1 T memmove
00018d05 T memcmp
00018d2f T memchr
00018d67 T memset
0001cd48 d envp_rc
0001cd5c d envp
0001cd80 D sys_call_table
0001cefc D NR_syscalls
0001cf00 d init_task
0001df00 D current
0001df20 D task
0001e020 D stack_start
0001e028 D current_DOR
0001e040 d thisname.2124
0001e080 d month
0001e0c0 d last_inode.1935
0001e0c4 D start_buffer
0001e0e0 d crw_table
0001e100 d ioctl_table
0001e120 d floppy_type
0001e1e0 d cur_spec1
0001e1e4 d cur_rate
0001e1e8 d floppy
0001e1ec d current_track
0001e1f0 d callable.1844
0001e200 D tty_table
00020720 D table_list
00020740 d quotient
00020760 D _ctype
00020861 B __bss_start
00020861 D _edata
00020880 b printbuf
00020c80 b memory_end
00020c84 b buffer_memory_end
00020c88 b main_memory_start
00020ca0 B jiffies
00020ca4 B startup_time
00020ca8 B last_task_used_math
00020cbc b mon_timer
00020ccc b moff_timer
00020ce0 b timer_list
00020fe0 b next_timer
00020fe4 B last_pid
00021000 b buf
00021400 b HIGH_MEMORY
00021420 b mem_map
00022320 B inode_table
00022a20 B nr_buffers
00022a24 b free_list
00022a28 b buffer_wait
00022a2c B ROOT_DEV
00022a60 B blk_dev
00022a98 B do_floppy
00022a9c B selected
00022aa4 b recalibrate
00022aa8 b reset
00022aac b seek
00022ab0 b reply_buffer
00022ab7 b current_drive
00022ab8 b sector
00022ab9 b head
00022aba b track
00022abb b seek_track
00022abc b command
00022ac0 B do_hd
00022ae0 B hd_info
00022b10 b recalibrate
00022b14 b reset
00022b18 b NR_HD
00022b20 b hd
00022b70 B rd_length
00022b74 b cr_flag.1923
00022b80 B beepcount
00022b84 b video_type
00022b88 b video_num_columns
00022b8c b video_size_row
00022b90 b video_num_lines
00022b94 b video_page
00022b98 b video_mem_start
00022b9c b video_mem_end
00022ba0 b video_port_reg
00022ba2 b video_port_val
00022ba4 b video_erase_char
00022ba8 b origin
00022bac b scr_end
00022bb0 b pos
00022bb4 b x
00022bb8 b y
00022bbc b top
00022bc0 b bottom
00022bc4 b state
00022bc8 b npar
00022be0 b par
00022c20 b ques
00022c24 b saved_x
00022c28 b saved_y
00022c40 B drive_info
00022c60 B user_stack
00023c60 B hash_table
00024140 B super_block
000244a0 B file_table
000248a0 B request
00024d20 B rd_start
00024d24 B _ctmp
00024d28 B errno
00024d2c B ___strtok
00024d30 B end
00024d30 B _end
00009b10 T sys_mmap
00009b16 T sys_munmap
00009b1c T sys_clone
00009b22 t _get_base
00009b54 t put_fs_long
00009b60 T release
00009bc4 t send_sig
00009c43 t kill_session
00009c9d T sys_kill
00009e4d t tell_father
00009ed7 T do_exit
0000a10b T sys_exit
0000a124 T sys_waitpid
0000a34a t get_fs_byte
0000a358 t put_fs_byte
0000a370 t put_fs_long
0000a37c T sys_sgetmask
0000a388 T sys_ssetmask
0000a3b4 T sys_sigpending
0000a3ba T sys_sigsuspend
0000a3c0 t save_old
0000a413 t get_new
0000a453 T sys_signal
0000a4d7 T sys_sigaction
0000a5e1 T do_signal
0000a7cd T kernel_mktime
0000a912 t oom
0000a931 T get_free_page
0000a96d T free_page
0000a9dc T free_page_tables
0000aadb T copy_page_tables
0000ac5c T put_page
0000ad48 T un_wp_page
0000ae00 T do_wp_page
0000ae8b T get_empty_page
0000aecb t try_to_share
0000b05d t share_page
0000b111 T do_no_page
0000b2a6 T do_no_page_myself
0000b408 T mem_init
0000b47c T calc_mem
0000b571 T page_fault
0000b5a8 t get_fs_long
0000b5be T sys_ustat
0000b5c4 T sys_utime
0000b671 T sys_access
0000b74d T sys_chdir
0000b7c1 T sys_chroot
0000b835 T sys_chmod
0000b8cf T sys_chown
0000b94a T sys_open
0000bbed T sys_creat
0000bc10 T sys_close
0000bcdf T sys_lseek
0000bdf6 T sys_read
0000bfe9 T sys_write
0000c197 t lock_inode
0000c1c4 t unlock_inode
0000c1e2 T invalidate_inodes
0000c251 T sync_inodes
0000c2a8 t _bmap
0000c694 T bmap
0000c6b7 T create_block
0000c6da T iput
0000c849 T get_empty_inode
0000c99e T get_pipe_inode
0000ca13 T iget
0000cbd8 t read_inode
0000ce0e T sys_sync
0000ce71 T sync_dev
0000cf6a T invalidate_buffers
0000cfdc T check_disk_change
0000d086 t remove_from_queues
0000d17d t insert_into_queues
0000d242 t find_buffer
0000d2aa T get_hash_table
0000d32c T getblk
0000d4ca T brelse
0000d513 T bread
0000d598 T bread_page
0000d6ba T breada
0000d7af T buffer_init
0000d8de t lock_super
0000d90b t free_super
0000d950 T get_super
0000d9bf T put_super
0000da92 t read_super
0000ddd5 T sys_umount
0000df36 T sys_mount
0000e0a7 T mount_root
0000e2b5 t get_fs_byte
0000e2c3 t put_fs_byte
0000e2db T block_write
0000e42d T block_read
0000e558 t get_fs_byte
0000e566 t put_fs_byte
0000e57e t rw_ttyx
0000e5c6 t rw_tty
0000e616 t rw_ram
0000e61c t rw_mem
0000e622 t rw_kmem
0000e628 t rw_port
0000e6c2 t rw_memory
0000e798 T rw_char
0000e802 t get_fs_byte
0000e810 t put_fs_byte
0000e828 T file_read
0000e9d3 T file_write
0000ebcd t put_fs_byte
0000ebe5 t cp_stat
0000ecbc T sys_stat
0000ed06 T sys_lstat
0000ed21 T sys_fstat
0000ed7e T sys_readlink
0000ed84 t _get_base
0000edb6 t get_fs_byte
0000edc4 t get_fs_long
0000edda t put_fs_byte
0000edf2 t put_fs_long
0000edfe t get_fs
0000ee12 t get_ds
0000ee26 t set_fs
0000ee2d T sys_uselib
0000ee33 t create_tables
0000ef7e t count
0000efbd t copy_strings
0000f179 t change_ldt
0000f2fc T do_execve
0000fd7e T do_execve2
00010858 t get_fs_byte
00010866 t put_fs_byte
0001087e t put_fs_long
0001088a T read_pipe
00010b5f T sys_pipe
00010d61 t get_fs_byte
00010d6f t put_fs_byte
00010d87 t permission
00010e28 t match
00010e90 t find_entry
000112ea t get_dir
000114d7 t dir_namei
00011556 T namei
0001166c T open_namei
000119bf T sys_mknod
00011bef T sys_mkdir
00011fa0 t empty_dir
0001217e T sys_rmdir
000124d6 T sys_unlink
00012777 T sys_symlink
0001277d T sys_link
000129d7 T sys_getcwd
00012c68 T free_block
00012dda T new_block
00012f7e T free_inode
000130e5 T new_inode
000132bf t dupfd
00013399 T sys_dup2
000133c0 T sys_dup
000133db T sys_fcntl
0001351a T sys_ioctl
000135eb t free_ind
0001368a t free_dind
00013729 T truncate
0001385e T sys_select
00013864 t lock_buffer
00013891 t unlock_buffer
00013a83 t make_request
00013c27 T ll_rw_block
00013c80 T blk_dev_init
00013cce t unlock_buffer
00013d03 t end_request
00013db4 T floppy_deselect
00013deb T floppy_change
00013e71 t setup_DMA
00013f27 t output_byte
00013f9d t result
0001405a t bad_flp_intr
000140b9 t rw_interrupt
000141a8 T setup_rw_floppy
00014269 t seek_interrupt
000142c2 t transfer
000143f7 t recal_interrupt
00014441 T unexpected_floppy_interrupt
00014486 t recalibrate_floppy
000144e8 t reset_interrupt
0001452d t reset_floppy
000145aa t floppy_on_interrupt
00014615 t do_fd_request
00014819 T floppy_init
0001486b t unlock_buffer
000148a0 t end_request
0001493f T sys_setup
00014cf2 t controller_ready
00014d86 t hd_out
00014e73 t drive_busy
00014ed9 t reset_controller
00014f56 t reset_hd
00014fee T unexpected_hd_interrupt
00015001 t bad_rw_intr
0001503f t read_intr
00015165 t recal_intr
0001517f t do_hd_request
00015480 T hd_init
000154fa t unlock_buffer
0001552f t end_request
000155ce t do_rd_request
00015704 T rd_init
0001575a T rd_load
00015a06 t get_fs_byte
00015a14 t put_fs_byte
00015a2c T tty_init
00015a3d T tty_intr
00015ab1 t sleep_if_empty
00015ae9 t sleep_if_full
00015b5d T copy_to_cooked
00016118 T tty_read
00016486 T tty_write
00016698 T do_tty_interrupt
000166c0 T chr_dev_init
000166c1 t gotoxy
0001670f t set_origin
00016775 t scrup
00016965 t scrdown
00016a5c t lf
00016a92 t ri
00016ac8 t cr
00016ae9 t del
00016b1b t csi_J
00016bac t csi_K
00016c5e T csi_m
00016cc5 t set_cursor
00016d2b t respond
00016d83 t insert_char
00016de6 t insert_line
00016e2a t delete_char
00016e88 t delete_line
00016ecc t csi_at
00016f0a t csi_L
00016f48 t csi_P
00016f86 t csi_M
00016fc4 t save_cur
00016fd9 t restore_cur
00016ff8 T con_write
00017686 T con_init
000178bd T sysbeepstop
000178e6 t sysbeep
00017944 t mode
00017945 t leds
00017946 t e0
00017947 T keyboard_interrupt
00017970 t e0_e1
0001799b t set_e0
000179a4 t set_e1
000179ad t put_queue
000179e6 t ctrl
000179fe t unctrl
00017a02 t unalt
00017a18 t lshift
00017a20 t unlshift
00017a28 t rshift
00017a30 t unrshift
00017a38 t caps
00017a5a t set_leds
00017a70 t uncaps
00017a78 t scroll
00017a81 t num
00017a8a t cursor
00017aaa t cur2
00017ad3 t cur
00017adf t ok_cur
00017aed t num_table
00017afa t cur_table
00017b07 t func
00017b24 t ok_func
00017b37 t end_func
00017b38 t func_table
00017b68 t key_map
00017bc9 t shift_map
00017c8b t do_self
00017cf3 t none
00017cf4 t minus
00017d09 t key_table
00018109 t kb_wait
00018112 t reboot
00018124 t die
00018126 t init
0001819b T rs_init
0001821e T rs_write
0001826c T rs1_interrupt
00018274 T rs2_interrupt
00018279 t rs_int
00018290 t rep_int
000182ad t end
000182bb t jmp_table
000182cc t modem_status
000182d4 t line_status
000182dc t read_char
00018363 t get_fs_byte
00018371 t get_fs_long
00018387 t put_fs_byte
0001839f t put_fs_long
000183ab t change_speed
00018429 t flush
0001843b t send_break
0001843c t get_termios
00018498 t set_termios
000184e8 t get_termio
000185b0 t set_termio
00018674 T tty_ioctl
00018972 t get_fs_byte
00018980 T math_emulate
00018a63 T math_error
00018a83 T _exit
00018a93 T open
00018adc T close
00018b50 T dup
00018b87 T setsid
00018bb6 T execve
00018c53 T strcpy
00018c6f T strncpy
00018c94 T strcat
00018cbf T strncat
00018cf4 T strcmp
00018d1b T strncmp
00018d49 T strchr
00018d76 T strrchr
00018da5 T strspn
00018de2 T strcspn
00018e1f T strpbrk
00018e56 T strstr
00018e8f T strlen
00018eb2 T strtok
00018f35 T memcpy
00018f55 T memmove
00018fa9 T memcmp
00018fd3 T memchr
0001900b T memset
0001d008 d envp_rc
0001d01c d envp
0001d040 D sys_call_table
0001d1bc D NR_syscalls
0001d1c0 d init_task
0001e1c0 D current
0001e1e0 D task
0001e2e0 D stack_start
0001e2e8 D current_DOR
0001e300 d thisname.2124
0001e340 d month
0001e380 d last_inode.1935
0001e384 D start_buffer
0001e3a0 d crw_table
0001e3c0 d ioctl_table
0001e3e0 d floppy_type
0001e4a0 d cur_spec1
0001e4a4 d cur_rate
0001e4a8 d floppy
0001e4ac d current_track
0001e4b0 d callable.1844
0001e4c0 D tty_table
000209e0 D table_list
00020a00 d quotient
00020a20 D _ctype
00020b21 B __bss_start
00020b21 D _edata
00020b40 b printbuf
00020f40 b memory_end
00020f44 b buffer_memory_end
00020f48 b main_memory_start
00020f60 B jiffies
00020f64 B startup_time
00020f68 B last_task_used_math
00020f7c b mon_timer
00020f8c b moff_timer
00020fa0 b timer_list
000212a0 b next_timer
000212a4 B last_pid
000212c0 b buf
000216c0 b HIGH_MEMORY
000216e0 b mem_map
000225e0 B inode_table
00022ce0 B nr_buffers
00022ce4 b free_list
00022ce8 b buffer_wait
00022cec B ROOT_DEV
00022d20 B blk_dev
00022d58 B do_floppy
00022d5c B selected
00022d64 b recalibrate
00022d68 b reset
00022d6c b seek
00022d70 b reply_buffer
00022d77 b current_drive
00022d78 b sector
00022d79 b head
00022d7a b track
00022d7b b seek_track
00022d7c b command
00022d80 B do_hd
00022da0 B hd_info
00022dd0 b recalibrate
00022dd4 b reset
00022dd8 b NR_HD
00022de0 b hd
00022e30 B rd_length
00022e34 b cr_flag.1923
00022e40 B beepcount
00022e44 b video_type
00022e48 b video_num_columns
00022e4c b video_size_row
00022e50 b video_num_lines
00022e54 b video_page
00022e58 b video_mem_start
00022e5c b video_mem_end
00022e60 b video_port_reg
00022e62 b video_port_val
00022e64 b video_erase_char
00022e68 b origin
00022e6c b scr_end
00022e70 b pos
00022e74 b x
00022e78 b y
00022e7c b top
00022e80 b bottom
00022e84 b state
00022e88 b npar
00022ea0 b par
00022ee0 b ques
00022ee4 b saved_x
00022ee8 b saved_y
00022f00 B drive_info
00022f20 B user_stack
00023f20 B hash_table
00024400 B super_block
00024760 B file_table
00024b60 B request
00024fe0 B rd_start
00024fe4 B _ctmp
00024fe8 B errno
00024fec B ___strtok
00024ff0 B end
00024ff0 B _end

File diff suppressed because it is too large Load Diff

Binary file not shown.

@ -781,3 +781,113 @@ int sys_link(const char * oldname, const char * newname)
iput(oldinode);
return 0;
}
// char* sys_getcwd(char * buf, size_t size){
// char *dir [20];
// char * rd;
// struct buffer_head *bh;
// struct dir_entry *dr;
// struct m_inode *node;
// int i=0;
// int j,k1,k2;
// int the_last_node;
// char word;
// bh=bread(current->root->i_dev,current->pwd->i_zone[0]);
// dr=(struct dir_entry *)(bh->b_data);
// node=current->pwd;
// while(i>=0){
// the_last_node=dr->inode;
// node=iget(current->root->i_dev,(dr+1)->inode);
// bh=bread(current->root->i_dev,node->i_zone[0]);
// dr=(struct dir_entry *)(bh->b_data);
// j=2;
// while(dr->name[0]!='\0'){
// if((dr+j)->inode==the_last_node) break;
// j++;
// }
// if((dr+j)->name[0]=='\0') break;
// dir[i]=(dr+j)->name;
// i++;
// }
// dir[i]=NULL;
// i--;
// j=0;
// rd[0]='/';
// k1=1;
// while (i>=0)
// {
// k2=0;
// while(dir[i][k2]!='\0'){
// rd[k1]=dir[i][k2];
// k1++;
// k2++;
// }
// if(i==0) break;
// rd[k1]='/';
// k1++;
// i--;
// }
// i=0;
// while(i<=k1)
// {
// word=rd[i];
// put_fs_byte(word,(char*)(buf+i));
// i++;
// }
// return rd;
// }
char *sys_getcwd(char *buf, size_t size)
{
char *dir[20];
char *rd;
struct buffer_head *bh = bread(current->root->i_dev, current->pwd->i_zone[0]);
struct dir_entry *dr = (struct dir_entry *)(bh->b_data);
struct m_inode *node = current->pwd;
int i = 0;
while (i >= 0)
{
int last_node=dr->inode;
node = iget(current->root->i_dev, (dr + 1)->inode);
bh = bread(current->root->i_dev, node->i_zone[0]);
dr = (struct dir_entry *)(bh->b_data);
int j = 2;
while (dr->name[0] != '\0')
{
if ((dr + j)->inode == last_node)
break;
j++;
}
if ((dr + j)->name[0] == '\0')
break;
dir[i] = (dr + j)->name;
i++;
}
dir[i--] = NULL;
rd[0] = '/';
int k1 = 1;
int k2;
for (; i >= 0; i--)
{
k2 = 0;
while (dir[i][k2] != '\0')
{
rd[k1] = dir[i][k2];
k1++;
k2++;
}
if (i == 0)
break;
rd[k1] = '/';
k1++;
}
char word;
for (i = 0; i <= k1; i++)
{
word = rd[i];
put_fs_byte(word, (char *)(buf + i));
}
return rd;
}

Binary file not shown.

@ -424,10 +424,7 @@ unsigned int sys_sleep(unsigned int second)
}
int sys_getcwd(char * buf, size_t size)
{
return -ENOSYS;
}
int sys_mmap(void *start, size_t len, int prot, int flags,
int fd, off_t off)
{

@ -31,7 +31,7 @@
00000000000i[ ] Sound support: no
00000000000i[ ] USB support: no
00000000000i[ ] VGA extension support: vbe
00000000000i[MEM0 ] allocated memory at 0xb5911008. after alignment, vector=0xb5912000
00000000000i[MEM0 ] allocated memory at 0xb589a008. after alignment, vector=0xb589b000
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: Thu Jul 8 12:34:42 2021 (time0=1625744082)
00000000000i[CMOS ] Setting initial clock to: Thu Jul 8 15:21:54 2021 (time0=1625754114)
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.ul6Vj4'
00000000000i[IMG ] 'vvfat' disk opened: directory is 'b/', redolog is 'b//vvfat.dir.hqCtLg'
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,12 +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 $
00001760340i[XGUI ] charmap update. Font is 9 x 16
00001995095i[BIOS ] ata0-0: PCHS=512/2/20 translation=none LCHS=512/2/20
00002450910i[XGUI ] charmap update. Font is 9 x 16
00005872002i[BIOS ] IDE time out
00051753881i[BIOS ] Booting from 0000:7c00
00095955866i[FLOPPY] partial read() on floppy image returns 4/512
00096122531i[FLOPPY] read() on floppy image returns 0
00096122531i[FLOPPY] partial read() on floppy image returns 196/512
00096289196i[FLOPPY] read() on floppy image returns 0
00096455861i[FLOPPY] read() on floppy image returns 0
00096623572i[FLOPPY] read() on floppy image returns 0
@ -313,3 +312,26 @@
00116129682i[FLOPPY] read() on floppy image returns 0
00116296347i[FLOPPY] read() on floppy image returns 0
00116467321i[BIOS ] int13_harddisk: function 15, unmapped device for ELDL=81
00315090000p[XGUI ] >>PANIC<< POWER button turned off.
00315090000i[CPU0 ] CPU is in protected mode (active)
00315090000i[CPU0 ] CS.mode = 32 bit
00315090000i[CPU0 ] SS.mode = 32 bit
00315090000i[CPU0 ] EFER = 0x00000000
00315090000i[CPU0 ] | EAX=00000000 EBX=00090080 ECX=0001d1c0 EDX=00000020
00315090000i[CPU0 ] | ESP=0001e16c EBP=00023f0c ESI=000900a0 EDI=00022f20
00315090000i[CPU0 ] | IOPL=0 id vip vif ac vm rf nt of df IF tf sf zf af PF cf
00315090000i[CPU0 ] | SEG sltr(index|ti|rpl) base limit G D
00315090000i[CPU0 ] | CS:0008( 0001| 0| 0) 00000000 00ffffff 1 1
00315090000i[CPU0 ] | DS:0010( 0002| 0| 0) 00000000 00ffffff 1 1
00315090000i[CPU0 ] | SS:0010( 0002| 0| 0) 00000000 00ffffff 1 1
00315090000i[CPU0 ] | ES:0010( 0002| 0| 0) 00000000 00ffffff 1 1
00315090000i[CPU0 ] | FS:0017( 0002| 1| 3) 00000000 0009ffff 1 1
00315090000i[CPU0 ] | GS:0017( 0002| 1| 3) 00000000 0009ffff 1 1
00315090000i[CPU0 ] | EIP=00006d3d (00006d3d)
00315090000i[CPU0 ] | CR0=0x8000001b CR2=0x08038000
00315090000i[CPU0 ] | CR3=0x00000000 CR4=0x00000000
00315090000i[CPU0 ] 0x00006d3d>> mov eax, dword ptr ss:[esp+16] : 8B442410
00315090000i[CMOS ] Last time is 1625754135 (Thu Jul 8 15:22:15 2021)
00315090000i[XGUI ] Exit
00315090000i[ ] restoring default signal behavior
00315090000i[SIM ] quit_sim called with exit code 1

Binary file not shown.

@ -145,443 +145,444 @@
00009740 T sys_getdents
000098d5 T sys_pipe2
00009ad7 T sys_sleep
00009b10 T sys_getcwd
00009b16 T sys_mmap
00009b1c T sys_munmap
00009b22 T sys_clone
00009b28 t _get_base
00009b5a t put_fs_long
00009b66 T release
00009bca t send_sig
00009c49 t kill_session
00009ca3 T sys_kill
00009e53 t tell_father
00009edd T do_exit
0000a111 T sys_exit
0000a12a T sys_waitpid
0000a350 t get_fs_byte
0000a35e t put_fs_byte
0000a376 t put_fs_long
0000a382 T sys_sgetmask
0000a38e T sys_ssetmask
0000a3ba T sys_sigpending
0000a3c0 T sys_sigsuspend
0000a3c6 t save_old
0000a419 t get_new
0000a459 T sys_signal
0000a4dd T sys_sigaction
0000a5e7 T do_signal
0000a7d3 T kernel_mktime
0000a918 t oom
0000a937 T get_free_page
0000a973 T free_page
0000a9e2 T free_page_tables
0000aae1 T copy_page_tables
0000ac62 T put_page
0000ad4e T un_wp_page
0000ae06 T do_wp_page
0000ae91 T get_empty_page
0000aed1 t try_to_share
0000b063 t share_page
0000b117 T do_no_page
0000b2ac T do_no_page_myself
0000b40e T mem_init
0000b482 T calc_mem
0000b577 T page_fault
0000b5ae t get_fs_long
0000b5c4 T sys_ustat
0000b5ca T sys_utime
0000b677 T sys_access
0000b753 T sys_chdir
0000b7c7 T sys_chroot
0000b83b T sys_chmod
0000b8d5 T sys_chown
0000b950 T sys_open
0000bbf3 T sys_creat
0000bc16 T sys_close
0000bce5 T sys_lseek
0000bdfc T sys_read
0000bfef T sys_write
0000c19d t lock_inode
0000c1ca t unlock_inode
0000c1e8 T invalidate_inodes
0000c257 T sync_inodes
0000c2ae t _bmap
0000c69a T bmap
0000c6bd T create_block
0000c6e0 T iput
0000c84f T get_empty_inode
0000c9a4 T get_pipe_inode
0000ca19 T iget
0000cbde t read_inode
0000ce14 T sys_sync
0000ce77 T sync_dev
0000cf70 T invalidate_buffers
0000cfe2 T check_disk_change
0000d08c t remove_from_queues
0000d183 t insert_into_queues
0000d248 t find_buffer
0000d2b0 T get_hash_table
0000d332 T getblk
0000d4d0 T brelse
0000d519 T bread
0000d59e T bread_page
0000d6c0 T breada
0000d7b5 T buffer_init
0000d8e4 t lock_super
0000d911 t free_super
0000d956 T get_super
0000d9c5 T put_super
0000da98 t read_super
0000dddb T sys_umount
0000df3c T sys_mount
0000e0ad T mount_root
0000e2bb t get_fs_byte
0000e2c9 t put_fs_byte
0000e2e1 T block_write
0000e433 T block_read
0000e55e t get_fs_byte
0000e56c t put_fs_byte
0000e584 t rw_ttyx
0000e5cc t rw_tty
0000e61c t rw_ram
0000e622 t rw_mem
0000e628 t rw_kmem
0000e62e t rw_port
0000e6c8 t rw_memory
0000e79e T rw_char
0000e808 t get_fs_byte
0000e816 t put_fs_byte
0000e82e T file_read
0000e9d9 T file_write
0000ebd3 t put_fs_byte
0000ebeb t cp_stat
0000ecc2 T sys_stat
0000ed0c T sys_lstat
0000ed27 T sys_fstat
0000ed84 T sys_readlink
0000ed8a t _get_base
0000edbc t get_fs_byte
0000edca t get_fs_long
0000ede0 t put_fs_byte
0000edf8 t put_fs_long
0000ee04 t get_fs
0000ee18 t get_ds
0000ee2c t set_fs
0000ee33 T sys_uselib
0000ee39 t create_tables
0000ef84 t count
0000efc3 t copy_strings
0000f17f t change_ldt
0000f302 T do_execve
0000fd84 T do_execve2
0001085e t get_fs_byte
0001086c t put_fs_byte
00010884 t put_fs_long
00010890 T read_pipe
00010b65 T sys_pipe
00010d67 t get_fs_byte
00010d75 t permission
00010e16 t match
00010e7e t find_entry
000112d8 t get_dir
000114c5 t dir_namei
00011544 T namei
0001165a T open_namei
000119ad T sys_mknod
00011bdd T sys_mkdir
00011f8e t empty_dir
0001216c T sys_rmdir
000124c4 T sys_unlink
00012765 T sys_symlink
0001276b T sys_link
000129c5 T free_block
00012b37 T new_block
00012cdb T free_inode
00012e42 T new_inode
0001301c t dupfd
000130f6 T sys_dup2
0001311d T sys_dup
00013138 T sys_fcntl
00013277 T sys_ioctl
00013348 t free_ind
000133e7 t free_dind
00013486 T truncate
000135bb T sys_select
000135c1 t lock_buffer
000135ee t unlock_buffer
000137e0 t make_request
00013984 T ll_rw_block
000139dd T blk_dev_init
00013a2b t unlock_buffer
00013a60 t end_request
00013b11 T floppy_deselect
00013b48 T floppy_change
00013bce t setup_DMA
00013c84 t output_byte
00013cfa t result
00013db7 t bad_flp_intr
00013e16 t rw_interrupt
00013f05 T setup_rw_floppy
00013fc6 t seek_interrupt
0001401f t transfer
00014154 t recal_interrupt
0001419e T unexpected_floppy_interrupt
000141e3 t recalibrate_floppy
00014245 t reset_interrupt
0001428a t reset_floppy
00014307 t floppy_on_interrupt
00014372 t do_fd_request
00014576 T floppy_init
000145c8 t unlock_buffer
000145fd t end_request
0001469c T sys_setup
00014a4f t controller_ready
00014ae3 t hd_out
00014bd0 t drive_busy
00014c36 t reset_controller
00014cb3 t reset_hd
00014d4b T unexpected_hd_interrupt
00014d5e t bad_rw_intr
00014d9c t read_intr
00014ec2 t recal_intr
00014edc t do_hd_request
000151dd T hd_init
00015257 t unlock_buffer
0001528c t end_request
0001532b t do_rd_request
00015461 T rd_init
000154b7 T rd_load
00015763 t get_fs_byte
00015771 t put_fs_byte
00015789 T tty_init
0001579a T tty_intr
0001580e t sleep_if_empty
00015846 t sleep_if_full
000158ba T copy_to_cooked
00015e75 T tty_read
000161e3 T tty_write
000163f5 T do_tty_interrupt
0001641d T chr_dev_init
0001641e t gotoxy
0001646c t set_origin
000164d2 t scrup
000166c2 t scrdown
000167b9 t lf
000167ef t ri
00016825 t cr
00016846 t del
00016878 t csi_J
00016909 t csi_K
000169bb T csi_m
00016a22 t set_cursor
00016a88 t respond
00016ae0 t insert_char
00016b43 t insert_line
00016b87 t delete_char
00016be5 t delete_line
00016c29 t csi_at
00016c67 t csi_L
00016ca5 t csi_P
00016ce3 t csi_M
00016d21 t save_cur
00016d36 t restore_cur
00016d55 T con_write
000173e3 T con_init
0001761a T sysbeepstop
00017643 t sysbeep
000176a1 t mode
000176a2 t leds
000176a3 t e0
000176a4 T keyboard_interrupt
000176cd t e0_e1
000176f8 t set_e0
00017701 t set_e1
0001770a t put_queue
00017743 t ctrl
0001775b t unctrl
0001775f t unalt
00017775 t lshift
0001777d t unlshift
00017785 t rshift
0001778d t unrshift
00017795 t caps
000177b7 t set_leds
000177cd t uncaps
000177d5 t scroll
000177de t num
000177e7 t cursor
00017807 t cur2
00017830 t cur
0001783c t ok_cur
0001784a t num_table
00017857 t cur_table
00017864 t func
00017881 t ok_func
00017894 t end_func
00017895 t func_table
000178c5 t key_map
00017926 t shift_map
000179e8 t do_self
00017a50 t none
00017a51 t minus
00017a66 t key_table
00017e66 t kb_wait
00017e6f t reboot
00017e81 t die
00017e83 t init
00017ef8 T rs_init
00017f7b T rs_write
00017fc8 T rs1_interrupt
00017fd0 T rs2_interrupt
00017fd5 t rs_int
00017fec t rep_int
00018009 t end
00018017 t jmp_table
00018028 t modem_status
00018030 t line_status
00018038 t read_char
000180bf t get_fs_byte
000180cd t get_fs_long
000180e3 t put_fs_byte
000180fb t put_fs_long
00018107 t change_speed
00018185 t flush
00018197 t send_break
00018198 t get_termios
000181f4 t set_termios
00018244 t get_termio
0001830c t set_termio
000183d0 T tty_ioctl
000186ce t get_fs_byte
000186dc T math_emulate
000187bf T math_error
000187df T _exit
000187ef T open
00018838 T close
000188ac T dup
000188e3 T setsid
00018912 T execve
000189af T strcpy
000189cb T strncpy
000189f0 T strcat
00018a1b T strncat
00018a50 T strcmp
00018a77 T strncmp
00018aa5 T strchr
00018ad2 T strrchr
00018b01 T strspn
00018b3e T strcspn
00018b7b T strpbrk
00018bb2 T strstr
00018beb T strlen
00018c0e T strtok
00018c91 T memcpy
00018cb1 T memmove
00018d05 T memcmp
00018d2f T memchr
00018d67 T memset
0001cd48 d envp_rc
0001cd5c d envp
0001cd80 D sys_call_table
0001cefc D NR_syscalls
0001cf00 d init_task
0001df00 D current
0001df20 D task
0001e020 D stack_start
0001e028 D current_DOR
0001e040 d thisname.2124
0001e080 d month
0001e0c0 d last_inode.1935
0001e0c4 D start_buffer
0001e0e0 d crw_table
0001e100 d ioctl_table
0001e120 d floppy_type
0001e1e0 d cur_spec1
0001e1e4 d cur_rate
0001e1e8 d floppy
0001e1ec d current_track
0001e1f0 d callable.1844
0001e200 D tty_table
00020720 D table_list
00020740 d quotient
00020760 D _ctype
00020861 B __bss_start
00020861 D _edata
00020880 b printbuf
00020c80 b memory_end
00020c84 b buffer_memory_end
00020c88 b main_memory_start
00020ca0 B jiffies
00020ca4 B startup_time
00020ca8 B last_task_used_math
00020cbc b mon_timer
00020ccc b moff_timer
00020ce0 b timer_list
00020fe0 b next_timer
00020fe4 B last_pid
00021000 b buf
00021400 b HIGH_MEMORY
00021420 b mem_map
00022320 B inode_table
00022a20 B nr_buffers
00022a24 b free_list
00022a28 b buffer_wait
00022a2c B ROOT_DEV
00022a60 B blk_dev
00022a98 B do_floppy
00022a9c B selected
00022aa4 b recalibrate
00022aa8 b reset
00022aac b seek
00022ab0 b reply_buffer
00022ab7 b current_drive
00022ab8 b sector
00022ab9 b head
00022aba b track
00022abb b seek_track
00022abc b command
00022ac0 B do_hd
00022ae0 B hd_info
00022b10 b recalibrate
00022b14 b reset
00022b18 b NR_HD
00022b20 b hd
00022b70 B rd_length
00022b74 b cr_flag.1923
00022b80 B beepcount
00022b84 b video_type
00022b88 b video_num_columns
00022b8c b video_size_row
00022b90 b video_num_lines
00022b94 b video_page
00022b98 b video_mem_start
00022b9c b video_mem_end
00022ba0 b video_port_reg
00022ba2 b video_port_val
00022ba4 b video_erase_char
00022ba8 b origin
00022bac b scr_end
00022bb0 b pos
00022bb4 b x
00022bb8 b y
00022bbc b top
00022bc0 b bottom
00022bc4 b state
00022bc8 b npar
00022be0 b par
00022c20 b ques
00022c24 b saved_x
00022c28 b saved_y
00022c40 B drive_info
00022c60 B user_stack
00023c60 B hash_table
00024140 B super_block
000244a0 B file_table
000248a0 B request
00024d20 B rd_start
00024d24 B _ctmp
00024d28 B errno
00024d2c B ___strtok
00024d30 B end
00024d30 B _end
00009b10 T sys_mmap
00009b16 T sys_munmap
00009b1c T sys_clone
00009b22 t _get_base
00009b54 t put_fs_long
00009b60 T release
00009bc4 t send_sig
00009c43 t kill_session
00009c9d T sys_kill
00009e4d t tell_father
00009ed7 T do_exit
0000a10b T sys_exit
0000a124 T sys_waitpid
0000a34a t get_fs_byte
0000a358 t put_fs_byte
0000a370 t put_fs_long
0000a37c T sys_sgetmask
0000a388 T sys_ssetmask
0000a3b4 T sys_sigpending
0000a3ba T sys_sigsuspend
0000a3c0 t save_old
0000a413 t get_new
0000a453 T sys_signal
0000a4d7 T sys_sigaction
0000a5e1 T do_signal
0000a7cd T kernel_mktime
0000a912 t oom
0000a931 T get_free_page
0000a96d T free_page
0000a9dc T free_page_tables
0000aadb T copy_page_tables
0000ac5c T put_page
0000ad48 T un_wp_page
0000ae00 T do_wp_page
0000ae8b T get_empty_page
0000aecb t try_to_share
0000b05d t share_page
0000b111 T do_no_page
0000b2a6 T do_no_page_myself
0000b408 T mem_init
0000b47c T calc_mem
0000b571 T page_fault
0000b5a8 t get_fs_long
0000b5be T sys_ustat
0000b5c4 T sys_utime
0000b671 T sys_access
0000b74d T sys_chdir
0000b7c1 T sys_chroot
0000b835 T sys_chmod
0000b8cf T sys_chown
0000b94a T sys_open
0000bbed T sys_creat
0000bc10 T sys_close
0000bcdf T sys_lseek
0000bdf6 T sys_read
0000bfe9 T sys_write
0000c197 t lock_inode
0000c1c4 t unlock_inode
0000c1e2 T invalidate_inodes
0000c251 T sync_inodes
0000c2a8 t _bmap
0000c694 T bmap
0000c6b7 T create_block
0000c6da T iput
0000c849 T get_empty_inode
0000c99e T get_pipe_inode
0000ca13 T iget
0000cbd8 t read_inode
0000ce0e T sys_sync
0000ce71 T sync_dev
0000cf6a T invalidate_buffers
0000cfdc T check_disk_change
0000d086 t remove_from_queues
0000d17d t insert_into_queues
0000d242 t find_buffer
0000d2aa T get_hash_table
0000d32c T getblk
0000d4ca T brelse
0000d513 T bread
0000d598 T bread_page
0000d6ba T breada
0000d7af T buffer_init
0000d8de t lock_super
0000d90b t free_super
0000d950 T get_super
0000d9bf T put_super
0000da92 t read_super
0000ddd5 T sys_umount
0000df36 T sys_mount
0000e0a7 T mount_root
0000e2b5 t get_fs_byte
0000e2c3 t put_fs_byte
0000e2db T block_write
0000e42d T block_read
0000e558 t get_fs_byte
0000e566 t put_fs_byte
0000e57e t rw_ttyx
0000e5c6 t rw_tty
0000e616 t rw_ram
0000e61c t rw_mem
0000e622 t rw_kmem
0000e628 t rw_port
0000e6c2 t rw_memory
0000e798 T rw_char
0000e802 t get_fs_byte
0000e810 t put_fs_byte
0000e828 T file_read
0000e9d3 T file_write
0000ebcd t put_fs_byte
0000ebe5 t cp_stat
0000ecbc T sys_stat
0000ed06 T sys_lstat
0000ed21 T sys_fstat
0000ed7e T sys_readlink
0000ed84 t _get_base
0000edb6 t get_fs_byte
0000edc4 t get_fs_long
0000edda t put_fs_byte
0000edf2 t put_fs_long
0000edfe t get_fs
0000ee12 t get_ds
0000ee26 t set_fs
0000ee2d T sys_uselib
0000ee33 t create_tables
0000ef7e t count
0000efbd t copy_strings
0000f179 t change_ldt
0000f2fc T do_execve
0000fd7e T do_execve2
00010858 t get_fs_byte
00010866 t put_fs_byte
0001087e t put_fs_long
0001088a T read_pipe
00010b5f T sys_pipe
00010d61 t get_fs_byte
00010d6f t put_fs_byte
00010d87 t permission
00010e28 t match
00010e90 t find_entry
000112ea t get_dir
000114d7 t dir_namei
00011556 T namei
0001166c T open_namei
000119bf T sys_mknod
00011bef T sys_mkdir
00011fa0 t empty_dir
0001217e T sys_rmdir
000124d6 T sys_unlink
00012777 T sys_symlink
0001277d T sys_link
000129d7 T sys_getcwd
00012c68 T free_block
00012dda T new_block
00012f7e T free_inode
000130e5 T new_inode
000132bf t dupfd
00013399 T sys_dup2
000133c0 T sys_dup
000133db T sys_fcntl
0001351a T sys_ioctl
000135eb t free_ind
0001368a t free_dind
00013729 T truncate
0001385e T sys_select
00013864 t lock_buffer
00013891 t unlock_buffer
00013a83 t make_request
00013c27 T ll_rw_block
00013c80 T blk_dev_init
00013cce t unlock_buffer
00013d03 t end_request
00013db4 T floppy_deselect
00013deb T floppy_change
00013e71 t setup_DMA
00013f27 t output_byte
00013f9d t result
0001405a t bad_flp_intr
000140b9 t rw_interrupt
000141a8 T setup_rw_floppy
00014269 t seek_interrupt
000142c2 t transfer
000143f7 t recal_interrupt
00014441 T unexpected_floppy_interrupt
00014486 t recalibrate_floppy
000144e8 t reset_interrupt
0001452d t reset_floppy
000145aa t floppy_on_interrupt
00014615 t do_fd_request
00014819 T floppy_init
0001486b t unlock_buffer
000148a0 t end_request
0001493f T sys_setup
00014cf2 t controller_ready
00014d86 t hd_out
00014e73 t drive_busy
00014ed9 t reset_controller
00014f56 t reset_hd
00014fee T unexpected_hd_interrupt
00015001 t bad_rw_intr
0001503f t read_intr
00015165 t recal_intr
0001517f t do_hd_request
00015480 T hd_init
000154fa t unlock_buffer
0001552f t end_request
000155ce t do_rd_request
00015704 T rd_init
0001575a T rd_load
00015a06 t get_fs_byte
00015a14 t put_fs_byte
00015a2c T tty_init
00015a3d T tty_intr
00015ab1 t sleep_if_empty
00015ae9 t sleep_if_full
00015b5d T copy_to_cooked
00016118 T tty_read
00016486 T tty_write
00016698 T do_tty_interrupt
000166c0 T chr_dev_init
000166c1 t gotoxy
0001670f t set_origin
00016775 t scrup
00016965 t scrdown
00016a5c t lf
00016a92 t ri
00016ac8 t cr
00016ae9 t del
00016b1b t csi_J
00016bac t csi_K
00016c5e T csi_m
00016cc5 t set_cursor
00016d2b t respond
00016d83 t insert_char
00016de6 t insert_line
00016e2a t delete_char
00016e88 t delete_line
00016ecc t csi_at
00016f0a t csi_L
00016f48 t csi_P
00016f86 t csi_M
00016fc4 t save_cur
00016fd9 t restore_cur
00016ff8 T con_write
00017686 T con_init
000178bd T sysbeepstop
000178e6 t sysbeep
00017944 t mode
00017945 t leds
00017946 t e0
00017947 T keyboard_interrupt
00017970 t e0_e1
0001799b t set_e0
000179a4 t set_e1
000179ad t put_queue
000179e6 t ctrl
000179fe t unctrl
00017a02 t unalt
00017a18 t lshift
00017a20 t unlshift
00017a28 t rshift
00017a30 t unrshift
00017a38 t caps
00017a5a t set_leds
00017a70 t uncaps
00017a78 t scroll
00017a81 t num
00017a8a t cursor
00017aaa t cur2
00017ad3 t cur
00017adf t ok_cur
00017aed t num_table
00017afa t cur_table
00017b07 t func
00017b24 t ok_func
00017b37 t end_func
00017b38 t func_table
00017b68 t key_map
00017bc9 t shift_map
00017c8b t do_self
00017cf3 t none
00017cf4 t minus
00017d09 t key_table
00018109 t kb_wait
00018112 t reboot
00018124 t die
00018126 t init
0001819b T rs_init
0001821e T rs_write
0001826c T rs1_interrupt
00018274 T rs2_interrupt
00018279 t rs_int
00018290 t rep_int
000182ad t end
000182bb t jmp_table
000182cc t modem_status
000182d4 t line_status
000182dc t read_char
00018363 t get_fs_byte
00018371 t get_fs_long
00018387 t put_fs_byte
0001839f t put_fs_long
000183ab t change_speed
00018429 t flush
0001843b t send_break
0001843c t get_termios
00018498 t set_termios
000184e8 t get_termio
000185b0 t set_termio
00018674 T tty_ioctl
00018972 t get_fs_byte
00018980 T math_emulate
00018a63 T math_error
00018a83 T _exit
00018a93 T open
00018adc T close
00018b50 T dup
00018b87 T setsid
00018bb6 T execve
00018c53 T strcpy
00018c6f T strncpy
00018c94 T strcat
00018cbf T strncat
00018cf4 T strcmp
00018d1b T strncmp
00018d49 T strchr
00018d76 T strrchr
00018da5 T strspn
00018de2 T strcspn
00018e1f T strpbrk
00018e56 T strstr
00018e8f T strlen
00018eb2 T strtok
00018f35 T memcpy
00018f55 T memmove
00018fa9 T memcmp
00018fd3 T memchr
0001900b T memset
0001d008 d envp_rc
0001d01c d envp
0001d040 D sys_call_table
0001d1bc D NR_syscalls
0001d1c0 d init_task
0001e1c0 D current
0001e1e0 D task
0001e2e0 D stack_start
0001e2e8 D current_DOR
0001e300 d thisname.2124
0001e340 d month
0001e380 d last_inode.1935
0001e384 D start_buffer
0001e3a0 d crw_table
0001e3c0 d ioctl_table
0001e3e0 d floppy_type
0001e4a0 d cur_spec1
0001e4a4 d cur_rate
0001e4a8 d floppy
0001e4ac d current_track
0001e4b0 d callable.1844
0001e4c0 D tty_table
000209e0 D table_list
00020a00 d quotient
00020a20 D _ctype
00020b21 B __bss_start
00020b21 D _edata
00020b40 b printbuf
00020f40 b memory_end
00020f44 b buffer_memory_end
00020f48 b main_memory_start
00020f60 B jiffies
00020f64 B startup_time
00020f68 B last_task_used_math
00020f7c b mon_timer
00020f8c b moff_timer
00020fa0 b timer_list
000212a0 b next_timer
000212a4 B last_pid
000212c0 b buf
000216c0 b HIGH_MEMORY
000216e0 b mem_map
000225e0 B inode_table
00022ce0 B nr_buffers
00022ce4 b free_list
00022ce8 b buffer_wait
00022cec B ROOT_DEV
00022d20 B blk_dev
00022d58 B do_floppy
00022d5c B selected
00022d64 b recalibrate
00022d68 b reset
00022d6c b seek
00022d70 b reply_buffer
00022d77 b current_drive
00022d78 b sector
00022d79 b head
00022d7a b track
00022d7b b seek_track
00022d7c b command
00022d80 B do_hd
00022da0 B hd_info
00022dd0 b recalibrate
00022dd4 b reset
00022dd8 b NR_HD
00022de0 b hd
00022e30 B rd_length
00022e34 b cr_flag.1923
00022e40 B beepcount
00022e44 b video_type
00022e48 b video_num_columns
00022e4c b video_size_row
00022e50 b video_num_lines
00022e54 b video_page
00022e58 b video_mem_start
00022e5c b video_mem_end
00022e60 b video_port_reg
00022e62 b video_port_val
00022e64 b video_erase_char
00022e68 b origin
00022e6c b scr_end
00022e70 b pos
00022e74 b x
00022e78 b y
00022e7c b top
00022e80 b bottom
00022e84 b state
00022e88 b npar
00022ea0 b par
00022ee0 b ques
00022ee4 b saved_x
00022ee8 b saved_y
00022f00 B drive_info
00022f20 B user_stack
00023f20 B hash_table
00024400 B super_block
00024760 B file_table
00024b60 B request
00024fe0 B rd_start
00024fe4 B _ctmp
00024fe8 B errno
00024fec B ___strtok
00024ff0 B end
00024ff0 B _end

File diff suppressed because it is too large Load Diff

Binary file not shown.

@ -781,3 +781,113 @@ int sys_link(const char * oldname, const char * newname)
iput(oldinode);
return 0;
}
// char* sys_getcwd(char * buf, size_t size){
// char *dir [20];
// char * rd;
// struct buffer_head *bh;
// struct dir_entry *dr;
// struct m_inode *node;
// int i=0;
// int j,k1,k2;
// int the_last_node;
// char word;
// bh=bread(current->root->i_dev,current->pwd->i_zone[0]);
// dr=(struct dir_entry *)(bh->b_data);
// node=current->pwd;
// while(i>=0){
// the_last_node=dr->inode;
// node=iget(current->root->i_dev,(dr+1)->inode);
// bh=bread(current->root->i_dev,node->i_zone[0]);
// dr=(struct dir_entry *)(bh->b_data);
// j=2;
// while(dr->name[0]!='\0'){
// if((dr+j)->inode==the_last_node) break;
// j++;
// }
// if((dr+j)->name[0]=='\0') break;
// dir[i]=(dr+j)->name;
// i++;
// }
// dir[i]=NULL;
// i--;
// j=0;
// rd[0]='/';
// k1=1;
// while (i>=0)
// {
// k2=0;
// while(dir[i][k2]!='\0'){
// rd[k1]=dir[i][k2];
// k1++;
// k2++;
// }
// if(i==0) break;
// rd[k1]='/';
// k1++;
// i--;
// }
// i=0;
// while(i<=k1)
// {
// word=rd[i];
// put_fs_byte(word,(char*)(buf+i));
// i++;
// }
// return rd;
// }
char *sys_getcwd(char *buf, size_t size)
{
char *dir[20];
char *rd;
struct buffer_head *bh = bread(current->root->i_dev, current->pwd->i_zone[0]);
struct dir_entry *dr = (struct dir_entry *)(bh->b_data);
struct m_inode *node = current->pwd;
int i = 0;
while (i >= 0)
{
int last_node=dr->inode;
node = iget(current->root->i_dev, (dr + 1)->inode);
bh = bread(current->root->i_dev, node->i_zone[0]);
dr = (struct dir_entry *)(bh->b_data);
int j = 2;
while (dr->name[0] != '\0')
{
if ((dr + j)->inode == last_node)
break;
j++;
}
if ((dr + j)->name[0] == '\0')
break;
dir[i] = (dr + j)->name;
i++;
}
dir[i--] = NULL;
rd[0] = '/';
int k1 = 1;
int k2;
for (; i >= 0; i--)
{
k2 = 0;
while (dir[i][k2] != '\0')
{
rd[k1] = dir[i][k2];
k1++;
k2++;
}
if (i == 0)
break;
rd[k1] = '/';
k1++;
}
char word;
for (i = 0; i <= k1; i++)
{
word = rd[i];
put_fs_byte(word, (char *)(buf + i));
}
return rd;
}

@ -424,10 +424,7 @@ unsigned int sys_sleep(unsigned int second)
}
int sys_getcwd(char * buf, size_t size)
{
return -ENOSYS;
}
int sys_mmap(void *start, size_t len, int prot, int flags,
int fd, off_t off)
{

Loading…
Cancel
Save