狠狠综合久久久久综合网址-a毛片网站-欧美啊v在线观看-中文字幕久久熟女人妻av免费-无码av一区二区三区不卡-亚洲综合av色婷婷五月蜜臀-夜夜操天天摸-a级在线免费观看-三上悠亚91-国产丰满乱子伦无码专区-视频一区中文字幕-黑人大战欲求不满人妻-精品亚洲国产成人蜜臀av-男人你懂得-97超碰人人爽-五月丁香六月综合缴情在线

CSC3150代寫、Java/C++程序語言代做

時間:2024-04-04  來源:  作者: 我要糾錯



CSC3150-Instruction-A3
Introduction
This assignment uses xv6, a simple and Unix-like teaching operating system, as the platform to
guide you in implementing the mmap and munmp system calls. These two are used to share
memory among processes and to map files into process address spaces. Generally speaking,
this assignment focuses on memory-mapped files. A mechanism supporting memory-mapped
files can handle files as if they are a portion of the program's memory. This is achieved by
mapping a file to a segment of the virtual memory space (Reminder: Each process has its own
virtual address space). Such mapping between a file and memory space is achieved using the
'mmap()' system call, and the mapping is removed using the ' munmap() ' system call. We
provide a virtual machine image where everything is configured and set. The image is available
on Blackboard.
Submission
• Due on: 23:59, April 9, 2024
• Plagiarism is strictly forbidden. Please note that TAs may ask you to explain the meaning of
your program to ensure that the codes are indeed written by yourself. Please also note that
we would check whether your program is too similar to your fellow students' code and
solutions available on the internet using plagiarism detectors.
• Late submission: A late submission within 15 minutes will not induce any penalty on your
grades. After that, every additional day your submission is late will reduce your score by
10%. (e.g., Xiao Yu submitted a perfect attempt of Assignment 3 on April 11, 2024. She will get
100 * (1-0.2) = 80 points for her Assignment 3.
• You should submit a zip file to the Blackboard. The zip file structure is as follows.
Format guide
The project structure is illustrated below. You can also use ls command to check if your
structure is fine. Structure mismatch would cause grade deduction.
For this assignment, you don't need a specific folder for the extra credit part. The source folder
should contain four files: proc.c, proc.h, sysfile.c, trap.c
main@ubuntu:~/Desktop/Assignment_3_120010001$ ls
Report.pdf source/
1
2
(One directory and one pdf.)
3
4
main@ubuntu:~/Desktop/Assignment_3_120010001/source$ ls
proc.c proc.h sysfile.c trap.c
(three .c files and one .h file)
1
2
3
4
Please compress all files in the file structure root folder into a single zip file and name it using
your student ID as the code shown below and above, for example,
Assignment_3_120010001.zip. The report should be submitted in the format of pdf, together
with your source code. Format mismatch would cause grade deduction. Here is the sample step
for compressing your code.
main@ubuntu:~/Desktop$
zip -q -r Assignment_3_120010001.zip Assignment_3_120010001
main@ubuntu:~/Desktop$ ls
Assignment_3_120010001 Assignment_3_120010001.zip
1
2
3
4
5
Tips on interactions between host and virtual machine
Here are some useful tips for you to interact between the host machine and the virtual machine.
If you are familiar with it and "Format guide", you can ignore this section.
In the terminal, you should not include "<" and ">". Here, they are just to present a custom string
variable.
1. Copy the assignment folder to your virtual machine. You can copy the folder in the
VSCode or use the scp command below.
In the host machine:
cd <your_host_path_to_project_zip>
scp -P 2200 ./csc3150-project3.zip csc3150@127.0.0.1:~
1
2
If you have spaces in the path, use the double quote to include your path, e.g. cd "your
host path" .
2. Unzip the assignment folder in your virtual machine.
In the virtual machine:
unzip ~/csc3150-project3.zip ~/
chmod -R +x ~/csc3150-project3
1
2
Then, you can browse the assignment folder.
After finishing the project, you should wrap your file following the format instructions. We
prepare a script for you to generate the submission zip. This optional script is just for your
convenience to wrap the files. You can wrap your file in your own way, only ensuring that you
follow the format.
3. Suppose that you have already copied your Report.pdf to the virtual machine (like the
way you copy the assignment zip from the host machine to the virtual machine).
In the virtual machine:
cd ~/csc3150-project3
bash gen_submission.sh
1
2
gen_submission.sh script will ask for your student id and path of your Report.pdf .
Then you can find your submission folder under ~/csc3150
project3/submission/Assignment_3_<your_student_id>.zip
4. You can use the following command to copy the submission zip to your host machine.
In the host machine:
scp -P 2200 csc3150@127.0.0.1:~/csc3150-
project3/submission/Assignment_3_<your_student_id>.zip
<your_host_machine_folder_path>
1
Then you will get the submission zip in your_host_machine_folder_path . Don't forget
to submit your zip file to the BlackBoard.
Instruction Guideline
We limit your implementation within proc.c, proc.h, sysfile.c, trap.c four files, where there are
some missing code sections starting with "TODO" comments. The entry (where you may start
learning) of the test program is the main function in mmaptest.c under the 'csc3150-
project3/user' directory.
Sections with (*) are introduction sections. These sections introduce tools and functions that will
help you understand what this system is about and how the system works with these
components. You might need to use some of the functions when implementing the TODO parts.
You are ONLY allowed to modify the TODO parts in these four files! And we will grade your
project ONLY based on the implementation of the TODO parts. Any other modification will be
considered invalid.
1. For the introduction sections, please figure out how functions work and how to use them.
2. Be sure you have a basic idea of the content before starting your assignment. We believe that
those would be enough for handling this assignment.
3. (optional) For students who are interested in the xv6 system and want to learn more about it,
you are welcome to read "xv6-book" to get more details.
a. https://pdos.csail.mit.edu/6.828/2022/xv6/book-riscv-rev3.pdf
Sections without (*) are TODO sections. In these sections, the logic of how this component/
function should work is listed in detail. You should implement functions in the given places.
1. However, no sample code will be shown here. You need to figure out the implementation
based on the logic and APIs provided in the introduction sections.
Arguments fetching*
<xv6-book> chapter 4.3
void argint(int, int*);
int argstr(int, char*, int);
void argaddr(int, uint64 *);
int argfd(int n, int *pfd, struct file **pf);
1
2
3
4
The kernel functions argint , argaddr , and argfd retrieve the nth system call argument
from the trap frame as an integer, pointer, or file descriptor. They all call argraw to retrieve
the appropriate saved user register (kernel/syscall.c:34).
Proc*
// Defined in proc.h
struct proc {
struct spinlock lock;
1
2
3
// p->lock must be held when using these:
enum procstate state; // Process state
void *chan; // If non-zero, sleeping on chan
int killed; // If non-zero, have been killed
int xstate; // Exit status to be returned to parent's wait
int pid; // Process ID
// wait_lock must be held when using this:
struct proc *parent; // Parent process
// these are private to the process, so p->lock need not be held.
uint64 kstack; // Virtual address of kernel stack
uint64 sz; // Size of process memory (bytes)
pagetable_t pagetable; // User page table
struct trapframe *trapframe; // data page for trampoline.S
struct context context; // swtch() here to run process
struct file *ofile[NOFILE]; // Open files
struct inode *cwd; // Current directory
char name[16]; // Process name (debugging)
struct VMA vma[VMASIZE]; // virtual mem area
};
// Defined in proc.c
// Return the current struct proc *, or zero if none.
struct proc* myproc(void)
#define PTE_W (1L << 2)
#define PTE_X (1L << 3)
#define PTE_U (1L << 4) // user can access
// one beyond the highest possible virtual address.
// MAXVA is actually one bit less than the max allowed by
// Sv39, to avoid having to sign-extend virtual addresses
// that have the high bit set.
#define MAXVA (1L << (9 + 9 + 9 + 12 - 1))

Prots & Flags*
// Defined in fcntl.h
#define PROT_NONE 0x0
#define PROT_READ 0x1
#define PROT_WRITE 0x2
#define PROT_EXEC 0x4
#define MAP_SHARED 0x01
#define MAP_PRIVATE 0x02

(TODO) Traps
// trap.c
void usertrap(void)
{
...
/// TODO: manage pagefault
else if(r_scause() == 13 || r_scause() == 15){
...
}
...
}
// Supervisor Trap Cause
static inline uint64
r_scause()
{
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
uint64 x;
asm volatile("csrr %0, scause" : "=r" (x) );
return x;
}
// Supervisor Trap Value
static inline uint64
r_stval()
{
uint64 x;
asm volatile("csrr %0, stval" : "=r" (x) );
return x;
}
16
17
18
19
20
21
22
23
24
25
26
27
28
Usertrap handles an interrupt, exception, or system call from user space. It calls r_scause()
to get the exception code. In this assignment, you are asked to handle the PageFault exception.
Hint:
• r_stval() provides trap value. (i.e. the address causing the exception)
• The swapping mechanism is not supported in the xv6 system. If the physical memory is filled,
you are expected to kill the process. (You shall learn to use kalloc() and setkilled() functions)
• If there is spare space in physical memory, map one page of the file with the corresponding
vma. (mapfile() and mappages())
// file.c
// read a page of file to address mem
// The off parameter in the mapfile and readi represents the offset
// from the start of the file where the read operation should begin.
void mapfile(struct file * f, char * mem, int offset){
// printf("off %dn", offset);
ilock(f->ip);
readi(f->ip, 0, (uint64) mem, offset, PGSIZE);
iunlock(f->ip);
}
// vm.c
// Create PTEs for virtual addresses starting at va that refer to
// physical addresses starting at pa. va and size might not
// be page-aligned. Returns 0 on success, -1 if walk() couldn't
// allocate a needed page-table page.
int mappages(pagetable_t pagetable, uint64 va, uint64 size, uint64 pa, int
perm)
{
uint64 a, last;
pte_t *pte;
if(size == 0)
panic("mappages: size");
a = PGROUNDDOWN(va);
last = PGROUNDDOWN(va + size - 1);
for(;;){
if((pte = walk(pagetable, a, 1)) == 0)
return -1;
if(*pte & PTE_V)
panic("mappages: remap");
*pte = PA2PTE(pa) | perm | PTE_V;
if(a == last)
break;
a += PGSIZE;
pa += PGSIZE;
}
return 0;
}
Struct "file" "inode" is presented for your information.
filewrite() will be invoked to write back when the memory map is over. i.e. Calling
munmap or Calling exit of process. Similarly to fileclose() .
filedup() will be invoked when there is an increment of accessing file. ( mmap() , fork() )
// Defined in fs.c
// Read data from inode.
// Caller must hold ip->lock.
// If user_dst==1, then dst is a user virtual address;
// otherwise, dst is a kernel address.
int readi(struct inode *ip, int user_dst, uint64 dst, uint off, uint n);
// Write data to inode.
// Caller must hold ip->lock.
// If user_src==1, then src is a user virtual address;
// otherwise, src is a kernel address.
// Returns the number of bytes successfully written.
// If the return value is less than the requested n,
// there was an error of some kind.
int writei(struct inode *ip, int user_src, uint64 src, uint off, uint n);
// Lock the given inode.
// Reads the inode from disk if necessary.
void ilock(struct inode *ip);
// Unlock the given inode.
void iunlock(struct inode *ip);

Function that you need to use when handling page fault, pay attention to how readi() works
and figure out the parameter you should send to readi() .
If you have no idea what readi() is doing, think about read() or memcpy(), which deal with
pointers and address.
Similarly as writei()
ilock() and iunlock() are locks of inode, which are used to ensure consistency of the memory.
Hint
You may take a look at sys_open() to know how inode, file, and locks work.
(TODO) VMA Struct
1 // we already define size of VMA array for you
#define VMASIZE 16
// TODO: complete struct of VMA
struct VMA {
};
2
3
4
5
6
Explanation
The VMA (Virtual Memory Area) struct is used to manage and track the memory regions that are
mapped into the address space of a process. Each VMA represents a contiguous region of virtual
memory that has the same permissions and is backed by the same kind of object. The
operating system needs to keep track of these mappings, including where they start, how large
they are, what permissions they have, and what file or device they're associated with. This is
what the vma struct is used for.
Implementation
• Keep track of what mmap has mapped for each process.
• Define a structure corresponding to the VMA (virtual memory area), recording the address,
length, permissions, file, etc. for a virtual memory range created by mmap.
• Since the xv6 kernel doesn't have a memory allocator in the kernel, it's OK to declare a fixedsize array of VMAs and allocate from that array as needed. A size of 16 should be sufficient. (I
already define VMASIZE for you)
Hint
Take a look at what parameter will be sent into mmap().
The VMA should contain a pointer to a struct file for the file being mapped;
If you would like to use more variables in VMA for further implementation, feel free to use them.
There is not only one correct answer.
(TODO) mmap()
// Defined in user.h
void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t
offset);
// TODO: kernel mmap executed in sysfile.c
uint64
sys_mmap(void)
{
1
2
3
4
5
6
7
8 }
• Arguments explanation: In the mmaptest.c, we call 'char *p = mmap(0, PGSIZE*2,
PROT_READ, MAP_PRIVATE, fd, 0);'. This call asks the kernel to map the content of file 'fd'
into the address space. The first '0' argument indicates that the kernel should choose the
virtual address (In this homework, you can assume that 'addr' will always be zero). The
second argument 'length' indicates how many bytes to map. The third argument
'PROT_READ' indicates that the mapped memory should be read-only, i.e., modification is
not allowed. The fourth argument 'MAP_PRIVATE' indicates that if the process modifies the
mapped memory, the modification should not be written back to the file nor shared with
other processes mapping the same file (of course, due to PROT_READ, updates are
prohibited in this case). The fifth argument is the file description of the file to be mapped.
The last argument 'offset' is the starting offset in the file. The return value indicates whether
mmap succeeds or not.
• sys_xxx() function is the kernel's implementation of the xxx() system call. In the xv6 operating
system, system calls are prefixed with sys_ to distinguish them from other functions and to
indicate that they are system calls. The kernel functions argint , argaddr , and argfd
retrieve the n ’th system call argument from the trap frame as an integer, pointer, or a file
descriptor. See the Arguments fetching section.
• Implementation of mmap: Find an unused region in the process's address space in which to
map the file, and add a VMA to the process's table of mapped regions. The VMA should
contain a pointer to a struct file for the file being mapped; mmap should increase the file's
reference count so that the structure doesn't disappear when the file is closed (hint: see
filedup).
• Run mmaptest after mmap() implemented: the first mmap should succeed, but the first
access to the mmap-ed memory will cause a page fault and kill mmaptest.
◦ Before mmap() implemented
◦ Page fault occurs after mmap() implemented (work correctly)
Sample of page fault
Progress Chart
(TODO) PageFault Handle
<xv6-book> chapter 4.5, 4.6
• Add code to cause a page-fault in a mmap-ed region to allocate a page of physical memory.
• Find corresponding valid vma by fault address.
• Read 4096 bytes of the relevant file onto that page, and map it into the user address space.
• Read the file with readi, which takes an offset argument at which to read in the file (but you
will have to lock/unlock the inode passed to readi).
• Set the permissions correctly on the page. Run mmaptest; it should get to the first munmap.
• See Section Trap
(TODO) munmap()
• Implement munmap:
◦ find the VMA for the address range and unmap the specified pages (hint: use uvmunmap).
◦ If munmap removes all pages of a previous mmap, it should decrease the reference count
of the corresponding struct file.
◦ If an unmapped page has been modified and the file is mapped MAP_SHARED, write the
page back to the file. Look at filewrite for inspiration.
◦ Ideally your implementation would only write back MAP_SHARED pages that the program
actually modified. The dirty bit (D) in the RISC-V PTE indicates whether a page has been
written. However, mmaptest does not check that non-dirty pages are not written back;
thus, you can get away with writing pages back without looking at D bits.
// TODO: complete munmap()
uint64
sys_munmap(void)
{
}
//defined in vm.c
void uvmunmap(pagetable_t pagetable, uint64 va, uint64 npages, int do_free);
1
2
3
4
5
6
7
8
(TODO) Page Alignment
This is a reminder to raise your awareness that all the virtual addresses in your kernel
implementation should be page-aligned! It's very important to keep this rule in real
implementation. That is to say, wrap the addresses with PGROUNDUP or PGROUNDOWN under
different situations. You have to figure out which to use.
(EXTRA CREDITS) Fork Handle
• In your Assignment 1, you should already know that fork() creates a sub process with the
same info. Therefore, you should handle how mmap() works when fork() is invoked.
• Ensure that the child has the same mapped regions as the parent. Don't forget to increment
the reference count for a VMA's struct file. In the page fault handler of the child, it is OK to
allocate a new physical page instead of sharing a page with the parent. The latter would be
cooler, but it would require more implementation work.
Grading Rules
Program part 90' + extra credits
You can test the correctness of your code using the following commands under '~/csc3150-
project3' directory.
make qemu
mmaptest
1
2
'make qemu' turns on the xv6 system, and you will see your terminal starting with '$'. You can
execute 'ls' command to see the files including 'mmaptest'. 'mmaptest' command executes the
executable file mmaptest to test your programs. You are expected to have the following outputs
$ mmaptest
mmap_test starting
test mmap f
test mmap f: OK
test mmap private
test mmap private: OK
test mmap read-only
test mmap read-only: OK
test mmap read/write
test mmap read/write: OK
test mmap dirty
test mmap dirty: OK
test not-mapped unmap
1
2
3
4
5
6
7
8
9
10
11
12
13
test not-mapped unmap: OK
test mmap two files
test mmap two files: OK
test mmap offset
test mmap offset: OK
test mmap half page
test mmap half page: OK
mmap_test: ALL OK
fork_test starting
fork_test OK
mmaptest: all tests succeeded
14
15
16
17
18
19
20
21
22
23
24
mmap f 13p
mmap private 5p
mmap read-only 5p
mmap read/write 5p
mmap dirty 5p
mmap two files 5p
not-mapped unmap 12p
mmap offset 5p
mmap half page 15p
Compile Success 20p
fork_test (extra credit)
Report part 10'
You shall strictly follow the provided latex template for the report, where we have emphasized
important parts and respective grading details. Reports based on other templates will not be
graded.
LaTex Editor
For your convenience, you might use Overleaf, an online LaTex Editor.
1. Create a new blank project.
2. Click the following highlight bottom and upload the template we provide.
3. Click Recompile and you will see your report in PDF format.

請加QQ:99515681  郵箱:99515681@qq.com   WX:codinghelp













 

標簽:

掃一掃在手機打開當前頁
  • 上一篇:代寫CSC 330、代做C/C++編程語言
  • 下一篇:CS 211編程代做、代寫c/c++,Java程序
  • 無相關信息
    昆明生活資訊

    昆明圖文信息
    蝴蝶泉(4A)-大理旅游
    蝴蝶泉(4A)-大理旅游
    油炸竹蟲
    油炸竹蟲
    酸筍煮魚(雞)
    酸筍煮魚(雞)
    竹筒飯
    竹筒飯
    香茅草烤魚
    香茅草烤魚
    檸檬烤魚
    檸檬烤魚
    昆明西山國家級風景名勝區
    昆明西山國家級風景名勝區
    昆明旅游索道攻略
    昆明旅游索道攻略
  • NBA直播 短信驗證碼平臺 幣安官網下載 歐冠直播 WPS下載

    關于我們 | 打賞支持 | 廣告服務 | 聯系我們 | 網站地圖 | 免責聲明 | 幫助中心 | 友情鏈接 |

    Copyright © 2025 kmw.cc Inc. All Rights Reserved. 昆明網 版權所有
    ICP備06013414號-3 公安備 42010502001045

    主站蜘蛛池模板: 天天草夜夜草 | 国产99久久久| 国产精品视频一二三区 | 亚洲精品午夜国产va久久成人 | 成人免费区一区二区三区 | 久久夜色精品国产欧美乱极品 | 国产精品7区 | 日日躁夜夜躁狠狠躁 | 成人中文字幕在线观看 | 大奶久久| 奇米影视第四色888 www.黄色一片 | 狠狠干天天 | 男男毛片 | 东京av男人的天堂 | 九九热最新 | 国产伦精品一区二区三区视频我 | 天天插日日干 | 亚洲黄色大片 | 91亚洲精品一区二区乱码 | 黄色大毛片 | 久久久久久久艹 | 久久伊人精品 | 国产成人精品免费视频 | 樱空桃在线观看 | 九一网站在线观看 | 国产精品乱码久久久久久 | 黄色网页免费 | 久久久久女教师免费一区 | 久久精品综合 | 午夜av免费看 | 欧美成年人视频 | 亚洲欧美精品伊人久久 | 老色批网站 | 五月天激情综合网 | 日韩美一区二区三区 | 少妇高潮一69aⅹ | 中文字幕在线观看第二页 | 黄色日韩 | 97精品免费视频 | 成人免费在线观看 | 色婷婷狠狠 | 老色驴综合网 | 午夜av免费| www.色播| 日韩欧美一二三区 | 毛片网站免费观看 | 五月天欧美 | 秋霞国产 | 国产日韩精品视频 | 欧美成人一区二区三区四区 | 一区二区三区四区不卡 | 日韩av综合| 丰满少妇乱子伦精品看片 | 精品少妇视频 | 野花社区视频在线观看 | 琪琪色18| 麻豆一级片 | 成人动漫在线免费观看 | 欧美一级在线免费观看 | 在线有码视频 | 国产传媒在线 | www性 | 色哟哟国产精品色哟哟 | 日日夜夜综合 | 亚洲视频国产精品 | av一卡 | 欧美一性一交 | 理论片高清免费理论片毛毛片 | 精品在线免费视频 | 欧美激情性做爰免费视频 | 波多野结衣在线一区二区 | 深夜久久久 | 久久99久久99精品免视看婷婷 | 91久久综合| 性色av一区二区三区红粉影视 | 爱蜜臀av | 麻豆av免费| 亚洲精品一级片 | 日韩操操操 | 欧美性生活| 另类老妇性bbwbbw图片 | av片亚洲| 久久精品亚洲 | 日韩高清国产一区在线 | 亚洲激情在线播放 | 国产资源在线播放 | 亚洲123区 | 在线免费看黄视频 | 粉嫩av在线播放 | 刘亦菲久久免费一区二区 | 黄色茄子视频 | 国内精品视频在线观看 | 日韩在线欧美在线 | 91射| 射进来av影视网 | 一级全黄色片 | 国产精品xxx在线观看 | 青青在线 | 国产一级一片免费播放放a 在线观看成人 | 91国产精品一区 | 日批在线播放 | fc2成人免费人成在线观看播放 | 真人第一次毛片 | 亚洲黄色一区二区三区 | 伊人久久久 | 日韩精品视频免费播放 | 伊人久久99 | 欧美男人亚洲天堂 | 成年人免费黄色片 | 国产浪潮av | 亚洲区小说区图片区qvod | 免费观看毛片 | 玖玖在线资源 | 久久久av网站 | 国产激情免费 | 4438色| 在线观看免费黄色小视频 | 91视频国内| 在线播放国产一区二区三区 | 亚洲在线免费观看视频 | 日本中文字幕在线观看 | 欧美黄色短视频 | 污片网站在线观看 | 波多野结衣视频一区 | 日韩综合一区二区三区 | 久草五月 | 成人性生交大片免费看r链接 | 亚洲国产三区 | 精品久久久久久久 | 欧美性在线视频 | 欧美一级一区二区 | 国产精品不卡视频 | 在线观看黄av | 国产欧美久久久久久 | 国产视频1 | 国产成人精品一区二区三区视频 | 久久亚洲国产成人精品性色 | 亚洲蜜臀av国产aⅴ综合小说 | 一区二区三区四区欧美 | 日韩第九页 | 韩国美女毛片 | 日本在线成人 | 天天操夜操 | a资源在线 | 国产精品女教师久久二区二区 | 久久在线免费观看视频 | 超碰资源总站 | 日本妈妈3 | av一区免费在线观看 | 在线中文字日产幕 | 蜜臀久久99精品久久久 | 亚洲成人精品一区二区三区 | 亚洲女人在线 | com毛片| 国产另类精品 | 99精品在线播放 | 日本免费一二三区 | 国产在线高潮 | 99热91| 非洲黑寡妇性猛交视频 | 亚洲综合自拍偷拍 | 成人网免费视频m3u8 | 特级毛片网站 | 国语粗话呻吟对白对白 | 夜夜高潮夜夜爽国产伦精品 | 最新在线视频 | 亚洲天堂中文 | 日本中文字幕在线播放 | 国产精品5区 | 成人激情视频 | 尤物视频网站在线观看 | 色www国产亚洲阿娇 韩国中文字幕hd久久精品 | 91精品国产高清一区二区三区蜜臀 | 中文字幕亚洲无线码在线一区 | 男人猛进女人爽的大叫 | 伊人色在线 | 又紧又大又爽精品一区二区 | 特黄视频在线观看 | 99精品在线观看视频 | 伊人免费视频 | 久久精品蜜桃 | 粉嫩一区二区三区 | 亚洲六月丁香色婷婷综合久久 | 亚洲成av在线 | 国产精品视频自拍 | 国产成人h | 亚洲欧美激情在线 | 好吊妞视频一区二区三区 | 亚洲天堂高清 | 高清中文字幕 | 亚洲一区和二区 | 免费看一级 | 日韩毛片基地 | www.激情五月 | 一区二区三区四区影院 | 国产精品国产三级国产普通话蜜臀 | 欧美精品一区二区在线播放 | 亚洲女人奶水多 | www.五月婷婷.com| 黄色理论片 | 成人女同在线观看 | 欧美日韩亚洲在线观看 | 777奇米视频 | 少妇色| 亚洲欧美日韩一区二区 | 在线视频观看你懂得 | 伊人青青操 | 九九综合九九 | 中文字幕99| 香蕉av一区二区三区 | 一级黄色短片 | 悟空影视大全免费高清观看在线 | 亚洲v成人天堂影视 | 国产黄色片在线观看 | 毛片av免费看 | 中文字幕区 | 欧美午夜网站 | 欧美性猛交xxxx免费看久久久 | 97人人超 | 欧美精品一区二区在线播放 | 久久免费播放 | 成人在线播放视频 | 久久精品久久国产 | 2021国产精品视频 | 国产成人精品一区二 | 91精品一区 | 永久在线观看 | 在线www色| 亚洲 视频 一区 | 亚洲国产免费av | 欧美黄色大片视频 | 男女免费视频网站 | 日韩免费视频一区二区视频在线观看 | 色视频免费在线观看 | 激情高潮呻吟抽搐喷水 | 超碰在线人人艹 | 亚洲在线视频播放 | 国产精品一二 | 日韩激情网址 | 一区二区三区成人 | 91黄色免费视频 | 午夜精品福利一区二区 | 欧美精品一区二区三区视频 | 国产福利av在线 | 欧美视频在线观看 | a在线天堂 | 日韩免费成人 | 在线黄色大片 | av老司机在线观看 | 在线播放91灌醉迷j高跟美女 | 国内精品久久久久久久久 | 男人天堂a| 色狠狠一区二区三区香蕉 | 久久久久久片 | 澳门三级| 午夜亚州 | www网站在线免费观看 | 天天艹日日艹 | 亚洲911精品成人18网站 | 欧美a视频在线观看 | 国产做a视频 | 人人看人人插 | 成人资源在线观看 | 欧美大片在线看免费观看 | 色婷婷国产精品综合在线观看 | 日韩色网| 男女www视频 | 91亚洲国产成人久久精品网站 | 国产福利片在线 | 亚洲精品在线免费播放 | 国产精品人成 | 免费观看日韩av | 国产色图片| 特级毛片在线播放 | 日本色呦呦 | 一本大道香蕉在线播放 | 欧美精品黑人猛交高潮 | 一区二三区 | 久久天堂精品 | 国产三级一区二区三区 | 综合狠狠开心 | 自拍偷拍亚洲第一 | 快射视频网| 婷婷av一区二区三区 | 黄在线免费观看 | 好吊视频一区二区三区四区 | 亚洲一区二区三区网站 | 日韩综合在线观看 | 精品国产理论 | 中文在线免费视频 | 91爱国产 | 亚洲精品久久久久avwww潮水 | 香蕉视频一级 | 国产第五页 | 伊人91视频 | 男人天堂资源 | 四虎精品影视 | 日本污网站| 黄色视屏在线看 | 成人高清在线观看 | 国产精品伦一区二区三级视频 | 91嫩草入口 | 最新欧美日韩 | 成人精品免费在线观看 | 在线免费观看视频 | 国产免费成人 | a级在线观看视频 | 亚洲福利视频一区 | 久久在线免费观看视频 | 国产又粗又长又大视频 | 一区二区三区少妇 | 成人在线观看网 | 欧美成人一二三区 | 在线视频综合 | 影音先锋亚洲资源 | 亚洲成人一二区 | 成人啪啪网站 | av不卡免费在线观看 | 欧美精品自拍偷拍 | 亚洲人在线视频 | 国产精品久久久一区二区 | 成人在线a | 国产奶水涨喷在线播放 | av毛片网 | 成人综合久久 | 国产精品亚洲二区 | 综合色亚洲| 欧美成人综合一区 | 五月婷婷一区 | 亚洲国产成人在线 | 五月婷婷综合久久 | 综综综综合网 | 国产日韩av在线免费观看 | 成人在线免费视频 | www.猫咪av| 国产亚洲二区 | 色窝网| 国产色片| 亚洲 欧美 国产 制服 动漫 | 久久人人干 | 日韩激情一区二区三区 | 欧美精品久久久久a | 亚洲欧美日韩国产一区二区三区 | 精品国产69 | 久久靖品 | 91女人18毛片水多国产 | 九九热九九热 | 免费在线看黄的网站 | 欧美日韩有码 | 一级aaaa毛片 | 精品国产一区二区三区性色av | av在线操| а√在线中文网新版地址在线 | 国产人成 | 欧美日韩一区二区三区不卡视频 | 成人精品视频一区二区三区尤物 | 成人短视频在线 | 奇米91| 国产区第一页 | 久久精品丝袜高跟鞋 | 亚洲区小说区图片区qvod | a天堂资源在线 | 久久久久久久一区 | 中文字幕在线精品 | 亚洲午夜久久久久 | 精品国偷自产在线视频 | 两性视频久久 | 最新av在线 | 中文字幕精品在线 | 欧美精品第一页 | 69pao| 一级特黄在线观看 | 720url在线观看免费版 | 91精品国产乱码久久久 | 色婷在线| 波多野结衣中文字幕一区 | 毛片毛片毛片毛片毛片毛片毛片毛片 | 色av性av丰满av | 日韩av成人在线 | 国产又爽又黄又嫩又猛又粗 | 久久99精品久久久久久 | 香蕉久久a毛片 | 九九九九精品 | 亚洲国产综合久久 | 亚洲热久久 | 麻豆一区二区三区精品视频 | 黄色在线资源 | 成人免费看av | 久久亚洲综合 | 久久一区二区三区精品 | 四虎视频在线观看 | 综合伊人久久 | 自拍偷自拍亚洲精品播放 | 国产88av| 另类av在线 | 国产999在线观看 | 国产精品久久久久久久久夜色 | 蝌蚪av | 天天插天天爽 | 一级国产精品 | 久艹在线观看 | 色一情一乱一乱一区91av | 成人高潮片免费网站 | 少妇av一区 | 中文字幕在线亚洲 | 91大神网址| 天天精品 | 欧美图片自拍偷拍 | 成人免费看黄 | 国产精品国产精品国产专区不蜜 | 亚洲精品一线二线三线 | 亚洲av毛片成人精品 | 日韩成人免费在线 | 亚洲啪啪av | www黄色网址| 欧美在线 | 亚洲 | 日韩av一| 成人不卡在线 | 国产91在线高潮白浆在线观看 | 国产精品久久久久久久久久久久午夜 | 国产人人干 | 亚洲爱爱综合网 | 亚洲激情在线视频 | 99riav久久精品riav | 国产免费福利视频 | 国产伦精品一区二区三区高清版禁 | 狠狠干网| 欧美一页 | 国产福利小视频 | 在线观看一级片 | jzjzjzjzj亚洲成熟少妇 | 五月色综合 | 成av人片一区二区三区久久 | 69毛片 | 成人天堂资源www在线 | eeuss鲁一区二区三区 | 奇米精品一区二区三区四区 | 黄色片美女 | 精品孕妇一区二区三区 | 天天爽夜夜操 | 在线观看亚洲视频 | 91欧美激情一区二区三区成人 | 天天色天天色天天色 | 青青草狠狠干 | 亚洲国产精品国自产拍久久 | 国产性―交一乱―色―情人免费看 | 男人在线天堂 | 欧美三级网站在线观看 | 精品久久一区二区 | 一级特黄高清 | 色小姐com| xxxx国产视频 | 天天射天天操天天干 | 国产一区二区精品久久 | 日韩久久成人 | 99久久久久成人国产免费 | 国产污污视频 | 国产精品婷婷午夜在线观看 | av一区二区在线播放 | 日本免费一区视频 | 欧美在线免费观看视频 | 少妇又紧又色又爽又刺激 | 少妇激情偷人爽爽91嫩草 | 日韩毛片一区 | 亚洲免费av网址 | 五月天久久综合 | 国产精品a级 | 日本中文字幕在线视频 | 久久精品视频3 | 免费三片在线观看网站v888 | 四虎永久网站 | 国产午夜三级一区二区三 | 国产不卡av在线播放 | 99久久久久久久久 | 国模精品一区 | 狂野欧美性猛交xxxx | 可以直接看的毛片 | 国产一级免费av | av最新在线| 99精品免费视频 | 成人在线视频观看 | 五月婷婷激情五月 | 国产日韩欧美综合 | 2021国产精品 | 精品亚洲一区二区三区 | 亚洲剧情在线 | 欧美日韩三级在线观看 | 亚洲第一黄网 | 国产精品情侣 | 超91在线 | 少妇精品高潮欲妇又嫩中文字幕 | 国产精品久久久久久久久 | 这里只有精品视频 | 福利视频不卡 | 一区二区网站 | 五月天天| 操人视频网站 | 男女啪啪免费网站 | 国内精品久久久久 | 四虎黄色网| 草久久免费视频 | 成人在线免费观看视频 | 国产一页| 欧美日韩一区在线观看 | 亚洲天堂网在线观看视频 | 奇米视频在线 | 久久久久久69 | 亚洲女人av| 91视频免费在线观看 | 久久综合亚洲 | 黄色大片视频网站 | 狠狠插影院 | 国产小视频网址 | 天天搞夜夜 | 欧美香蕉在线 | 亚洲高清av在线 | 爱如潮水3免费观看日本高清 | 亚洲国产精品成人va在线观看 | 国产免费二区 | 国产又粗又猛又黄又爽的视频 | 精产国品一区二区三区 | 在线小视频国产 | 亚洲人成7777 | 亚洲精品视频免费观看 | 奇米综合网 | 麻豆爱爱视频 | 亚洲图片综合网 | 亚洲人成在线播放 | 欧美国产精品一二三 | 欧美激情精品久久久久久变态 | 日本色一区 | 69成人网 | 中文字幕在线观看av | 超碰在线人人干 | 亚洲精品久久久久久国产精华液 | 91av在线播放 | 在线香蕉视频 | 在线 丝袜 欧美 日韩 制服 | 久久综合av | 伊人免费在线观看高清版 | 色多多视频在线 | 久久久综合视频 | 亚洲图片偷拍区 | 嫩草影院久久 | 欧美另类色 | 色999视频 | 日韩一级大片 | 午夜黄视频 | 91麻豆精品国产自产在线观看一区 | 91久久一区 | 中文字幕第2页 | 成人高潮片免费视频 | 中文在线а天堂中文在线新版 | 啪啪网站视频 | 国产精品suv一区二区 | 在线视频欧美日韩 | 男女无遮挡免费视频 | 久草影视在线观看 | 人妖一级片 | 91视频在| 国产日韩在线播放 | 夜夜精品视频一区二区 | 亚洲欧美另类国产 | 青青草久久久 | 亚洲一区二区三区四区五区午夜 | 98国产精品视频 | 成人动漫在线观看 | sm久久捆绑调教精品一区 | 国产精品高潮呻吟久久久 | 亚洲影院在线观看 | 国产在线成人 | 天堂8在线 | 激情全身裸吻胸 | 毛片在线观看视频 | 亚洲作爱 | 国产欧美大片 | 国产理论精品 | 这里只有精品22 | 天堂中文字幕在线 | 国产成人宗合 | 一区二区免费高清视频 | 樱桃视频污污 | 你懂得在线 | 日韩成人精品视频 | 精品欧美在线 | 亚洲两性 | 理论片午夜 | 欧美日韩性生活视频 | 青青草小视频 | 黄色片在哪看 | 国产乱码精品1区2区3区 | 52av在线 | 成人在线视频一区二区 | 国产一区二区三区影院 | 91九色蝌蚪视频 | 亚洲动漫精品 | 亚洲高清毛片一区二区 | 91久久一区二区 | 伊人久久大香线 | 自拍偷在线精品自拍偷无码专区 | 人人草人人干 | 超碰2023 | 日日艹 | www.97cao.com | 色噜噜一区二区三区 | 黄色一及毛片 | 99国内精品久久久久久久 | 国产无人区码熟妇毛片多 | 亚洲综合色婷婷 | 欧美日韩免费一区二区三区 | 偷偷操网站 | www.欧美激情| 九九热精品在线 | 欧美黄色一区 | 免费午夜激情 | 国产黄色片免费 | 操操插插| 天天干狠狠干 | 潘甜甜在线 | 国产丝袜美腿一区二区三区 | 国产激情影院 | 老司机午夜影院 | 天堂网资源| 少妇中文字幕 | 亚洲欧美精品伊人久久 | 日韩黄| 亚洲特黄特色 | 成人国产a | 久爱精品 | 中文字幕avav| 色一情一乱一乱一区91av | 国产在线18 | 亚洲国产精品区 | 91最新国产 | 男女在线观看视频 | 97精品在线观看 | 少妇在线| 91欧美视频 | 久久亚洲精 | 美日韩在线视频 | 日韩精品在线免费观看 | 精品伦一区二区三区免费视频 | 色呦呦免费观看 | 加勒比日韩 | 久久男 | 手机av网 | 九九色网 | 亚洲社区在线 | 最新国产精品精品视频 | 欧美图片一区 | 善良的女邻居在线观看 | 伊人啪啪 | 乱精品一区字幕二区 | 精品久久不卡 | 青青草视频黄 | 久久精品免费 | 成人午夜免费福利 | 欧美特级毛片 | 国产精品免费在线播放 | 岛国免费av | 两个女人互添下身爱爱 | 国产精品亚洲lv粉色 | 欧美另类69 | 丁香婷婷九月 | 男人天堂手机在线 | 亚洲一区图片 | 久久久久99精品 | 星空大象mv高清在线观看免费 | 国产精品欧美综合 | 国产片一区二区 | av视屏在线| 国产91在线免费观看 | 日韩毛片在线 | 久久蜜桃精品 | 91超级碰 | 欧美不卡在线观看 | 一级黄色片毛片 | 免费伊人 | 久久蜜桃视频 | 97九色| 依人99 | 中文字幕15页 | 色综合天天 | 日本午夜小视频 | 在线看黄网 | 国产aa毛片 | 狠狠干中文字幕 | 天堂在线视频网站 | 97超碰成人 | 日韩有码av| 三级三级久久三级久久18 | 亚洲影视在线观看 | 久久小视频 | 伊人春色在线观看 | 看片网址国产福利av中文字幕 | 色偷偷影院| 三级视频在线看 | 欧美日韩午夜 | 亚洲第一天堂影院 | 在线播放日韩av | 91精品国产综合久久香蕉 | 成人欧美一区二区三区黑人动态图 | 五月天婷婷激情 | 亚洲综合久久久 | 亚洲午夜久久久久久久久 | 色图综合 | 国产无遮无挡120秒 精品一区二三区 | 欧美三级视频在线观看 | 欧美亚洲天堂网 | 伊人色综合久久天天 | 亚洲精品一区在线观看 | 韩国成年人网站 | 亚洲永久精品在线观看 | 精品久久久久久久久久久久久久 | 亚洲国产视频一区二区 | 亚洲熟乱| 欧美国产片 | 狠狠狠狠狠狠狠 | 日韩成人免费在线视频 | 精品999www| 国产一区二区自拍 | 加勒比av在线播放 | 伊人ab | 久久密av | 精品国产毛片 | 亚洲精品在线看 | 久久看av| 国产特级淫片免费看 | 欧美成人午夜 | 婷婷6月天 | 免费观看一级一片 | 男人天堂你懂的 | 成人福利院| 看一级黄色片 | 91看片成人 | 嫩草精品 | 九九亚洲精品 | 日本三级一区 | 超碰在线观看91 | 91久久精品一区二区别 | 天天爱综合网 | 自拍偷在线精品自拍偷无码专区 | 国产一区二区不卡视频 | 蜜臀久久99精品久久一区二区 | 夜夜操导航 | 精品福利在线 | 少妇一区二区三区四区 | 国产1区二区 | 久久精品99国产精品日本 | 亚洲婷婷免费 | 97人人澡人人爽人人模亚洲 | 久久精品精品 | 久久av喷吹av高潮av萌白 | 青青草原av在线 | 17c一起操 | 激情婷婷| 国内精品免费视频 | 蜜色视频 | 操丝袜少妇 | 韩国激情呻吟揉捏胸视频 | av色在线观看| 黄色的毛片 | 欧美大片免费观看 | 成人网一区 | 中文字幕av第一页 | 国产成人精品亚洲男人的天堂 | 色婷婷久久久 | 亚洲国产一区二区在线 | 国产精品国产三级国产aⅴ浪潮 | 欧美成人精品一区二区三区在线看 | 日韩成人精品在线观看 | 成年人视频网 | 亚洲性av | 夜夜操夜夜爽 | 欧美丰满美乳xxx高潮www | 国产精品69久久久久水密桃 | 亚洲欧洲精品视频 | 黄色大片黄色大片 | 久久国产精品系列 | 国产色图区 | 全黄性高潮 | 爽爽爽av| 射影院| 久久精品视频在线观看 | 自拍偷拍色综合 | 99久久99久久久精品棕色圆 | 国产精品中文字幕在线 | 中文字幕精品在线视频 | 1024毛片基地| 97人人模人人爽人人喊网 | 草操网| 在线黄色网页 | 中文字幕第23页 | 一级黄色免费毛片 | 特黄视频在线观看 | 欧美黄色大全 | 在线免费黄 | 国产精品一线天 | 99自拍偷拍 | 懂色av蜜臀av粉嫩av分享吧最新章节 | 一区二区三区在线观看av | 黄网站色成年片高清 | 国产又大又黄视频 | av在线免费观看不卡 | 中文字幕视频播放 | 中文字幕精品在线视频 | 九色视频偷拍少妇的秘密 | 久草免费在线观看视频 | 一级毛毛片 | 国产一级高清 | 日本a级网站 | 深夜国产福利 | 91片黄在线观看喷潮 | av看片资源 | 超碰888 | 成人黄性视频 | 伊人久久成人网 | 亚洲香蕉av| 欧美精品一二三四区 | 久久国产成人精品av | 久久精品不卡 | 天天草天天射 | 亚洲激情影院 | 色婷婷激情网 | 欧美激情一区在线 | 欧美日韩成人在线视频 | 国产精品国产三级国产aⅴ中文 | 久久午夜鲁丝片午夜精品 | 青草在线视频 | 久久久精品在线观看 | 日韩一区二区在线看 | 粉嫩久久99精品久久久久久夜 | 亚洲一区二区观看 | 2019天天干| 综合激情网五月 | 好爽又高潮了毛片 | 久久在线精品 | 亚洲一区影视 | 久久久久久久国产精品视频 | 久久精品男人的天堂 | 嫩草影院一区二区三区 | 在线播放精品 | 亚洲精品一区二区在线 | 国产一级免费av | 亚洲精品少妇久久久久 | 青娱乐最新视频 | 欧美 日韩 国产 成人 在线 91 | 国产视频最新 | 在线观看免费高清在线观看 | 国产噜噜噜噜久久久久久久久 | 蜜乳av懂色av粉嫩av | a毛片大片| 一级国产黄色片 | 综合网国产 | 国产成人久久精品77777综合 | 免费看黄色小视频 | 久久99久久精品 | 国产美女在线看 | 你懂的在线网站 | 99精品在线看 | 青青草原国产 | 手机看片亚洲 | 国产精品视频一 | 香蕉视频日本 | 欧美色拍 | 免费视频久久 | 成人深夜视频 | 国产剧情精品 | a毛片大片 | 四色网址| 成人久久久精品乱码一区二区三区 | 日韩tv | 欧美综合激情 | 亚洲成人性视频 | 五月天婷婷社区 | 6699av| 天天干网| 国产va在线观看 | 欧美做受69 | 国产伦精品一区二区三区视频网站 | 黄色三级免费网站 | 色涩久久 | 岛国精品资源网站 | 国久久| 国产99久久久国产精品免费看 | 一区二区日韩在线观看 | 偷拍欧美另类 | 奇米四色在线视频 | 国产国拍精品亚洲 | 夜夜操影视 | 最新欧美日韩 | 色播av| 国产成人在线播放视频 | 国产成人免费在线视频 | 国产精品2 | 国产男人的天堂 | 大色av | 午夜一区视频 | 日韩精品视频免费在线观看 | 成人两性视频 | 日本成人在线视频网站 | 性久久 | 午夜第一页 | 久久精品性| 四虎4hu永久免费网站影院 | 欧美大片网站 | 国产乱码精品一区二区三区精东 | 91嫩草在线 | 天天干天天碰 | 国产视频999 | 日韩精品导航 | 国产精品免费av一区二区 | 国产精品日韩一区 | 色婷婷综合成人av | 色一情一乱一乱一区91av | 免费视频久久 | 男人天堂亚洲 | 一级二级在线观看 | 亚洲在线a | 一区二区我不卡 | 黄色大片网址 | 日韩在线三区 | 国产精品成人一区二区网站软件 | 伊人久久精品视频 | 国产免费黄色 | 超碰一区二区三区 | 成人福利在线看 | 亚洲欧美日韩精品在线 | 91丨porny| 成人免费版 | 久久久久久久免费 | 中文字幕亚洲一区二区三区五十路 | 国产诱惑av| 久草免费av | 日韩午夜激情视频 | 国产乱淫av公 | 91超碰在线| 午夜在线小视频 | 欧美干 | 中文字幕观看 | 天天色天天干天天 | 久久蜜桃香蕉精品一区二区三区 | 黄色一区二区三区视频 | 伊人免费在线观看高清版 | 久久东京 | 久久综合影视 | 91精品99| 91午夜在线 | 国产尤物视频 | 亚洲另类激情综合偷自拍图 | av网站免费看 | 亚洲第一天堂无码专区 | 亚洲第一中文字幕 | 久久精品久久久久久 | 午夜第一页 | 日韩精品网 | 色综合视频网 | 六月丁香婷婷网 | 亚洲国产精品99 | 亚洲成人精品久久 | 久久免费高清 | h视频在线观看网站 | 亚洲国产欧美在线观看 | 亚洲精品中文字幕视频 | 午夜精品一区二区三区三上悠亚 | 日本少妇裸体做爰 | 日本www在线观看 | 精品视频一区二区三区 | 国产福利视频在线观看 | 男女爱爱网站 | 日韩porn| 天天看av | 亚洲乱码在线播放 | 性xxxx摔跤视频 | 欧美黑人精品一区二区不卡 | 激情五月激情综合网 | 国产午夜精品久久久 | 97在线免费视频 | 亚洲一级av毛片 | 在线看www | 99久热| 欧美日韩精品在线 | 国产精品二区一区二区aⅴ 免费中文视频 | 91热在线| 亚洲狠狠爱 | 精品一区二区三区在线观看 | 中文一区二区在线观看 | 亚洲久草网 | 国产精品制服诱惑 | 亚洲视频99 | 黄色片一区二区三区 | 快播视频在线观看 | 一级日韩片 | 日韩欧美高清在线观看 | 天天看天天射 | 夜夜操夜夜爱 | 亚洲综合久 | 日韩中文字幕观看 | 日本中文视频 |