在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → OS161 ASST1-3 Solution.rar

OS161 ASST1-3 Solution.rar

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:1.79M
  • 下载次数:1
  • 浏览次数:47
  • 发布时间:2021-12-07
  • 实例类别:一般编程问题
  • 发 布 人:js2021
  • 文件格式:.rar
  • 所需积分:2
 

实例介绍

【实例简介】
包括信号量,线程,分页的实现(ASST1~3)来自University of Waterloo。仅供参考……
【实例截图】
【核心代码】
16359647492399423201.rar
└── a3_sunyang4
├── base-design.txt
├── design_document
└── src
├── build
│   └── user
│   └── testbin
│   └── exittest
├── CHANGES
├── common
│   ├── gcc-millicode
│   │   ├── adddi3.c
│   │   ├── anddi3.c
│   │   ├── ashldi3.c
│   │   ├── ashrdi3.c
│   │   ├── cmpdi2.c
│   │   ├── divdi3.c
│   │   ├── iordi3.c
│   │   ├── longlong.h
│   │   ├── lshldi3.c
│   │   ├── lshrdi3.c
│   │   ├── moddi3.c
│   │   ├── muldi3.c
│   │   ├── negdi2.c
│   │   ├── notdi2.c
│   │   ├── qdivrem.c
│   │   ├── README
│   │   ├── subdi3.c
│   │   ├── ucmpdi2.c
│   │   ├── udivdi3.c
│   │   ├── umoddi3.c
│   │   └── xordi3.c
│   └── libc
│   ├── arch
│   │   └── mips
│   │   └── setjmp.S
│   ├── printf
│   │   ├── __printf.c
│   │   └── snprintf.c
│   ├── stdlib
│   │   └── atoi.c
│   └── string
│   ├── bzero.c
│   ├── memcpy.c
│   ├── memmove.c
│   ├── strcat.c
│   ├── strchr.c
│   ├── strcmp.c
│   ├── strcpy.c
│   ├── strlen.c
│   ├── strrchr.c
│   └── strtok_r.c
├── configure
├── design
│   ├── shell.txt
│   └── usermalloc.txt
├── kern
│   ├── arch
│   │   ├── mips
│   │   │   ├── conf
│   │   │   │   ├── conf.arch
│   │   │   │   └── ldscript
│   │   │   ├── include
│   │   │   │   ├── coremap.h
│   │   │   │   ├── current.h
│   │   │   │   ├── elf.h
│   │   │   │   ├── kern
│   │   │   │   │   ├── endian.h
│   │   │   │   │   ├── regdefs.h
│   │   │   │   │   ├── setjmp.h
│   │   │   │   │   ├── signal.h
│   │   │   │   │   └── types.h
│   │   │   │   ├── specialreg.h
│   │   │   │   ├── spinlock.h
│   │   │   │   ├── thread.h
│   │   │   │   ├── tlb.h
│   │   │   │   ├── trapframe.h
│   │   │   │   ├── types.h
│   │   │   │   └── vm.h
│   │   │   ├── locore
│   │   │   │   ├── cache-mips161.S
│   │   │   │   ├── exception-mips1.S
│   │   │   │   └── trap.c
│   │   │   ├── syscall
│   │   │   │   └── syscall.c
│   │   │   ├── thread
│   │   │   │   ├── cpu.c
│   │   │   │   ├── switchframe.c
│   │   │   │   ├── switchframe.h
│   │   │   │   ├── switch.S
│   │   │   │   ├── thread_machdep.c
│   │   │   │   └── threadstart.S
│   │   │   └── vm
│   │   │   ├── coremap.c
│   │   │   ├── dumbvm.c
│   │   │   ├── ram.c
│   │   │   ├── tlb-mips1.S
│   │   │   └── vm.c
│   │   └── sys161
│   │   ├── conf
│   │   │   └── conf.arch
│   │   ├── dev
│   │   │   └── lamebus_machdep.c
│   │   ├── include
│   │   │   ├── bus.h
│   │   │   └── maxcpus.h
│   │   └── startup
│   │   └── start.S
│   ├── compile
│   ├── conf
│   │   ├── ASST1
│   │   ├── ASST2
│   │   ├── ASST3-CLOCK
│   │   ├── ASST3-FIFO
│   │   ├── config
│   │   ├── conf.kern
│   │   └── newvers.sh
│   ├── dev
│   │   ├── generic
│   │   │   ├── beep.c
│   │   │   ├── beep.h
│   │   │   ├── console.c
│   │   │   ├── console.h
│   │   │   ├── random.c
│   │   │   ├── random.h
│   │   │   ├── rtclock.c
│   │   │   └── rtclock.h
│   │   └── lamebus
│   │   ├── beep_ltimer.c
│   │   ├── conf.lamebus
│   │   ├── con_lscreen.c
│   │   ├── con_lser.c
│   │   ├── emu_att.c
│   │   ├── emu.c
│   │   ├── emu.h
│   │   ├── lamebus.c
│   │   ├── lamebus.h
│   │   ├── lhd_att.c
│   │   ├── lhd.c
│   │   ├── lhd.h
│   │   ├── lnet_att.c
│   │   ├── lnet.c
│   │   ├── lrandom_att.c
│   │   ├── lrandom.c
│   │   ├── lrandom.h
│   │   ├── lscreen_att.c
│   │   ├── lscreen.c
│   │   ├── lscreen.h
│   │   ├── lser_att.c
│   │   ├── lser.c
│   │   ├── lser.h
│   │   ├── ltimer_att.c
│   │   ├── ltimer.c
│   │   ├── ltimer.h
│   │   ├── ltrace_att.c
│   │   ├── ltrace.c
│   │   ├── ltrace.h
│   │   ├── random_lrandom.c
│   │   └── rtclock_ltimer.c
│   ├── fs
│   │   └── sfs
│   │   ├── sfs_fsops.c
│   │   ├── sfs_io.c
│   │   └── sfs_vnops.c
│   ├── include
│   │   ├── addrspace.h
│   │   ├── array.h
│   │   ├── bitmap.h
│   │   ├── cdefs.h
│   │   ├── clock.h
│   │   ├── copyinout.h
│   │   ├── cpu.h
│   │   ├── current.h
│   │   ├── device.h
│   │   ├── elf.h
│   │   ├── emufs.h
│   │   ├── endian.h
│   │   ├── fs.h
│   │   ├── kern
│   │   │   ├── endian.h
│   │   │   ├── errmsg.h
│   │   │   ├── errno.h
│   │   │   ├── fcntl.h
│   │   │   ├── ioctl.h
│   │   │   ├── iovec.h
│   │   │   ├── limits.h
│   │   │   ├── reboot.h
│   │   │   ├── resource.h
│   │   │   ├── seek.h
│   │   │   ├── sfs.h
│   │   │   ├── signal.h
│   │   │   ├── socket.h
│   │   │   ├── stat.h
│   │   │   ├── stattypes.h
│   │   │   ├── syscall.h
│   │   │   ├── time.h
│   │   │   ├── types.h
│   │   │   ├── unistd.h
│   │   │   └── wait.h
│   │   ├── lib.h
│   │   ├── limits.h
│   │   ├── mainbus.h
│   │   ├── pid.h
│   │   ├── setjmp.h
│   │   ├── sfs.h
│   │   ├── signal.h
│   │   ├── spinlock.h
│   │   ├── spl.h
│   │   ├── stat.h
│   │   ├── stdarg.h
│   │   ├── synch.h
│   │   ├── syscall.h
│   │   ├── test.h
│   │   ├── thread.h
│   │   ├── threadlist.h
│   │   ├── threadprivate.h
│   │   ├── types.h
│   │   ├── uio.h
│   │   ├── version.h
│   │   ├── vfs.h
│   │   ├── vm.h
│   │   ├── vmprivate.h
│   │   ├── vnode.h
│   │   └── wchan.h
│   ├── lib
│   │   ├── array.c
│   │   ├── bitmap.c
│   │   ├── bswap.c
│   │   ├── kgets.c
│   │   ├── kprintf.c
│   │   ├── misc.c
│   │   └── uio.c
│   ├── Makefile
│   ├── startup
│   │   ├── main.c
│   │   ├── menu.c
│   │   └── OUT
│   ├── synchprobs
│   │   └── whalemating.c
│   ├── syscall
│   │   ├── file_syscalls.c
│   │   ├── loadelf.c
│   │   ├── proc_syscalls.c
│   │   ├── runprogram.c
│   │   └── time_syscalls.c
│   ├── test
│   │   ├── arraytest.c
│   │   ├── bitmaptest.c
│   │   ├── coremaptest.c
│   │   ├── fstest.c
│   │   ├── malloctest.c
│   │   ├── nettest.c
│   │   ├── synchtest.c
│   │   ├── threadtest.c
│   │   ├── tt3.c
│   │   └── waittest.c
│   ├── thread
│   │   ├── clock.c
│   │   ├── pid.c
│   │   ├── spinlock.c
│   │   ├── spl.c
│   │   ├── synch.c
│   │   ├── thread.c
│   │   └── threadlist.c
│   ├── vfs
│   │   ├── device.c
│   │   ├── devnull.c
│   │   ├── vfscwd.c
│   │   ├── vfslist.c
│   │   ├── vfslookup.c
│   │   ├── vfspath.c
│   │   └── vnode.c
│   └── vm
│   ├── addrspace.c
│   ├── copyinout.c
│   ├── kmalloc.c
│   ├── lpage.c
│   ├── swap.c
│   └── vmobj.c
├── Makefile
├── man
│   ├── bin
│   │   ├── cat.html
│   │   ├── cp.html
│   │   ├── false.html
│   │   ├── index.html
│   │   ├── ln.html
│   │   ├── ls.html
│   │   ├── Makefile
│   │   ├── mkdir.html
│   │   ├── mv.html
│   │   ├── pwd.html
│   │   ├── rmdir.html
│   │   ├── rm.html
│   │   ├── sh.html
│   │   ├── sync.html
│   │   └── true.html
│   ├── dev
│   │   ├── beep.html
│   │   ├── console.html
│   │   ├── emu.html
│   │   ├── index.html
│   │   ├── lamebus.html
│   │   ├── lhd.html
│   │   ├── lnet.html
│   │   ├── lrandom.html
│   │   ├── lscreen.html
│   │   ├── lser.html
│   │   ├── ltimer.html
│   │   ├── Makefile
│   │   ├── null.html
│   │   ├── random.html
│   │   └── rtclock.html
│   ├── libc
│   │   ├── abort.html
│   │   ├── assert.html
│   │   ├── atoi.html
│   │   ├── bzero.html
│   │   ├── calloc.html
│   │   ├── err.html
│   │   ├── exit.html
│   │   ├── free.html
│   │   ├── getchar.html
│   │   ├── getcwd.html
│   │   ├── index.html
│   │   ├── Makefile
│   │   ├── malloc.html
│   │   ├── memcpy.html
│   │   ├── memmove.html
│   │   ├── memset.html
│   │   ├── printf.html
│   │   ├── putchar.html
│   │   ├── puts.html
│   │   ├── random.html
│   │   ├── realloc.html
│   │   ├── setjmp.html
│   │   ├── snprintf.html
│   │   ├── stdarg.html
│   │   ├── strcat.html
│   │   ├── strchr.html
│   │   ├── strcmp.html
│   │   ├── strcpy.html
│   │   ├── strerror.html
│   │   ├── strlen.html
│   │   ├── strrchr.html
│   │   ├── strtok.html
│   │   ├── strtok_r.html
│   │   ├── system.html
│   │   ├── time.html
│   │   ├── __vprintf.html
│   │   └── warn.html
│   ├── Makefile
│   ├── misc
│   │   ├── index.html
│   │   └── Makefile
│   ├── sbin
│   │   ├── dumpsfs.html
│   │   ├── halt.html
│   │   ├── index.html
│   │   ├── Makefile
│   │   ├── mksfs.html
│   │   ├── poweroff.html
│   │   └── reboot.html
│   ├── syscall
│   │   ├── chdir.html
│   │   ├── close.html
│   │   ├── dup2.html
│   │   ├── errno.html
│   │   ├── execv.html
│   │   ├── _exit.html
│   │   ├── fork.html
│   │   ├── fstat.html
│   │   ├── fsync.html
│   │   ├── ftruncate.html
│   │   ├── __getcwd.html
│   │   ├── getdirentry.html
│   │   ├── getpid.html
│   │   ├── index.html
│   │   ├── ioctl.html
│   │   ├── link.html
│   │   ├── lseek.html
│   │   ├── lstat.html
│   │   ├── Makefile
│   │   ├── mkdir.html
│   │   ├── open.html
│   │   ├── pipe.html
│   │   ├── read.html
│   │   ├── readlink.html
│   │   ├── reboot.html
│   │   ├── remove.html
│   │   ├── rename.html
│   │   ├── rmdir.html
│   │   ├── sbrk.html
│   │   ├── stat.html
│   │   ├── symlink.html
│   │   ├── sync.html
│   │   ├── __time.html
│   │   ├── waitpid.html
│   │   └── write.html
│   ├── testbin
│   │   ├── add.html
│   │   ├── argtest.html
│   │   ├── badcall.html
│   │   ├── bigfile.html
│   │   ├── conman.html
│   │   ├── crash.html
│   │   ├── ctest.html
│   │   ├── dirseek.html
│   │   ├── dirtest.html
│   │   ├── farm.html
│   │   ├── faulter.html
│   │   ├── filetest.html
│   │   ├── forkbomb.html
│   │   ├── forktest.html
│   │   ├── f_test.html
│   │   ├── guzzle.html
│   │   ├── hash.html
│   │   ├── hog.html
│   │   ├── huge.html
│   │   ├── index.html
│   │   ├── kitchen.html
│   │   ├── Makefile
│   │   ├── malloctest.html
│   │   ├── matmult.html
│   │   ├── palin.html
│   │   ├── randcall.html
│   │   ├── rmdirtest.html
│   │   ├── rmtest.html
│   │   ├── sink.html
│   │   ├── sort.html
│   │   ├── sty.html
│   │   ├── tail.html
│   │   ├── tictac.html
│   │   ├── triplehuge.html
│   │   ├── triplemat.html
│   │   ├── triplesort.html
│   │   └── userthreads.html
│   └── toplevel
│   ├── index.html
│   └── Makefile
├── mk
│   ├── installheaders.sh
│   ├── os161.baserules.mk
│   ├── os161.compile.mk
│   ├── os161.config-mips.mk
│   ├── os161.config.mk
│   ├── os161.hostcompile.mk
│   ├── os161.hostlib.mk
│   ├── os161.hostprog.mk
│   ├── os161.includes.mk
│   ├── os161.kernel.mk
│   ├── os161.lib.mk
│   ├── os161.man.mk
│   ├── os161.mkdirs.mk
│   ├── os161.prog.mk
│   └── os161.subdir.mk
├── sys161.conf
└── user
├── bin
│   ├── cat
│   │   ├── cat.c
│   │   └── Makefile
│   ├── cp
│   │   ├── cp.c
│   │   └── Makefile
│   ├── false
│   │   ├── false.c
│   │   └── Makefile
│   ├── ln
│   │   ├── ln.c
│   │   └── Makefile
│   ├── ls
│   │   ├── ls.c
│   │   └── Makefile
│   ├── Makefile
│   ├── mkdir
│   │   ├── Makefile
│   │   └── mkdir.c
│   ├── mv
│   │   ├── Makefile
│   │   └── mv.c
│   ├── pwd
│   │   ├── Makefile
│   │   └── pwd.c
│   ├── rm
│   │   ├── Makefile
│   │   └── rm.c
│   ├── rmdir
│   │   ├── Makefile
│   │   └── rmdir.c
│   ├── sh
│   │   ├── Makefile
│   │   └── sh.c
│   ├── sync
│   │   ├── Makefile
│   │   └── sync.c
│   └── true
│   ├── Makefile
│   └── true.c
├── include
│   ├── assert.h
│   ├── err.h
│   ├── errno.h
│   ├── fcntl.h
│   ├── limits.h
│   ├── setjmp.h
│   ├── signal.h
│   ├── stdarg.h
│   ├── stdint.h
│   ├── stdio.h
│   ├── stdlib.h
│   ├── string.h
│   ├── sys
│   │   ├── endian.h
│   │   ├── ioctl.h
│   │   ├── null.h
│   │   ├── reboot.h
│   │   ├── stat.h
│   │   ├── types.h
│   │   └── wait.h
│   ├── time.h
│   ├── types
│   │   └── size_t.h
│   └── unistd.h
├── lib
│   ├── crt0
│   │   ├── Makefile
│   │   └── mips
│   │   └── crt0.S
│   ├── hostcompat
│   │   ├── err.c
│   │   ├── hostcompat.c
│   │   ├── hostcompat.h
│   │   ├── host-err.h
│   │   ├── Makefile
│   │   └── time.c
│   ├── libc
│   │   ├── arch
│   │   │   └── mips
│   │   │   └── syscalls-mips.S
│   │   ├── Makefile
│   │   ├── stdio
│   │   │   ├── getchar.c
│   │   │   ├── printf.c
│   │   │   ├── putchar.c
│   │   │   ├── __puts.c
│   │   │   └── puts.c
│   │   ├── stdlib
│   │   │   ├── abort.c
│   │   │   ├── exit.c
│   │   │   ├── malloc.c
│   │   │   ├── random.c
│   │   │   └── system.c
│   │   ├── string
│   │   │   ├── memcmp.c
│   │   │   ├── memset.c
│   │   │   ├── strerror.c
│   │   │   └── strtok.c
│   │   ├── syscalls
│   │   │   └── gensyscalls.sh
│   │   ├── time
│   │   │   └── time.c
│   │   └── unix
│   │   ├── __assert.c
│   │   ├── err.c
│   │   ├── errno.c
│   │   └── getcwd.c
│   └── Makefile
├── Makefile
├── sbin
│   ├── dumpsfs
│   │   ├── dumpsfs.c
│   │   └── Makefile
│   ├── halt
│   │   ├── halt.c
│   │   └── Makefile
│   ├── Makefile
│   ├── mksfs
│   │   ├── disk.c
│   │   ├── disk.h
│   │   ├── Makefile
│   │   ├── mksfs.c
│   │   ├── support.c
│   │   └── support.h
│   ├── poweroff
│   │   ├── Makefile
│   │   └── poweroff.c
│   ├── reboot
│   │   ├── Makefile
│   │   └── reboot.c
│   └── sfsck
│   ├── Makefile
│   └── sfsck.c
└── testbin
├── add
│   ├── add.c
│   └── Makefile
├── argtest
│   ├── argtest.c
│   └── Makefile
├── badcall
│   ├── bad_chdir.c
│   ├── bad_close.c
│   ├── bad_dup2.c
│   ├── bad_execv.c
│   ├── bad_fsync.c
│   ├── bad_ftruncate.c
│   ├── bad_getcwd.c
│   ├── bad_getdirentry.c
│   ├── bad_ioctl.c
│   ├── bad_link.c
│   ├── bad_lseek.c
│   ├── bad_mkdir.c
│   ├── bad_open.c
│   ├── bad_pipe.c
│   ├── bad_read.c
│   ├── bad_readlink.c
│   ├── bad_reboot.c
│   ├── bad_remove.c
│   ├── bad_rename.c
│   ├── bad_rmdir.c
│   ├── bad_sbrk.c
│   ├── bad_stat.c
│   ├── bad_symlink.c
│   ├── bad_time.c
│   ├── bad_waitpid.c
│   ├── bad_write.c
│   ├── common_buf.c
│   ├── common_fds.c
│   ├── common_path.c
│   ├── config.h
│   ├── driver.c
│   ├── Makefile
│   └── test.h
├── bigexec
│   ├── bigexec.c
│   └── Makefile
├── bigfile
│   ├── bigfile.c
│   └── Makefile
├── conman
│   ├── conman.c
│   └── Makefile
├── crash
│   ├── crash.c
│   └── Makefile
├── ctest
│   ├── ctest.c
│   └── Makefile
├── dirconc
│   ├── dirconc.c
│   └── Makefile
├── dirseek
│   ├── dirseek.c
│   └── Makefile
├── dirtest
│   ├── dirtest.c
│   └── Makefile
├── exittest
│   ├── exittest.c
│   └── Makefile
├── farm
│   ├── farm.c
│   └── Makefile
├── faulter
│   ├── faulter.c
│   └── Makefile
├── filetest
│   ├── filetest.c
│   └── Makefile
├── forkbomb
│   ├── forkbomb.c
│   └── Makefile
├── forktest
│   ├── forktest.c
│   └── Makefile
├── f_test
│   ├── f_hdr.h
│   ├── f_read.c
│   ├── f_test.c
│   ├── f_write.c
│   └── Makefile
├── guzzle
│   ├── guzzle.c
│   └── Makefile
├── hash
│   ├── hash.c
│   └── Makefile
├── hog
│   ├── hog.c
│   └── Makefile
├── huge
│   ├── huge.c
│   └── Makefile
├── kitchen
│   ├── kitchen.c
│   └── Makefile
├── Makefile
├── malloctest
│   ├── Makefile
│   └── malloctest.c
├── matmult
│   ├── Makefile
│   ├── matmult.c
│   └── matmult-orig.c
├── palin
│   ├── Makefile
│   └── palin.c
├── parallelvm
│   ├── Makefile
│   └── parallelvm.c
├── printchartest
│   ├── Makefile
│   └── printchartest.c
├── psort
│   ├── Makefile
│   └── psort.c
├── randcall
│   ├── callspecs.txt
│   ├── extern.h
│   ├── gencalls.sh
│   ├── main.c
│   └── Makefile
├── rmdirtest
│   ├── Makefile
│   └── rmdirtest.c
├── rmtest
│   ├── Makefile
│   └── rmtest.c
├── sink
│   ├── Makefile
│   └── sink.c
├── sort
│   ├── Makefile
│   └── sort.c
├── sty
│   ├── Makefile
│   └── sty.c
├── tail
│   ├── Makefile
│   └── tail.c
├── tictac
│   ├── Makefile
│   └── tictac.c
├── triplehuge
│   ├── Makefile
│   ├── triple.c
│   ├── triple.h
│   └── triplehuge.c
├── triplemat
│   ├── Makefile
│   ├── triple.c
│   ├── triple.h
│   └── triplemat.c
├── triplesort
│   ├── Makefile
│   ├── triple.c
│   ├── triple.h
│   └── triplesort.c
└── userthreads
├── Makefile
└── userthreads.c

137 directories, 625 files

标签:

实例下载地址

OS161 ASST1-3 Solution.rar

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警