프로그래밍 QnA + 설치 및 활용 QnA

선이아빠의 이미지

혼자 해결!

해결! ㅎㅎ 부끄러워서 삭제합니당 ㅎㅎ

an0n의 이미지

대학 C 프로그래밍 과제 도와주세요

  • 삽입정렬 (명령행 인자, 입출력 redirection 이용)
    • 2가지 방법(입출력 redirection, 명령행 인자)을 사용할 수 있도록 삽입정렬 프로그램을 작성하라.
    • 표준입출력 방식의 프로그램을 작성하고, input/output redirection을 이용하여 입출력하라.
    • 명령행 인자를 이용하여 프로그램을 작성하고 실행하라.
  • (중략)
  • 다음 방법에 의해 프로그램을 작성하고 실행하라. (계속)
    • (projectName/Debug 디렉토리로 이동했으면,)
    • 메모장을 이용하여, 정렬할 데이터를 넣은 data.txt 파일을 만든다.
    • 명령행 인자 프로그램을 실행하려면 다음과 같이 명령한다. (프로젝트 이름이 sortCLA라고 가정한다)
      sortCLA data.txt
    • 입출력 redirection 프로그램을 실행하려면 다음과 같이 명령한다. (프로젝트 이름이 sortRD라고 가정한다)
      sortRD < data.txt
tmshdnqhem3의 이미지

운영체제중 프로세스 스케쥴링이랑 멀티스레드가 잘 이해가 안가서 질문드립니다.

안녕하세요. 운영체제를 공부하고 있는 프로그래머입니다.

뒤늦게 공부하고 있는데, 잘 이해가 가지 않는 부분이 있어서 질문드립니다.

기초적인 질문일 것같은데, 부끄럽네요.

드리기전에 멀티코어&멀티프로세스 환경에서 모든 프로세스가 멀티스레드로 작동하고 있다고 가정하겠습니다.

질문을 다음과 같습니다.

1. 멀티코어에서 동시에 같은 프로세스가 작동할 수 있습니까?

1.1 프로세스 스케쥴러는 레디 상태의 프로세스가 적재된 레디 큐에서 선별하는걸로 알고있기에, 동시에 같은 프로세스가 실행될 수 없다고 생각합니다. 이게 맞을까요?
1.2 만약 실행될 수 없다면, 스레드에서 임계영역이란 동시간에 같은 코드(자원)을 접근하는게 아니라, 순차적으로 접근한다고 봐도 될까요?

2. 프로세스에서 I/O 인터럽트가 발생하면, 프로세스가 블로킹 상태가 되어 I/O 완료 인터럽트가 발생할 때까지 레디 큐에 적재되지 않는걸로 알고있습니다.

다만, 이게 멀티 스레드 일 때는 어떻게 됩니까?

익명 사용자의 이미지

while 문에서 엔터키 누르면 break하는 코딩인데 엔터눌러도 안되네요...

#include
#include
void main(void) {
char name[20];
int num, kor, eng, math, science;

FILE* fp;
fp = fopen("test.txt", "w");

while (1) {
printf("성명을 입력하세요(끝내려면 엔터키를 입력하세요):");
scanf("%s", name);
if (name == '\n')
break;
fprintf(fp, "%s\n", name);
printf("학번, 국어, 영어, 수학, 과학 순으로 입력하세요:");
scanf("%d %d %d %d %d",&num,&kor,&eng,&math,&science );
fprintf(fp, "%d %d %d %d %d", kor, eng, math, science);
}
fclose(fp);
}

-@Naver의 이미지

pthread Read-Write-lock 질문

#include
#include
#include
#include
#include
#include

pthread_rwlock_t R_Lock;
int ac=0;

void* RD_LOCK(void* arg) {

pthread_rwlock_rdlock(&R_Lock);
printf("%d\n",ac); // ac is global variable 0
sleep(1);
pthread_rwlock_unlock(&R_Lock);
}

void* WR_LOCK(void* arg) {

pthread_rwlock_wrlock(&R_Lock);
printf("RW LCOK\n");
ac++;
printf("%d\n",ac);
sleep(1);
pthread_rwlock_unlock(&R_Lock);
}

Hyeon9mak의 이미지

uCOS-ii cmd제어 관련 질문있습니다.

안녕하세요, 컴퓨터공학과 재학중인 학부생입니다.
임베디드 과목에서 uCOS-ii를 이용한 프로젝트를 진행중에 궁금한 점이 2가지 있습니다.

1. cmd 종료
cmd를 마우스 클릭으로 직접 종료시키는게 아니라면 정상적인 종료가 불가능한 상태인데
정확한 종료 코드가 궁금합니다. exit()를 이용하라는 이야기를 본 것 같은데, 실제 적용해보았으나
exit()로 제대로 종료되지 않았던 것 같습니다...

힘들다의 이미지

flask에서 shell 명령어 실행

flask에서 shell명령어 실행이 가능한가요???

예를들면

import os
import sys

....

@app.route('/')
def index():
os.system('ls')

newman0315의 이미지

systemctl enable 2번쨰 질문

systemctl restart는 서버를 잠시 껐다 다시 재실행하는거고
systmemctl enable은 컴퓨터를 껐다 켜도 부팅시 자동으로 변경된 서비스가 실행되도록 설정해놓는 명령어

맞나요?

newman0315의 이미지

systemctl enable

서비스 라는 개념이 어차피 컴퓨터가 켜져있다면 자동으로 실행되는 것 아닌가요? 근데 왜 네트워크 설정 편집 후에 systemctl enable 서비스명 을 해주는 건가요?

익명 사용자의 이미지

dd를 이용한 디스크 복사중 발생한 오류 질문입니다.

안녕하세요.
리눅스 시스템상에서 임베디드 시스템의 펌웨어 디스크의 복사를 시도했습니다.
디스크를 연결하고(fdisk로 /dev/sda에 마운트된 것 확인), dd로 덤프파일을 떴습니다.
dd if=/dev/sda of=/diskdump.bak bs=1M
덤프 파일이 생성된것을 확인하고, 디스크를 분리했습니다.
복사시킬 디스크를 연결하고(/dev/sda 마운트 확인), dd를 시행했습니다.
dd if=/diskdump.bak of=/dev/sda bs=1M

작업이 완료된 후 복사한 디스크를 임베디드 시스템에 연결해, 정상적으로 부팅되는것을 확인했습니다.
이후 몇개의 디스크에 더 복사했습니다.
그런데 추가로 복사한 디스크는 임베디드 시스템상에서 부팅이 되지 않았습니다.(바이오스에서 Verifying dmi pool data...에서 진행불가)
복사를 시도한 디스크의 용량, 모델명이 모두 같고 파일 시스템 또한 미리 맞춰놨었습니다.(윈도우 노트북에 연결해 맞춰줬습니다. )

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기