Uke 17 - Internminne, disker og filsystemer

Oppgaver til mandag 21. - fredag 25. apr

  1. The total virtual address space for all the processes combined is nv, so this much storage is needed for pages. However, an amount r can be in RAM, so the amount of disk storage required is only nv ~ r. This amount is far more than is ever needed in practice because rarely will there be n processes ac- tually running and even more rarely will all of them need the maximum al- lowed virtual memory.
  2. A page fault every k instructions adds an extra overhead of n/k µsec to the average, so the average instruction takes 10 + n/k nsec.
  3. The page table contains 232 /213 entries, which is 524,288. Loading the page table takes 52 msec. If a process gets 100 msec, this consists of 52 msec for loading the page table and 48 msec for running. Thus 52% of the time is spent loading page tables.
  4. The R bit is never needed in the TLB. The mere presence of a page there means the page has been referenced; otherwise it would not be there. Thus the bit is completely redundant. When the entry is written back to memory, how- ever, the R bit in the memory page table is set.
  5. General virtual memory support is not needed when the memory requirements of all applications are well known and controlled. Some examples are spe- cial-purpose processors (e.g., network processors), embedded processors, and super-computers (e.g., airplane wing design). In these situations, we should always consider the possibility of using more real memory. If the operating system did not have to support virtual memory, the code would be much sim- pler and smaller. On the other hand, some ideas from virtual memory may still be profitably exploited, although with different design requirements. For example, program/thread isolation might be paging to flash memory
  6. (Oblig)
  7. (Oblig)
  8. 4 cores Intel Xeon 5400 med 4 x 32 KB write-back data caches og 2 x 6 MB shared caches passer bra med resultatene. Men det kan være andre som kjører samtidig, siden det er mange VM'er pr server.
  9. (Oblig)
  10. (Oblig)
  11. (Oblig)
  12. I dette tilfellet starter MFT på cluster nr 5334. Cluster size er 512 bytes og en MFT entry er på 1024. Selve MFT sitt entry nummer er 0-128-1. Filen ntfs.txt sitt entry nummer er 27-128-1. Det vil si, dette er da entry nr 27. Den ligger da i cluster nr 5334 + 2*27 = 5388. Som man kan se om man går til dette clusteret i Data Unit, så ligger også innholdet av filen inne i filens MFT entry. Dette er fordi den er så liten. Når filen slettes, så slettes MFT entry'en og dermed har også innholdet av den slettede filen blitt borte. Dermed finnes den ikke på disken, imotsetning til fil2.txt som kunne finnes igjen på ext-disken.
  13. Dataene stripes over 3 disker med RAID 4 og når disse leses parallelt vil hastigheten maksimalt bli 3 ganger så stor.
  14. Ja, paritet for dataene vil skrives til den fjerde disken.
  15. Selvom de 3 datadiskene kan skrives til i parallell må det for hver gang skrives til paritetsdisken og dette kan bli en flaskehals. Med RAID 5 skrives paritet til alle diskene og dermed unngår man en slik flaskehals.
  16. (Oblig)
    1. Kun ntfs.txt i tillegg til filene i mappene RECYCLER 'System Volume Information'.
    2. Filen ntfs.txt har entry nummer 27 (27-128-1), som man kan se under Meta i File Analysis.
    3. MFT-entryene består av 2 clustere, 2*512 = 1024 bytes, som man kan se under Image Details.
    4. Det er ikke avsatt noen ekstra clustere under $DATA til filen ntfs.txt, den ligger i sin helhet inne i MFT-entryen som består av to clustere (som forøvrig er cluster 5388 og 5389).
    5. Under All Deleted Files i File Analysis kan man øverst finne C:/$OrphanFiles/OrphanFile-33 som har(hadde) MFT entry nr 33. Det starter på cluster 8356 og det siste er 8884, altså 529 clustere.
    6. Cluster-størrelsen på NTFS-disken er 512 bytes og 529*512 = 270848 bytes var blitt satt av til foto-filen.
    7. Om man går inn og ser på cluster nr 8884, er bare 100 av de siste 512 bytene en del av bildet og størrelsen er altså 528*512 + 100 = 270436 bytes.
    8. Man kan skrive inn cluster Number 8356 og Number of Clusters: 529 i Data Unit og eksportere. Men det er enklere å klikke på det øverste bildet i All Deleted Files, View Full Size Image, og så save bildet. Forøvrig, med programmet foremost (utviklet av det amerikanske forsvaret) kan man hente ut det slettede bildet fra kommandolinjen.
    9. Fat12
    10. Sektor-størrelse er 512 byte og cluster-størrelse er 1024 bytes på minnepinnen.
    11. Da slettes FAT (File Allocation Table) som sier hvor filene ligger, sektor 1-6 i dette tilfellet, men ikke selve filene (sektor 7-1439).
    12. Eneste innhold uten om sektor 0 er use steghide password "secret". Kan også finnes med:
      root@osG50:~/19.4# strings imgstick 
      MSDOS5.0
      NO NAME    FAT12   3
      |8N$}$
      at2Nt	
      NTLDR      
      Remove disks or other media.
      Disk error
      Press any key to restart
      use steghide password "secret"
      
    13. Programmet steghide bruker steganografi til å lagre en fil i jpeg-bildet ved å kode filen inn i bits i bildet som kan endres uten at det endrer hvordan bildet ser ut. Men du må ha et passord for å få ut filen og det fant du på minnepinnen, selvom den også var slettet.
      root@osG50:~/19.4# apt-get install steghide
      root@osG50:~/19.4# steghide extract -sf autopsy.jpeg 
      Enter passphrase: secret
      wrote extracted data to "k3.mp3".
      
      Og mp3-filen sier: "Din kontakt er Alfred Bratterud!"