d~~ "5(~~~~ ~ \ - -~-- en av disse: Annen lærer r Studieleder/ Fagkoordinator Utarbeidet av (faglærer) :



Like dokumenter
Avdeling for ingeniørutdannlng. Con Adelersgate Oslo. tlf: faks:

Oppgave 1 - Java og prosesser (20%)

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

Emnekode: SOl35A Alle trykte og skrevne hjelpemidler

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

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

Antall sider:5 (Inkludert denne) Alle skrevne og trykte hjelpemidler samt kalkulator

Lynkurs i shellprogrammering under Linux

Guide for tilkobling til HIKT s Citrix løsning

Shellscripting I. Innhold

Løsningsforslag til eksamen 24. november 2015

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

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

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

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

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

JSP - 2. Fra sist. Hvordan fungerer web? Tjenerside script HTML. Installasjon av Web-tjener Et enkelt JSP-script. Ønsker dynamiske nettsider:

Installasjon av Windows 7 og Office 2016

Del 1: Overgang fra gammel hjemmeside til ny hjemmeside

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl

Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006

Kurset består av to relativt uavhengige deler. Foreleser: Hårek Haugerud, rom PS431

Brukerveiledning digital eksamen i FLOWlock

Universitetet i Bergen Det matematisk-naturvitenskapelige fakultet Institutt for informatikk

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

Antall sider:s (inkludert denne) Alle skrevne og trykte hjelpemidler samt kalkulator

Velkommen til Pressis.

Øving 0 - Xcode TDT4102

I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt.

Brukerveiledning for programmet HHR Animalia

~estar av: ~mne. pruppe(r) ~ata. 27. februar. rntall Vedleg~: Aile trykte og skrevne. tnllattehjelpernidier:

Brukerdokumentasjon Citrix og Multiframe InnsIKT 2.0. Versjon 1.5. Innholdsfortegnelse

HØGSKOLEN I SØR-TRØNDELAG

FRC-Feeder-E. Et sikkert og raskt verktøy for overføring av data til File Record Converter Versjon 1.9

Installasjonsveiledning

Installasjon og Oppsett av Weather Display Denne artikkelen er ment å være en hjelp til å laste ned, installere og sette opp Weather Display.

Høgskoleni Østfold. Ny/utsatt EKSAMEN

INF109 - Uke 1b

Utførelse av programmer, metoder og synlighet av variabler i JSP

PCK Håndterminal. Brukerveiledning

Unix/Linux en annen måte å gjøre ting på

6107 Operativsystemer og nettverk

Konfigurasjon av nettverksløsning for Eldata 8.0 basert på PostgreSQL databasesystem.

<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen.

Installasjonsveiledning DDS-CAD 7.3

Bruk av oppgaver og grupper i

DDS-CAD 7 INSTALLASJON AV NETTVERKSLÅS. DATA DESIGN SYSTEM ASA Øksnevad Næringspark, 4353 Klepp st., fax , tel.: , e-post: dds@dds.

Kjøre Wordpress på OSX

KANDIDATEN MÅ SELV KONTROLLERE AT OPPGAVESETTET ER FULLSTENDIG

Løse reelle problemer

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Prøve- EKSAMEN. Operativsystemer med Linux

Utrulling av sertifikater til IOS

Antall sider (inkl. forsiden): 7. Alle trykte og håndskrevne

Øvingsforelesning i Python (TDT4110)

BOKMÅL Side 1 av 5. KONTERINGSEKSAMEN I FAG TDT4102 Prosedyre og objektorientert programmering. Onsdag 6. august 2008 Kl

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

En liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden.

Før du starter, del 2

Huldt & Lillevik Lønn 5.0. Installere systemet

Klikk på: Ny bruker søker

Filterprogrammer og redirigering av I/O

Oppgaver til forkurs i informatikk dag 1

Straffespark Introduksjon Scratch Lærerveiledning

Installere programvare og alternativer for Polycom RealPresence Group Series og tilbehør

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

Introduksjon til dataanlegget ved Institutt for informatikk. Marc Bezem Institutt for informatikk Universitetet i Bergen

Om oppgaveteksten på noe punkt er uklar eller upresis, kan du gjøre egne presiseringer. Formulér i så fall disse tydelig i oppgavebesvarelsen din.

Huldt & Lillevik Lønn og Personal - System 4. Installasjon. - første gang. Med MS SQL Server eller eksisterende MS Express.

6105 Windows Server og datanett

IP-telefoni Brukerveiledning

Innhold RDP... 2 Oppkobling Kirkedata... 2 Flere brukerpålogginger til Kirkedata... 8

VMware Horizon View Client. Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang

Kort intro for nye/uerfarne ipad-brukere

Vi skal se på lambda-uttrykk. Følgende er definerte og vil bli brukt gjennom oppgaven

Utførelse av programmer, funksjoner og synlighet av variabler (Matl.)

LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke September 2012 Siri Moe Jensen EKSEMPLER

EKSAMEN. Operativsystemer og nettverk

Intentor Helpdesk - Installasjon Step #3: Microsoft Reporting Services

Filer og kataloger, prosesser og jobber

Brukerveiledning for "RICOH Printer"

FTP Info til brukerne

Øvingsforelesning TDT4105

Install av VPN klient

SQL Server guide til e-lector

UNIVERSITETET I OSLO

Håndtering av tekstfiler

Installasjonsveiledning. Mamut. Oppdatering til versjon 12.1

Sprettball Erfaren ComputerCraft PDF

Lab 1: Installasjon av Virtualiseringsløsning (VMWare Server ESXi 6.5) med en Virtuell Linux maskin (Cent OS 7 64-bit)

Innføring i bruk av CGI4VB

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Komme i gang med Skoleportalen

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

buildingsmart Norge Guiden

Ny EKSAMEN. Operativsystemer og nettverk

Om Samba/fildeling. Hans Nordhaug Institutt for informatikk Høgskolen i Molde

Emnekode. uato: mandag 27. februar I\ntall oppgaver: 4. Gruppe(r): Elektro ~ksarnensoppgaven oestar av:

Velkommen som ny bruker av Uni Økonomi!

Digital hjemmeeksamen PPU

Transkript:

Utarbeidet av (faglærer) : d~~ Kon - -~-- en av disse: Annen lærer r Studieleder/ Fagkoordinator "5(~~~~ ~ \ I'") Avdeling for ingeniørutdanning. Con Adelersgate 30. 0254 Oslo. tff: 22 45 32 00. faks: 22 45 32 05. iu@hio.no

Eksamen høst 2005 Operativsystemer og UNIX Les nøye gjennom oppgavene før du begynner og pass på å besvare alle spørsmålene. Alle trykte og skrevne hjelpemidler er tillatt. Oppgavene vil ikke bli vektlagt likt ved sensur. En sannsynlig fordeling er at oppgave 1 teller 10%, oppgave ~ teller...0%, oppgave 3 teller 30% og oppgave... teller ~O%. De som ønsker det kan besvare oppgavene eller deler av oppgavene på engelsk. Sett gjerne egne forutsetninger dersom du synes oppgaveteksten er uklar. Beskriv forutsetningene og løs oppgaven uti/m. dem. Oppgave 1 I denne oppgaven skal du i delspørsmål a) til d) løse problemet ved å angi en kommando på en linje. slik du ville ha tastet den inn til bash på en Linux-maskin fra tastaturet (du svarer for eksempel akdir ut hvis du blir spurt: Opprett en katalog med navn kat). a) Gi deg selv skrive og leserettigheter og alle andre brukere kun leserettigheter til filen foto. jpg i katalogen du står i b) Flytt filen foto.jpg i katalogen du står i til - /vvv/foto c) Kopier filen /etc/passvdtil din bruker 8123456 på en annen Linux-maskin med navn nix.iu.hio.no. Hos denne brukeren skal filen legges i hjemmekatalogen. d) Logg inn på en annen Linux-maskin med navn nix. iu.hio.no (men slik at passord ikke sendm i klartekst) e) Du har en tekstfil readme. txt og utfører kommandoene ca~ r.adm..~xt ca~ r.adm..~xt > /døv/null Forklar kort forskjellen på de to kommandoene og hva de vil resultere i f) Du har en fil /home/hh/.deleted/ :home: hb : pro8j ekt som tidligere lå i katalogen /home/hb og da hadde navnet prosjekt. Du flytter den tilbake med kommandoen mv /bome/bh/.deleted/:home:hh:prosjekt /home/hh/pro8jekt men nå finnes det en katalog /home/hh/prosjekt. Forklar kort hva som skjer g) Studer følgende utdrag av manualsiden for date NAME print or set the system dat. and time SYNOPSIS date [OPTIOH]... [+FORMAT] DESCRIPTIOH Display the current time in the given FORMAT. or set the syst.. date -d, --date-strlifg display time described by STRING. not (nov

-t,. --file-datefile lite --date once for each line of DATEFILE --refer8nc_file display the last.odification ti8e of FII.E FORMAT controls the output XX Xa 'loa '/;b XB Xc Xc Xd 'I.D %e 'I.F x. 'hr %T %y a literal % local.'s abbreviated weekday naae (San..Sat) locale's full weekday name, variable length (Sanday..Saturday) locale's abbreviated month name (Jan..Dec) local.'s full month name, variable length (January..Dec..ber) locale's date and time (Sat Nov 04 12:02:33 EST 1989) c.ntury (year divided by 100 and truncated to an integer) [00-99] day of month (01..31) date (-/dd/yy) day of 80nth, bladk padded ( 1..31) sue - y.y-y,a-1,d 8Onth (01..12) tiae, 24-hour (hh:_) ti8e, 24-hour (hh:8m:ss) year (1970...) Eksempelvis gir $ date Tue Nov 29 21: 62: 14 HET 2006 $ date +%A'I.B TuesdayHovember Gi en kommando som gir output 2005-11-29_16:04:00 der dette tidspunktet er forrige gang innholdet av filen sendt.log ble endret.. ls -l sendt.log -rvx 1 baugerud drift 54 Nov 29 16:04 sendt.log Oppgave 2 I denne oppgaven skal du lage to bash-script som skal brukes til å teste en firewall (brannmur). Scriptene du lager skal ikke foreta selve testingen, men starte programmene som skal utføre testen. Følgende figur viser at firevall.iu.hio.no beskytter server.iu.hio.no på innsiden og er forbundet med blant andre shadovf ax. i u. hio. no på utsiden. Scriptene du skal lage er angitt. f send på shadovf ax sender TCP - pakker, noen stoppes av firewall'en og ftaimot på server tar imot de pakkene som passerer. 2

Du kan anta at du har root-rettigheter på alle maskinene og at du ikke trenger å skrive paæord for å gå mellom de tre maskinene med ssh. Figuren viser også hvordan log-filene skal sendes, dette forklares nærmere nedenfor. a) På maskinen shadowfax.iu.hio.do sk8.l du i katalogen Iroot/ftester lage et bash-script med navn frun. bash. Angi først en eller flere kommandoer du bruker for å åpne en editor og skrive dette scriptet etter at du har logget inn. Dette scriptet sk8.l utføre følgende oppgaver:. Gå til katalogen /root/ftester. Hvis filen sendt. log eksisterer skal den endre navn ved at det legges til et tidsstempel for når filen sist ble endret, slik at den etterpå heter sendt.log. tidsstellpel (se siste deloppgave på oppgave 1). Filen sendt.log skal lages og kun inneholde en linje på formen Tue Nov 29 22: 10: 41 HET 2005 hvor dette er tidspunktet scriptet kjøres. Programmet Irootlttester It send skal kjøres (det skriver automatisk til filen sendt.log). Når fsend er ferdig skal filen sendt.log som fsend-programmet skriver til, kopieres til brukeren root på. maskinen firevall. iu.hio.no i katalogen /root/ftester b) I denne deloppgaven skal du lage scriptet /root/ftester/fstart. basb på firevall.iu.bio.no. Dette scriptet kjøres på denne maskinen og styrer derfra hele testen ved at 1. På server. i u. hio. no startes et program ftailaot som lytter etter nettverkspakker fra shadovf ax. i u. hio. no og logger de den mottar i filen mottatt.log 2. /root/ftester/frun. bashfra a)-oppgaven startes på shadovfax. iu.hio.no. Det starter fsend som sender en rekke testpakker over nettet til server. iu. hio. no og lagrer en log over hva som er sendt i sendt.log. Til slutt sendes denne log-filen til f irewall. iu. hio. no. 3. Filen mottatt.log hentes fra server. iu.hio.no og programmet freport kjøres for å lage en rapport om hvilke pakker som slapp igjennom uti fra filene sendt.log og mottatt.log. Skrivet script /root/ftester/fstart.. bashsom skal kjøres på firevall.1u.hio.no og som gjør følgende. Går til /root/ftester. S~r /root/ftester /ftaimot på server. iu. hio. no. Starter selve firewall-programmet Iroot/firevall.rc Sletter filen sendt.log hvis den finnes. Skriver ut en melding om det hvert 5 'te sekund mens den venter. Melder fra når filen er kommet. Henter /root/ftester/mottatt.log fra server. iu.hio.no Stål' i en while-løkke og venter på at filen sendt.log skal komme fra shadowfax.iu.hio.no. Kjører freport sendt.log mottatt.log slik at output legges i filen report. txt (freport sender deafult output til STDOUT) S~r /root/ftester/frun.bashpåshadowfax.iu.hio.no 3

Oppgave 3 I de tre første deloppgavene av denne oppgaven, skal du tenke deg at du er ansatt i et firma som kun kjører Linux (joda, de finnes!) Du skal velge et programmeringsspråk eller scriptspråk for å løse tre oppgaver. Det finnes ikke eksakte fasitsvar til disse tre oppgavene, men gi en kort begrunnelse utifra dine nåværende kunnskaper. Legg vekt på. at du hurtigst mulig skal løse oppgaven og at programmet du lager ikke skal bruke uforholdsmessig mye tid når det kjøres. a) Du skal lage et stort program som kun ved hjelp av den koden du skriver skal simulerer et nettverk av maskiner som hver har mange brukere. Ved å kjøre tidkrevende simuleringer. skal programmet generere statistikk over hva som skjer. Gi en kort begrunnelse for hvilket programmeringsspråk eller scriptspråk du vil velge for å løse oppgaven. b) Du skal lage et program som tar kopi av alle filene i en log-katalog til ditt eget område, gjør filene leselig kun for deg selv og deretter starter et program som analyserer disse logfilene. Gi en kort begrunnelse for hvilket programmeringsspråk eller scriptspråk du vil velge for å løse oppgaven. c) Du får beskjed om å lage et prqgram som ut ifra en stor log-fil fra webserveren skal lage en statistikk over hvor mange ganger hver side er lastet ned, samt hvilke IP'er som forekommer oftest. Linjer fra filen ser ut som 128.39.76.4 - - [19/0ct/2001:13:34:11 +0200] -GET/-truongc/prh2001/bilder/aeny.jpg BTTP/l.1-128.39.76.38 - - [19/Oct/2001: 13:34: 11 +0200] -GET/-sivaliv/BOTTOM.HTM HTTP/1.1- Og det skal gjøres idag! Gi en kort begrunnelse for hvilket programmeringsspråk eller scriptspråk du vil velge for å løse oppgaven. d) Forklar kort hvordan et operativsystem (tilsvarende det som ble simulert i andre obligatoriske oppgave) kan gi forskjellig prioritet til forskjellige prosesser. e) Et operativsystem (tilsvarende det som ble simulert i andre obligatoriske oppgave) kontrollerer tilgangen til en felles variabel ved hjelp aven semafor, Forklar kort hva som skjer når tre prosesser samtidig prøver bruke denne felles variabelen, Er serialiseringen av prosessene avhengig av at prosessene bruker semaforen iktig'? r, f) Tenk deg at et Perl program som kan startes fra web bruker følgende metode for å unngå. at to brukere skriver samtidig til en fil 'touch Itmp/lockfile';. Lager ltap/lockfile vhile(-f 1t8p/lockfile) {}. skriver til en telles fil 'ra It8p/lockfile';. Fjerner Itmp/lockfile I hvilke tilfeller virker ikke denne metoden? Forklar kort g) Hva gjør at følgende Mutex-algoritme mellom to proseæer er ubrukelig? Forklar kort.~a~1c booleado Ilag. new bool.an[2]; I1 Begge fal.e i u~gangspunk~e~ GetMu~.x(1n~ ~) { 1n~ on.r; o~her. 1 -~; tlag[~]. ~rue; I1 Ønsker å gå inn 1 kr1~18k av.n1~~

wh11e (flag[other].. true){} } ReleaseKutex(int t) { flag[t]. falae; } Oppgave 4 a) Skriv en Perl-subrutine addline() som tar en streng som parameter. Hvis denne strengen ikke er eksakt lik noen av linjene i tekstfilen data. txt, skal subrutinen legge strengen til på slutten av filen data. txt. Hvis returnere strengen uten som å gjøre sendes noe. som parameter. er eksakt lik en av linjene i tekstfilen data.txt, skal subrutinen Bruk deretter subrutinen addline() til å lage et Perl-script som for hver linje i filen nyelinjer. tort som ikke finnes i filen data. tort fra før, legger linjen til på slutten av filen data. txto. Ingen linjer i nyelinjer. txt er like hverandre. b) I denne oppgaven skal du skrive en Per l-server som skal. Bruke strict og ID: : Socket lnet Ta imot tilkoblinger fra klienter til port 9020 og åpne en socket-forbindelse Legge inntil 5 tilkoblinger i kø når flere klienter kobler seg til samtidig Når en klient kobler seg til på port 9020 skal server. Skrive ut en melding om at klienten kobler seg til og fra hvilken lp den gjør det. Åpne tekstfilen Ip2p/P2P. txt og sende linje for linje over socket-forbindelsen. Lukke socketforbindelsen når hele filen er sendt. Skrive en melding om at forbindelsen er avsluttet -SLUTT- 5