У вас вопросы?
У нас ответы:) SamZan.net

Задание- Неоверлейный вызов процессапотомка из процессародителя с помощью функции spwnl- - Не

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 1.2.2025

МИНИСТЕРСТВО ОБРАЗОРВАНИЯ И НАУКИ УКРАИНЫ

Донецкий национальный технический университет

Кафедра КИ

Отчёт

по лабораторной работе №5

по курсу «СПО»

Выполнила:

студентка гр. КС-09а

Процько Е.Г.

Проверила:

Чередникова О.Ю.

2011

Задание:

*  Неоверлейный вызов процесса-потомка из процесса-родителя

 с помощью функции spawnl()*/

/*  Неоверлейный вызов процесса-потомка из процесса-родителя

 с помощью функции spawnl()*/

#include<process.h>

#include<stdio.h>

#include<dos.h>

#include"mcb.c"

int main(void)

{ int stat,x,y;

  char sx[5];

  char sy[5];

  printf("\nVvedite zna4eniya x i y dlya rasheta formuli z=x+5/y");

  scanf("%d",&x);

  scanf("%d",&y);

  itoa(x,sx,10);

  itoa(y,sy,10);

  printf("\nRaspredelenie pamyati do zagruzki potomka:\n");

  mcbfun();

  printf("\nVizov porogdennogo processa\n");

  stat = spawnlp(P_OVERLAY, "FUNC.EXE", "FUNC.EXE",sx,sy,NULL);

  if (stat == -1)

    { perror("Error");

return 1;

    }

  else

    { if (stat == 1) printf("\nNedostato4no argumentov\n");

      printf("\nRaspredelenie pamyati posle vozvrata:\n");

      mcbfun();

    }

 return 0;

}

/* потомок FUNC.c*/

#include<stdio.h>

#include<dos.h>

#include<stdlib.h>

#include"mcb.c"

int main(int argc, char *argv[])

{

int f;

if(_osmajor >= 3)

  printf("Process potomok iz faila %s zapushen\n", argv[0]);

if(argc < 3) return 1;

 printf("Dannie: x = %s, y = %s",(argv[1]),(argv[2]));

f=5/atoi(argv[2]);

f+=atoi(argv[1]);

printf("Funkziya z = %d\n",f);getch();

printf("\nRaspredelenie pamyati posle zagruzki potomka:\n");

mcbfun();

return 0;

}

/* файл mcb.c*/

#include<math.h>

#include<conio.h>

#include<stdio.h>

#include<dos.h>

union REGS reg;

struct SREGS sregs;

typedef struct

   {

     unsigned char marker;

     unsigned int owner;

     unsigned int sizePara;

     unsigned char dummy[3];

     unsigned char name[8];

   }mcb;

mcb far *ptr;

void mcbfun(void)

{ unsigned int segm, i;

  reg.h.ah = 0x52;

  intdosx(&reg, &reg, &sregs);

  segm = peek(sregs.es, reg.x.bx - 2);

  printf("  Adress MCB  | Type | Razmer bloka | Imya vladelec\n"

 "             |     |                 | pamyati (bait)\n");

  printf("--------------------------------------------------\n");

  ptr = MK_FP(segm, 0);

  printf("  %04X:0000  |  %c  |    %8lu     |", segm,ptr->marker,

     (long)ptr->sizePara*16);

  if(!ptr->owner){printf("Blok svoboden");delay(100);}

  else

    if(( _osmajor >= 4) &&  (segm + 1) == ptr->owner)

     { for(i=0; i<=7; i++)

printf("%c", ptr->name[i]); }

  delay(100);

  printf("\n");

  while( ptr->marker == 'M')

   { segm = segm + ptr->sizePara + 1;

     ptr = MK_FP(segm, 0);

  printf("  %04X:0000  |  %c  |    %8lu     |", segm,ptr->marker,

      (long)ptr->sizePara * 16);

  if(!ptr->owner){printf("Blok svoboden");delay(300);}

    else if((_osmajor >= 4) && ( segm + 1) == ptr->owner)

      { for(i=0; i<=7; i++) printf("%c", ptr->name[i]);}

    delay(300);printf("\n");

  }getch();

}




1. реферату- Логістика складуванняРозділ- Логіка Логістика складування Замовлення і складування матеріалів
2. тематика рефератов по дисциплине Безопасность жизнедеятельности для студентов заочной формы обучения.
3. Основание уголовной ответственности
4. тема криминалистики
5. АкваРитм 58 269 12413Дневной крем Технология молодости SPF 8
6. с какимто замешательством.html
7. Историческая основа «Слова о полку Игореве» Поход князя Игоря 1185г в «Слове» и в летописных повестях
8. Отчет по лабораторной работе ’ 2 Определение качества дизельного топлива
9. СПЕЦИАЛИСТА И ЖУРНАЛИСТА В ПРОИЗВОДСТВЕ НОВОСТЕЙ
10. ГИГИЕНИЧЕСКАЯ ЭКСПЕРТИЗА МУКИ И ХЛЕБА