os10

 #include <stdio.h>

#include <unistd.h>

#include <sys/types.h>


int main() {

    pid_t pid = getpid();      // Get process ID

    pid_t ppid = getppid();    // Get parent process ID

    uid_t uid = getuid();      // Get user ID

    gid_t gid = getgid();      // Get group ID


    printf("Process ID         : %d\n", pid);

    printf("Parent Process ID  : %d\n", ppid);

    printf("User ID            : %d\n", uid);

    printf("Group ID           : %d\n", gid);


    return 0;

}
---------------------------------------------------------------------------------------------

#include <stdio.h>


int main() {

    int part[10], proc[10], alloc[10], n, m;


    printf("Enter number of partitions: ");

    scanf("%d", &n);


    printf("Enter partition sizes:\n");

    for (int i = 0; i < n; i++) {

        scanf("%d", &part[i]);

    }


    printf("Enter number of processes: ");

    scanf("%d", &m);


    printf("Enter process sizes:\n");

    for (int i = 0; i < m; i++) {

        scanf("%d", &proc[i]);

    }


    for (int i = 0; i < m; i++) {

        int idx = -1;

        for (int j = 0; j < n; j++) {

            if (part[j] >= proc[i]) {

                if (idx == -1 || part[j] < part[idx]) {

                    idx = j;

                }

            }

        }


        if (idx != -1) {

            alloc[i] = idx + 1;

            part[idx] = -1;

        } else {

            alloc[i] = -1;

        }

    }


    printf("\nProcess\tSize\tPartition\n");

    for (int i = 0; i < m; i++) {

        printf("%d\t%d\t", i + 1, proc[i]);

        if (alloc[i] != -1)

            printf("%d\n", alloc[i]);

        else

            printf("Not Allocated\n");

    }


    return 0;

}

Comments

Popular Posts