Prøve- EKSAMEN. Operativsystemer med Linux

Like dokumenter
EKSAMEN. Operativsystemer og nettverk

Høgskoleni Østfold. Ny/utsatt EKSAMEN

EKSAMEN. Dato: 7. desember 2016 Eksamenstid: 09:00 13:00

Operativsystemer og nettverk Løsningsforslag til eksamen Oppgave 1. a) Linux-kommando: java Beregn & b) Shellprogram:

EKSAMEN. Dato: 24. november 2015 Eksamenstid: 09:00 13:00

Ny EKSAMEN. Operativsystemer og nettverk

Oppgave 1 - Java og prosesser (20%)

EKSAMEN. Dato: 8. desember 2017 Eksamenstid: 09:00 13:00

EKSAMEN. Operativsystemer. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

EKSAMEN. Dato: 9. mai 2016 Eksamenstid: 09:00 13:00

1,r H øgs kolen i Østfol d

Løsningsforslag til eksamen 24. november 2015

Eksamensinformasjon. Prosesser. Prosesser. Eksamensoppgave. Operativsystemer (DATS/ITPE2500) Bokmål 06. juni 2017 kl

Oversikt. Beskrivelse Bash. 1 UNIX shell. 2 Kommandolinje som brukergrensesnitt. 3 Input og output. 4 Bash builtins. 5 Linux utilities.

Oppgavesettet består av 7 sider, inkludert denne forsiden. Kontroll& at oppgaven er komplett før du begynner å besvare spørsmålene.

Ny/utsatt EKSAMEN. Dato: 6. januar 2017 Eksamenstid: 09:00 13:00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid:

Lynkurs i shellprogrammering under Linux

Operativsystemer og nettverk

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

faks: Avdeling for Ingeniørutdanning. Cart Aælersgate Oslo - tlf 05. iu@hio.no

Nyttige Linux-kommandoer. Hvordan du kan jobbe mer effektivt Dag Langmyhr

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.

EKSAMEN. Dato: 28. mai 2018 Eksamenstid: 09:00 13:00

EKSAMEN. Dato: 18. mai 2017 Eksamenstid: 09:00 13:00

Emnekode: SO135A Dato: onsdag 25. feb. I Antall oppgaver: 4

Eksamensinformasjon. Linux kommandolinje. Linux kommandolinje. Eksamensinformasjon. Fakultet: Teknologi, kunst og design. Tid: 3 t.

EKSAMEN ITF Webprogrammering 1 Dato: Eksamenstid: Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

EKSAMEN. Operativsystemer. Dato: 10. desember 2008 Eksamenstid: kl til kl

EKSAMEN. Bildebehandling og mønstergjenkjenning

Håndtering av tekstfiler

Filterprogrammer og redirigering av I/O

Prøve- EKSAMEN med løsningsforslag

Høgskoleni østfold EKSAMEN. Emne: Innføring i programmering

Høgskoleni østfold EKSAMEN

EKSAMEN. Emne: Innføring i informasjons- og kommunikasjonsteknologi

Betinget eksekvering og logiske tester i shell

EKSAMEN (Konvertert fra en gammel PHPeksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

Høgskoleni østfold EKSAMEN. LSVIMAT12 Matematikk 1, V 1: Tall og algebra. funksjoner 1. Dato: 16. desember Eksamenstid: kl til kl 15.

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG

EKSAMEN Innføring i Linux

EKSAMEN. Tall og algebra, funksjoner 2

EKSAMEN. Emne: Innføring i informasjons- og kommunikasjonsteknologi

UNIVERSITETET I OSLO

Filterprogrammer og redirigering av I/O

Oppgave 1 - Linux kommandolinje (%)

Håndtering av filer og kataloger

Høgskoleni østfold EKSAMEN

består av 7 sider inklusiv denne forsiden og vedlegg. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

EKSAMEN. Emne: Algoritmer og datastrukturer

UNIVERSITETET I OSLO Det matematisk-naturvitenskapelige fakultet

Høgskoleni østfold EKSAMEN. Ikke-programmerbar lommeregner uten grafisk skjerm Monica Nordbakke Marianne Maugesten

EKSAMEN. Oppgavesettet består av 11 oppgaver med i alt 21 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

EKSAMEN. Om eksamensoppgavene. Vekting av oppgavene. Emnekode og -navn: ITF22515 Operativsystemer med Linux. Dato go tid: 7.12.

Scheduling og prosesshåndtering

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid:

EKSAMEN. Oppgavesettet består av 9 oppgaver med i alt 21 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

Hvordan en prosessor arbeider, del 1

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

Håndtering av filer og kataloger

Høgskoleni østfold EKSAMEN. ITF10213 Innføring i programmering (Høst 2013)

Høgskoleni østfold EKSAMEN. V3: Tall og algebra, funksjoner 2 ( trinn) Dato: Eksamenstid: Fra kl til kl

EKSAMEN. Objektorientert programmering

UNIVERSITETET I OSLO

EKSAMEN. Oppgavesettet består av 9 oppgaver med i alt 20 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

Funksjonalitet og oppbygning av et OS (og litt mer om Linux)

Ny/utsatt EKSAMEN. Dato: 5. januar 2018 Eksamenstid: 09:00 13:00

Filer i Linux og Bourne-again shell

EKSAMEN. Emne: Algoritmer og datastrukturer

Høgskoleni østfold EKSAMEN. LSV1MAT12 Matematikk Vl: Tall, algebra og funksjoner 1

EKSAMEN. Evaluering av IT-systemer. Eksamenstid: kl 0900 til kl 1300

Filer og kataloger, prosesser og jobber

-/tmp med navn på alle kataloger og filer etter at disse

Import av klientfiler er kun mulig fra Akelius Årsavslutning, Akelius Skatt og Akelius Revisjon.

EKSAMEN. Emnekode: Emne: Matematikk for IT ITF Eksamenstid: Dato: kl til kl desember Hjelpemidler: Faglærer:

HØGSKOLEN I SØR-TRØNDELAG

UNIVERSITETET I OSLO

Høgskoleni østfold NY/UTSATT EKSAMEN

Tildeling av minne til prosesser

Filer i Linux og Bourne-again shell

Håndtering av tekstfiler

Emnekode: SOl35A Alle trykte og skrevne hjelpemidler

EKSAMEN. Emne: Emnekode: Matematikk for IT ITF Dato: Eksamenstid: til desember Hjelpemidler: Faglærer:

$ls -l $grep -i Olsen adresseliste.txt less #!/bin/sh $echo `ls` $chmod 755. Praktisk Linux. Grunnleggende skall kommandoer. Irene Ludvigsen Husa

Tildeling av minne til prosesser

EKSAMEN. Oppgavesettet består av 16 oppgaver. Ved sensur vil alle oppgaver telle like mye med unntak av oppgave 6 som teller som to oppgaver.

EKSAMEN. Emne: Innføring i informasjons- og kommunikasjonsteknologi. Dato: 11. desember Eksamenstid: kl 09:00 til kl 15:00

Dagens program. Operativsystemer Prosesser og systemkall i UNIX Hente prosessens nummer Starte prosesser Vente på prosesser Utføre programmer

Løsningsforslag. Emnekode: Emne: Matematikk for IT ITF Eksamenstid: Dato: kl til kl desember Hjelpemidler: Faglærer:

13/21. Høgskoleni østfold EKSAMEN. Emnekode: Emne: LSMATAF213 V3: Tall, algebra, funksjoner 2

Flytte Lønn 5.0 fra SQL 2000 til SQL 2005 / 2008

EKSAMEN. Emne: Datakommunikasjon

Prosesstabeller (PCB - Prosess Control Block) Se på PD: kommandoene ps og top Bakgrunnsprosesser Opprettelse av prosesser:

UNIVERSITETET I OSLO

Høgskoleni østfold EKSAMEN

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærere: Robert Roppestad. Hele oppgavesettet består av 8 oppgaver, samt 1 vedlegg.

Transkript:

T Prøve- EKSAMEN Emnekode: ITF22515 Dato: November 2015 Hjelpemidler: Alle trykte og skrevne. Emne: Operativsystemer med Linux Eksamenstid: Oppgavesettet er beregnet for en 4 timers eksamen Faglærere: Jan Høiberg Tore Petter Engen Eksamensoppgaven: Oppgavesettet består av 6 sider, inkludert denne forsiden. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene. Oppgavesettet består av 5 oppgaver med i alt 23 deloppgaver. Les hver oppgave nøye før du begynner på besvarelsen. Alle Linux-kommandoer og shellprogrammer skal skrives i Bourne Again Shell (bash). C-kode skal være ANSI C Legg vekt på å skrive en lett forståelig besvarelse med ryddig kode. Sensurdato: n.a. Karakterene er tilgjengelige for studenter på studentweb senest 2 virkedager etter oppgitt sensurfrist. Følg instruksjoner gitt på: www.hiof.no/studentweb Side 1 av 6

Oppgave 1: Prosesser og tråder (15%) Du har kompilert et CPU-intensivt C-program beregn.c, som gjør en svært tidkrevende matematisk beregning og bruker så mye CPU som det er mulig å få tilgang til. Den eksekverbare filen har filnavnet beregn. Programmet beregn gjør ingen interaktiv I/O eller venting på data, og har tilstrekkelig med RAM tilgjengelig. Det er ingen andre prosesser på maskinen som krever mye ressurser mens dette programmet skal kjøres. a) Skriv et Linux shellprogram (med maks. to linjer med kode) som starter dette programmet to ganger. Programmet skal først kjøres ferdig en gang, og deretter umiddelbart startes og kjøres en gang til. b) Skriv et Linux shellprogram (med maks. to linjer med kode) som starter dette programmet to ganger, men nå slik at det opprettes to uavhengige prosesser som begge kjører det samme programmet (tilnærmet) samtidig. Resten av deloppgavene i oppgave 1 kan besvares selv om du ikke har svart på de to deloppgavene ovenfor. De to prosessene som er beskrevet i deloppgavene ovenfor, kjører på en maskin som bare har én enkel CPU med kun én prosessorkjerne. c) Vil et multitasking operativsystem som Linux gjøre at det går raskere å fullføre disse to prosessene når de startes samtidig som i deloppgave b), sammenlignet med om de kjøres rett etter hverandre som i deloppgave a)? Gi en kort begrunnelse for svaret. Du skriver nå om C-koden til beregn.c, og lager et program som bruker to tråder. De to trådene gjør til sammen den samme regnejobben som ble utført ved å starte to uavhengige prosesser som i deloppgave b) ovenfor. d) Du starter det nye C-programmet med to tråder på samme maskin som tidligere. Vil dette gå vesentlig raskere enn å kjøre to uavhengige prosesser som i deloppgave b)? Gi en kort begrunnelse for svaret. e) C-programmet med to tråder flyttes til en ny maskin med to CPU'er, som hver er like raske som den enkle CPU'en i deloppgavene ovenfor. Denne maskinen har installert Linux med støtte for multiprosessor maskinvare. Hva kan vi forvente mht. kjøretiden når programmet rekompileres og kjøres på den nye maskinen? (Slutt på på oppgave 1) Side 2 av 6

Oppgave 2: Linux kommandoer og verktøy (20%) a) Hvilke av disse fire kommandoene lager en kopi av filen mintekst.txt? ls mintekst.txt > mintekst2.txt cat mintekst.txt > mintekst2.txt mv mintekst.txt > mintekst2.txt cat mintekst.txt > mintekst.txt b) Skriv en Linux-kommando som legger resultatet av kommandoen pwd i filen /tmp/pwd c) Skriv en kommando som kopierer alle filer, mapper og undermapper fra katalogen /etc til katalogen /mnt/backup. d) Hva gjør følgende kommando: ps aux grep "^ola" wc l Hint: Se deloppgave 3 d) på neste side for en beskrivelse av output fra ps aux. e) Systemfilen /var/log/auth.log er en loggfil som oppdateres automatisk av Linux. Filen beskrives slik: /var/log/auth.log Contains system authorization information, including user logins, login failures and authentication mechanisms that were used. Hva gjør følgende kommando: cat /var/log/auth.log grep "failure" f) Manualsiden for Linux-kommandoen tail inneholder bl.a. følgende tekstlinjer : NAME tail output the last part of files SYNOPSIS tail [OPTION]... [FILE]... DESCRIPTION Print the last 10 lines of each FILE to standard output. f output appended data as the file grows Forklar med egne ord hva kommandoen tail f filnavn gjør. Gi et eksempel på en situasjon der det kan være nyttig å bruke en slik kommando Hint: Se forrige deloppgave. (Slutt på på oppgave 2) Side 3 av 6

Oppgave 3: Shellprogrammering (30%) a) Skriv et shellprogram med navn arg, som tar to argumenter og skriver dem ut med ordet og i mellom. Eksempel på hvordan en kjøring kan se ut: $./arg En To En og To b) Hva utføres av følgende shellprogram: #!/bin/sh ext=$1 for filnavn in *$ext do mv $filnavn /tmp done c) Skriv et shellprogram som har et katalognavn som parameter. Programmet skal skrive ut navnet på alle katalogfiler (underkataloger) i katalogen som er angitt som parameter. Programmet skal ikke skrive ut navnene på noen andre filer enn katalogfilene. Hvis f.eks. katalogen /home, som inneholder underkatalogene levon, garth og robbie, angis som parameter, skal programmet skrive ut: /home: levon garth robbie d) Kommandoen ps aux på et Linux-system skriver ut statusinformasjon for alle prosesser på systemet. Her er noen linjer (inkludert header-linjen) med output fra denne kommandoen, kjørt på ask.hiof.no: USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND oyvindsy 3244 0.0 0.0 16376 2024? S 14:30 0:00 sshd: oyvindsy@notty oyvindsy 3247 0.0 0.0 2324 684? Ss 14:30 0:00 /usr/lib/openssh/sftp server mminahp 3580 0.0 0.0 16376 2024? S 14:31 0:00 sshd: minahp@notty oyvindsy 6506 0.0 0.0 2324 672? Ss 14:38 0:00 /usr/lib/openssh/sftp server eddies 7213 0.0 0.0 16376 2008? S 13:17 0:00 sshd: eddies@pts/7 eddies 7215 0.0 0.0 8852 4084 pts/7 Ss 13:17 0:00 bash martinso 7369 0.0 0.0 16376 2040? S 13:17 0:00 sshd: martinso@notty christsf 10431 0.0 0.0 16376 2168? S 11:27 0:00 sshd: christsf@notty christsf 10433 0.0 0.0 2324 676? Ss 11:27 0:00 /usr/lib/openssh/sftp server janh 10858 0.0 0.0 16376 1996? S 14:49 0:00 sshd: janh@pts/4 janh 10860 0.0 0.0 7940 3032 pts/4 Ss 14:49 0:00 bash minahp 3582 0.0 0.0 2324 660? Ss 14:31 0:00 /usr/lib/openssh/sftp server Vi ser at alle linjene med prosessinformasjon begynner med navnet på brukeren som eier prosessen. Kolonnen VSZ angir antall kilobytes med virtuelt minne som totalt er allokert til prosessen. Kolonnen RSS viser hvor mye fysisk minne i RAM som prosessen bruker. Skriv et shellprogram som tar et brukernavn som parameter, og som beregner og skriver ut de totale summene av hhv. kolonnene VSZ og RSS, for alle prosesser eid av denne brukeren. Det er ikke nødvendig å sjekke om antall parametre til programmet er korrekt, eller om parameteren har en riktig verdi. (Slutt på på oppgave 3) Side 4 av 6

Oppgave 4: C-programmering (10%) Forklar hva som utføres når følgende C-program kjøres: #include <stdlib.h> #include <stdio.h> main() { int tabell[100]; int *peker; int i, antall = 100; for (i = 0; i < antall; i++) tabell[i] = random(); peker = tabell; } for (i = 0; i < antall/2; i++) { printf("%d\n", *peker); peker++; peker++; } (Slutt på på oppgave 4) Side 5 av 6

Oppgave 5: Linux, servere og nettverk (25%) a) Du ser følgende linje i apachekonfigurasjonen din. Hva gjør den? Redirect permanent /ansatte http://www.nyesider.no/ansatte b) Hva er forskjellen på Redirect og Alias i apache? c) Hva er en.htaccess fil i apache? d) Ta utgangspunkt i et nett tilsvarende det som har vært labben. Du har fått to nye linux filservere på det interne nettet ditt (i tillegg til den som dere satte opp). Det er bestemt at alle de tre serverene skal ha FTP-tilgang, og disse skal kunne nås utenfra det lokale nettet. Hvordan vil du sette opp iptables slik at du kan få tilgang til FTP på alle tre serverne fra internett? e) Du får beskjed om at du skal sette opp en mailliste som heter: webansvarlige@gruppe10.no. Det skal være 5 lokale brukere på serveren som skal få mailen, i tillegg til 7 eksterne brukere (du har e-postadressene). Hvordan kan du få til dette i Sendmail? f) Forklar hvordan Spamassassin fungerer i forhold til Sendmail på et Linuxsystem. g) Du planlegger en ny server, og vil at alle brukerne skal ha følgende mappestruktur på sitt hjemmeområde: /home/brukernavn/bilder /home/brukernavn/dokumenter /home/brukernavn/html /home/brukernavn/html/index.html Hvordan får du til dette når du skal legge til 4500 brukere? (Slutt på på oppgave 5) Side 6 av 6