프로그래밍 QnA

mcjj의 이미지

리눅스 공부하다가 wait queue관련해서 질문드립니다

scheduler를 직접 구현해 보고 싶어서 공부하는데 도저히 진도가 안나가서 여기 질문드립니다.

kernel에서 가상 cpu의 객채를 구현하여 user process에서 실제 프로세스처럼 동작하는 가상 프로세스 객체를 구현하는것이 목표인데

user program은 구현을 했는데 가상 cpu의 구현이 어렵습니다.

FCFS를 구현하고자 하는데 wait queue를 어떻게 써야할지 감이 안옵니다.

일단 주어진 부분은 아래와같습니다.

asmlinkage int sys_ku_cpu(char name[4], int job){
pid_t pid = current->pid; //pid_t 자료형으로 현재 프로세스의 pid저장

leolo의 이미지

epoll 의 ET 사용법에 대해서...

epoll을 사용해서 데이터를 읽어 들여야 하는데. 어떻게 처리해야 할지 몰라서 문의드립니다.

단순히 EAGAIN 까지 돌면서 읽는 것이 아니라.

특정 데이터 사이즈(24) 만큼 읽고, 거기서 body len을 읽고, 다시 body len을 읽어 들이는 것입니다.
ET를 사용할 경우 [A부분] 에서 EAGAIN가 발생할 떄까지 돌면서 읽어야 한다고 하는데.
정확히 어떻게 해야하는지 잘 모르겠습니다.

예들 들어 상대편이 100byte의 데이터를 보냈는데,
그걸 읽었을 때, 40byte의 온전한 데이터(header와 body로 구성된)가 2개 연속, 나머지 20byte의 온전한 데이터(header와 body로 구성된)가 존재하고 수신된다고 가정했을 때,
EAGAIN이 60byte 수신 후 발생, 나머지 40byte에서 또 발생한 경우에 대한 처리 같은 것이 궁금합니다.

/* epoll 파일 fd 저장소 생성 */
epfd = epoll_create(MAXEPOLLSIZE);
if(epfd == -1) {

kaeri17의 이미지

c++ 클래스 디자인 질문입니다.

안녕하세요. 간단한 계산 프로그램을 짜고 있는데 C++클래스 디자인이 생각처럼 잘 안되서 질문드립니다. 먼저 다음과 같은 행렬 클래스가 있습니다.

class Matrix
{
private:
....
public:
    VectorView row(int n);
    VectorView column(int n);
]

제가 하고싶은 일은 이 VectorView클래스를 잘 만들어보고싶은 건데요, 이 VectorView는 1차원 vector와 비슷한데, 별도의 저장공간 대신에 Matrix의 데이터에 직접 접근하게 만들고 싶습니다. iterator와 비슷하다고 할수 있죠.

근데 문제는 뭐냐면, 이 VectorView를 이용하는 함수를 만들때 입니다.

dltkddyd의 이미지

fgetc로 한글을 읽거나 한자를 읽을 때 코드는 utf16인가요?

한글이나 한자와 같이 영어권 문자가 아닌 문자가 나열된 파일을 열어서 fgetc로 읽어들일 때 2byte 단위로 읽을 경우 하나의 문자로 보이는 것 같은데요. 영어 이외의(한글, 한자를 제외한)의 문자들도 모두 2byte 단위로 읽은 경우 하나의 문자로 표현이 가능한 것인가요? 그리고 읽은 문자의 코드가 utf8인지 utf16인지, 아스키 코드인지를 확인할 수 있을까요?

lminl23의 이미지

C++고수님들.. C초보입니다.. 이해하기쉽게 주석좀 부탁드릴게요..

#include"stdio.h"
#define MAX_STACK_SIZE 100 // 스택최대크기
#define MAX_EXPR_SIZE 100 // 수식최대크기

void postfix(void);
int cal(void);
typedef enum {lparen, rparen, plus, minus, times, divide, mod, eos, operand} precedence;
int stack[MAX_STACK_SIZE];
char iexpr[MAX_EXPR_SIZE];
char pexpr[MAX_EXPR_SIZE];
int isp[]={0, 19, 12, 12, 13, 13, 13, 0};
int icp[]={20, 19, 12, 12, 13, 13, 13, 0};

paranmir의 이미지

반복 조건 내에서 배열 인덱스에 대한 증감 연산자 사용 문제

C 프로그램 내에서 반복문을 아래와 같이 구성했을 때에는 원하는 결과를 얻을 수 있었으나,

 while(low <= high) {
         while(pivot > arr[low])
             low++;
         while(pivot < arr[high])
             high--;
         if(low <= high)
             Swap(arr, low, high);
}

다음과 같이 변경하면 원하는 결과가 나오지 않습니다.

creed211의 이미지

개발툴 버젼업 후 ExecuteNonQuery함수 실행이 안됩니다!!

안녕하세요. IIS환경에서 .net C#개발을 하고 있습니다.

비쥬얼 스튜디오(VS) 2003을 쓰다가 OS를 윈도우7으로 변경하면서 VS 2008로 개발툴을 변경했습니다.

근데 오라클 ExecuteNonQuery함수가 실행이 안되네요. 리턴값이 없는 DML, 프로시져, 패키지함수를 실행하는 함수인데

DML문장은 실행이 잘 되는데 프로시져나 패키지함수를 콜하면 에러가 뜹니다. 캐스팅할 수 없다고 InvalidCastException 오류가 뜨는데

몇일동안 찾아봐도 원인을 모르겠네요. 아시는분 부탁좀 드릴게요!!

에러화면은 캡쳐했습니다.

.소스

withmainre의 이미지

AIX 에서 /proc내용중에 해당 pid가 foreground 인지 확인 하는 인자가 있나요?

안녕하세요 한참 시스템 프로그램을 개발 중인?? 초보 개발자입니다.
왠만하면 혼자서 풀어나가겠는데 정말 정보를 찾을 수 없네요. (제가 못차는 거겠지요.)
현재 /proc를 조회해서 프로세스관련한 모든 정보를 가지고 모든 프로세스중에 foreground를 찾는 작업을 하고 있는데요. linux,hp같은경우는 쉽게 찾았는데 이녀석은 도저히 못찼겠네요.
혹시 알고 계신분 부탁좀 드립니다.

idrukawa의 이미지

pthread_create() 에서 thread argument를 넘겨줄때...

pthread_create() 에서 thread argument를 넘겨줄때 void* 형으로 넘겨주도록 되어 있는데요.
만약에 pthread_create를 호출하고 바로 종료되는 함수에서
그 함수의 지역변수를 인자로 넘겨주려고 하면 문제가 됩니다.
아래의 경우처럼요.

canuyes의 이미지

closest pair 알고리즘 문제 관련 질문입니다.

분할정복을 이용한 closest pair를 공부중인 학생입니다.
고민 끝에 분할 정복을 이용하여 구현을 하기는 했습니다만,
원하는 실행시간을 얻지 못해 질문 올립니다.
100000(일십만)개의 인풋에 대해 1초 이내의 실행시간을 얻고 싶은데, 잘구현이 되질 않습니다.
아마도 제가 지금 비효율적으로 하고 있는 부분이
"분할된 왼쪽 평면과 오른쪽 평면을 가로지르는 직선의 값을 구하는 과정"
인것 같습니다.
discrete mathematics 6E, introduction to algorithm 3E , 구글링 등 여러가지를 참고해봤지만,
10시간째 실패해오고 있습니다.
제가 어려워하고 있는 부분에 대해 참고할 만한 문헌이나,
명쾌한 답변을 기다립니다..
감사합니다.

p.s.

CLOSEST PAIR

좌표 평면에 N개의 점이 주어질 때,이 점들중 가장 가까운 점들간의 거리를 구하는 것.

페이지

프로그래밍 QnA 구독하기