분류 전체보기 (68) 썸네일형 리스트형 Exercise 1-5. xargs Write a simple version of the UNIX xargs program for xv6: its arguments describe a command to run, it reads lines from the standard input, and it runs the command for each line, appending the line to the command's arguments. Your solution should be in the file user/xargs.c. 0. xargs..?https://inpa.tistory.com/entry/LINUX-%F0%9F%93%9A-xargs-%EB%AA%85%EB%A0%B9-%ED%8C%8C%EC%9D%B4%ED%94%84-%EC%99%80.. Exercise 1-4. find [!] NOTE: Gotta review it thoroughly. Didn't fully understand the code I wrote. It was a lucky shot.#include "kernel/types.h"#include "kernel/stat.h"#include "user/user.h"#include "kernel/fs.h"void strcat(char* str1, char* str2) { int str1Len = strlen(str1); for (int i = 0; i ^^^^^^ 오류 발생해서 애썼던 코드. Line 46에서 stat() 사용 시 경로를 제대로 못 줘서, Directory인데도 st.type이 T_FILE로 나왔었음-> 이전에는 stat()의 path에 .. Exercise 1-3. primes Write a concurrent prime sieve program for xv6 using pipes and the design illustrated in the picture halfway down this page and the surrounding text. This idea is due to Doug McIlroy, inventor of Unix pipes. Your solution should be in the file user/primes.c. Your goal is to use pipe and fork to set up the pipeline. The first process feeds the numbers 2 through 280 into the pipeline. For each pri.. Exercise 1-2. pingpong Write a user-level program that uses xv6 system calls to ''ping-pong'' a byte between two processes over a pair of pipes, one for each direction. The parent should send a byte to the child; the child should print ": received ping", where is its process ID, write the byte on the pipe to the parent, and exit; the parent should read the byte from the child, print ": received pong", and exit. Your .. Exercise 1-1. sleep Implement a user-level sleep program for xv6, along the lines of the UNIX sleep command. Your sleep should pause for a user-specified number of ticks. A tick is a notion of time defined by the xv6 kernel, namely the time between two interrupts from the timer chip. Your solution should be in the file user/sleep.c. // user/sleep.c#include "kernel/types.h"#include "kernel/stat.h"#include "user/us.. xv6's every system call && read() from the pipe System call Description----------------------------------------------------------------------------------------------------------------------------------------------int fork() Create a process, return child’s PID. int exit(int status) Terminate the current process; status reported to wait(). No return. int wait(int .. Windows Kernel Pool Internals Part 3 (Pool Header, Dynamic Lookaside, Backend Allocation(Segment Allocation, Large Block Allocation) ) 본 글은 Windows 10 20H2 버전을 기준으로 설명된 자료를 토대로 작성됐다(해당 자료 정보는 Reference 참고) Windows Kernel Pool Allocator - Windows 10 19H1(1903) 버전 이후로 Windows는 Kernel Pool Allocator로 Segment Heap을 사용하고 있다. 글의 목차 I-1. Segment Heap 개요 I-2. 중요한 구조체 II. Frontend Allocation 1. Low Fragmentation Heap(LFH) 2. Variable Size(VS) Allocation III-1. Pool Header III-2. Dynamic Lookaside IV. Backend Allocation 1. Segment Alloca.. Windows Kernel Pool Internals Part 2(VS) 본 글은 Windows 10 20H2 버전을 기준으로 설명된 자료를 토대로 작성됐다(해당 자료 정보는 Reference 참고) Windows Kernel Pool Allocator - Windows 10 19H1(1903) 버전 이후로 Windows는 Kernel Pool Allocator로 Segment Heap을 사용하고 있다. 글의 목차 I-1. Segment Heap 개요 I-2. 중요한 구조체 II. Frontend Allocation 1. Low Fragmentation Heap(LFH) 2. Variable Size(VS) Allocation III-1. Pool Header III-2. Dynamic Lookaside IV. Backend Allocation 1. Segment Alloca.. 이전 1 2 3 4 ··· 9 다음