Modern Operating Systems 2014 Lecture 1. What I'd like that you would achieve That you would underst...

128
Modern Operating Systems 2014 Lecture 1

Transcript of Modern Operating Systems 2014 Lecture 1. What I'd like that you would achieve That you would underst...

Modern Operating Systems2014 Lecture 1

What I'd like that you would achieve

That you would underst general concepts about operation.Know how to modern operating system function (what makes them tick) Have experience with administering 2 or more operating systems Fill the caps in your knowledge Enhance your problem solving abilities.

Who are you ?

Who are you what kind experience you have wit computer management /usage What you would expect from this course

Things that we will look at OS basics and history similarities and differences between OS-es Windows administration tools overview Linux administration tools overview Linux architecture , Windows architecture Virtualisation technologies Boot process Monitoring tools IOS , Android architecture

Additional reading http://en.wikipedia.org/wiki/Operating_system#Summaryhttp://gama.vtu.lt/biblioteka/Operating_systems/Operating_systems.pdfhttp://www.freeinfosociety.com/media/pdf/2911.pdf (Linux internals)… (will itroduce additional reading

In order to pass:You must attend to most of lectures or present some topic + do home reading ( 16 Lecture/Lab total more than 10 attended ) Do Labs /home assignment/online learningMore than 50 p from 100 test scores (will be at least 2 tests)

Lets tap to collective Wisdom

Computer system

Computer System

Modern CPU

Modern CPU architecturehttp://cpuboss.com/compare-cpus

OS Types● Real-time

● Multi-user

● Multi-tasking

● single-tasking

● Distributed

● Templated

● Embedded

Minimal components

Kernel privilege levels

OS timeline 1950 - 2012http://everlastingstudent.wordpress.com/timeline-of-operating-systems-since-the-1950s/

Linux history

http://osreviews.files.wordpress.com/2011/08/linux-history.png

Unix philosophyväike on ilus–iga utiliit/teenus täidab ainult ühte funktsiooni–komponentide ehitus ja opsüsteemi vahendid võimaldavad kerget ja selge liidesega kombineerimist–keerulisemad teenused pannakse kokku lihtsamatest–tulemuseks on alternatiivsete lahenduste võimalus ja süsteemide mitmekihiline ehitusühilduvus on olulisem kui efektiivsus–failid, kataloogi, seadmed on ligipääsetavad sarnase liidesega–andmed ja konfiguratsioon on tekstifailides–utiliidid suhtlevad tekstistriimidega

Mac os History

http://xkcd.com/705

Modern Operating Systems2 Lecture 2014

[email protected] (not jet active) http://courses.cs.ttu.ee/pages/ModernOS:2014

In order to pass:You must attend to most of lectures or present some topic + do home reading ( 16 Lecture/Lab total more than 10 attended ) Do Labs /home assignment/online learningMore than 50 p from 100 test scores (will be at least 2 tests)

What I'd like that you would achieve

That you would underst general concepts about operation.Know how to modern operating system function (waht makes them tick) Have experience with administering 2 or more operating systems Fill the caps in your knowledge Enhance your problem solving abilities.

Things that we will look at OS basics and history similarities and differences between OS-es Windows administration tools overview Linux administration tools overview Linux architecture , Windows architecture Virtualisation technologies Boot process Monitoring tools IOS , Android architecture

Stallman TEDxGE2014http://audio-video.gnu.org/video/TEDxGE2014_Stallman05_LQ.webm

Just for remainder

http://xkcd.com/705

interfaces

Simple technical terms

OS: Resource Management

Operating System Resource Management (Sharing)

•Process Management (Sharing the CPU)

•Sharing IO devices

•Main (Primary Memory) Management

(Shared among many programs)

•Disk (Secondary) Memory) Management (More sharing)

Process Management

Sharing the CPU

OS: Process Management•Process A program in execution•Process management keeping track of processes and the states they are in•CPU scheduling determines which process in memory is executed by the CPU at any given instant in time

More History 1950’s-1960’s

•Batch Processing–One big (expensive) machine

–One human operating system – “The Operator” (ala The Matrix)

–Several similar jobs were organized into “batches” that required the same resources

–Example:•Load the compiler•Run all the programs to be compiled

More History: 1960’s-1970’s

More History: 1970’s-now

•Multitasking–Lots of cheap PC machines

–Timesharing evolved into multitasking

–ONE user running MANY PROGRAMS

–Still, resources must be shared by several programs

•Windows was created as a single-user multitasking operating system

Process states

The Process Control Block

•The operating system must manage a large amount of data for each active process

•Usually that data is stored in RAM in a data structure called a Process Control Block (PCB)

•The OS maintains one PCB for each process

Processes are likeSeveral Cooks Sharing ONE Kitchen

Based on slides : http://wserver.flc.losrios.edu/~ross/files/CISC310/Chapter10.ppt

Local copy shown and bit reduced slides :https://drive.google.com/file/d/0BwLcblFEXx61RlQzbmdSUzVNbDA/edit?usp=sharing

Modern Operating Systems3 Lecture

Self study 1 https://www.edx.org/course/linuxfoundationx/linuxfoundationx-lfs101x-introduction-1621Required Exam need to be done before 29 of

October to receive Honor certificate that constitutes as proof.

Some concepts self learning will be covered in this course.

Brief tumbling into programm

Modern program

Modern program

https://software.intel.com/sites/default/files/m/d/4/1/d/8/keep-memory-002.gif

Modern Program

http://i.msdn.microsoft.com/Cc301805.pefig01(en-us,MSDN.10).gif

Modern Programm

Program libraries

Static

Dynamic

Dynamic loading

Dynamic linking

Modern programm Windows example

http://support.novell.com/techcenter/articles/img/ana1997050101.gif

Programm is a process• Process – a running instance of a program• Uses memory to store code and data• Can launch sub-processes• Processes table residing in kernel• PID – Process Identifier• PPID – Parent Process Identifier• UID – User Identifier • GID – Group Identifier• UID and GID associated with a user• Process access rights are determined by UID and GID values• UID and GID are passed along to subprocesses• Privileged user (UID=0)• Processes can change UID values upon invocation

States of a process

Virtualisation Technologies

Virtualisation Why ?

http://www.nashnetworks.ca/UserFiles/Image/Server%20virtualization.jpg

Virtualisation types

http://upload.wikimedia.org/wikipedia/commons/e/e1/Hyperviseur.png

ImplementationsVary greatly, with options including:Type 0 hypervisors - Hardware-based solutions that provide support for virtual machine creation and management via firmwareIBM LPARs and Oracle LDOMs are examplesType 1 hypervisors - Operating-system-like software built to provide virtualizationIncluding VMware ESX, Joyent SmartOS, and Citrix XenServer Type 1 hypervisors – Also includes general-purpose operating systems that provide standard functions as well as VMM functionsIncluding Microsoft Windows Server with HyperV and RedHat Linux with KVM

Implementations

Type 2 hypervisors - Applications that run on standard operating systems but provide VMM features to guest operating systemsIncludeing VMware Workstation and Fusion, Parallels Desktop, and Oracle VirtualBox

ImplementationsOther variations include: Paravirtualization - Technique in which the guest operating system is modified to work in cooperation with the VMM to optimize performance Programming-environment virtualization - VMMs do not virtualize real hardware but instead create an optimized virtual systemUsed by Oracle Java and Microsoft.Net

Implementations Emulators – Allow applications written for one hardware environment to run on a very different hardware environment, such as a different type of CPUApplication containment - Not virtualization at all but rather provides virtualization-like features by segregating applications from the operating system, making them more secure, manageableIncluding Oracle Solaris Zones, BSD Jails, and IBM AIX WPARs ..

Much variation due to importance of virtualization in modern computing

Benefits and Features● Host system protected from VMs, VMs protected from each other

o I.e. A virus less likely to spreado Sharing is provided though via shared file system volume, network

communication● Freeze, suspend, running VM

o Then can move or copy somewhere else and resume● Snapshot of a given state, able to restore back to that state

o Some VMMs allow multiple snapshots per VM

Benefits and Features● Clone by creating copy and running both original and copy

o Great for OS research, better system development efficiency● Run multiple, different OSes on a single machine● Consolidation, app dev, …● Templating – create an OS + application VM, provide it to customers, use it

to create multiple instances of that combination● Live migration – move a running VM from one host to another!

o Almost no interruption of user access● All those features taken together -> cloud computing

o Using APIs, programs tell cloud infrastructure (servers, networking, storage) to create new guests, VMs, virtual desktops

Modern buzzwords (Cloud)● Cloud ??

o Iaaso Paaso Saas

What if pizza

https://premaseem.files.wordpress.com/2014/08/cloudanalogy-pizza-as-a-service.jpg

Cloud offering

https://premaseem.files.wordpress.com/2014/08/cloudstack.png

Virtualboxhttps://www.virtualbox.org/

Modern Operating Systems4 Lecture

Self study 1 https://www.edx.org/course/linuxfoundationx/linuxfoundationx-lfs101x-introduction-1621Required Exam need to be done before 29 of

October to receive Honor certificate that constitutes as proof.

Some concepts self learning will be covered in this course.

Minimal needed services ?

Boot processSlides for linux boothttp://rahulkumar4.wordpress.com/2014/02/07/boot-process/

Windows boot:http://technet.microsoft.com/en-us/library/cc770770%28v=ws.10%29.aspxhttp://technet.microsoft.com/en-us/library/cc771845%28v=ws.10%29.aspxhttp://channel9.msdn.com/Events/Build/BUILD2011/HW-457T

Modern Operating Systems5 Lecture

Plan for todayCouple additional words on boot What is #Sehllshock and how it affects some systems.Authentication / Authorisation.One first lab ..

Boot

http://www.tuxradar.com/content/how-fix-linux-boot-problemshttp://www.aboutlinux.info/2005/11/how-to-repair-corrupt-mbr-and-boot.html

Windows boot Troubleshooting

http://blogs.msdn.com/b/b8/archive/2011/09/20/reengineering-the-windows-boot-experience.aspxhttp://www.askvg.com/tip-5-easy-ways-to-switch-from-windows-8-to-other-installed-os-in-dual-boot-environment/http://www.thewindowsclub.com/repair-master-boot-record-mbr-windows

Mac boot troubleshoothttp://www.tekrevue.com/tip/mac-startup-options/

#Sehllshokhttp://paste.lisp.org/display/143864https://medium.com/message/everything-is-broken-81e5f33a24e1https://access.redhat.com/articles/120022http://blog.erratasec.com/2014/09/the-shockingly-bad-code-of-bash.html#.VClcQvl_tKY

Authentication ?

Authorisation ?

Authenticationis the act of confirming the truth of an attribute of a single piece of data (datum) or entity. In contrast with identification which refers to the act of stating or otherwise indicating a claim purportedly attesting to a person or thing's identity, authentication is the process of actually confirming that identity. It might involve confirming the identity of a person by validating their identity documents, verifying the validity of a Website with a digital certificate, tracing the age of an artifact by carbon dating, or ensuring that a product is what its packaging and labeling claim to be. In other words, authentication often involves verifying the validity of at least one form of identification.

AuthorisationIs the function of specifying access rights to resources related to information security and computer security in general and to access control in particular. More formally, "to authorize" is to define an access policy. For example, human resources staff is normally authorized to access employee records and this policy is usually formalized as access control rules in a computer system. During operation, the system uses the access control rules to decide whether access requests from (authenticated) consumers shall be approved (granted) or disapproved (rejected).

Password&Hass

0-9 numbers, 10 symbols (ASCII 48-57)A-Z block letters, 26 symbols (ASCII 65-90)a-z small caps, 26 symbols (ASCII 97-122)Symbols 16+7+6=29 symbols (ASCII 32-47; 58-64; 91-96)!"#$%&'()*+,-./:;<=>?@[\]^_`(ASCII 123-191)

Special characters , 69 symbols {|}~€‚ƒ„...†‡ˆ‰S‹ŒZ‘’“”•–— xTMs›œzY¡¢£¤¥¦§ �©a«¬® �°±23 �μ¶·

1o»1⁄41⁄23⁄4¿ „umlauts, 64 symbols (ASCII 192-255)

AAAAAAÆCEEEEIIIIÐNOOOOO×ØUUUUYÞßaaaaäaæceeeeiiiiðnoooõo÷øuuu üyþy

http://academy.delmar.edu/Courses/ITSY2430/Powerpoints/SecurityPlus_11-Lessons.ppthttp://academy.delmar.edu/Courses/ITSY2430/Powerpoints/index.html

Homework/Lab for evaluation

Install Dual boot system Linux / Windows 7 or 8 / win server 2012(Dreamspark for example)Virtualbox with 2 hd -s and install linux on one hd and windows on second one use windows boot manager to boot both systems in one hdd and Linux boot manager to boot both system in second hdd

Modern Operating Systems6 Lecture

Plan for todayDevices and IOFile systems

Devices you know ?

File System

File System/boot laetava tuuma asukoht/mnt ühenduspunktid kettaseadmetele (floppy, cdrom)/bin käivitamiseks vajalikud programmid/sbin käivitamiseks vajalikud süsteemprogrammid/lib baasteegid/usr programmid, teegid/etc konfiguratsioonifailid/home kodukataloogid/dev seadmefailid/var muutuvad ja ajutised andmed/tmp ajutised failid/proc liides operatsioonisüsteemi tuumaga/lost+found leitud andmeblokid, mis ei kuulu ühelegi failile

File systems http://en.wikipedia.org/wiki/Comparison_of_file_systems

External slideshttp://web.cs.wpi.edu/%7Ejb/CS502/lectures/Section12-IO_Systems.ppthttp://www.cs.rutgers.edu/~pxk/416/notes/content/11-devices-slides.pdfhttp://www.cs.rutgers.edu/~pxk/416/notes/11-devices.html

Homework/Lab for evaluation

Install Dual boot system Linux / Windows 7 or 8 / win server 2012(Dreamspark for example)Virtualbox with 2 hd -s and install linux on one hd and windows on second one use windows boot manager to boot both systems in one hdd and Linux boot manager to boot both system in second hdd - 19 Nov Deadline

Next week

http://www.cs.rutgers.edu/~pxk/416/notes/content/12-filesystems-slides.pdf

+Lab time opportunity to ask opportunity to present results.

Modern Operating Systems7 Lecture

Plan for todayFile systems

External slides

http://www.cs.rutgers.edu/~pxk/416/notes/content/12-filesystems-slides.pdfhttp://www.cs.rutgers.edu/~pxk/416/notes/12-filesystems.html

Homework/Lab for evaluation

Install Dual boot system Linux / Windows 7 or 8 / win server 2012(Dreamspark for example)Virtualbox with 2 hd -s and install linux on one hd and windows on second one use windows boot manager to boot both systems in one hdd and Linux boot manager to boot both system in second hdd - 19 Nov Deadline

Modern Operating Systems8 Lecture

So What About POODLE ?

http://erlend.oftedal.no/blog/poet/

Plan for todayFile systems a bit more about them and then we will see

External slides+ info

http://www.cs.rutgers.edu/~pxk/416/notes/content/13-filesystems-impl-slides.pdfhttp://en.wikipedia.org/wiki/Filesystem

What would be best file system ?

Problem Big Files , USB and multi OS suport Should support MacOS, Windows 2012, Linux

Typical problems for OS Lets try to map them …

So Problems that may occur with os and speak a bit how to resolve them.

Intro to easy sec diffhttp://www.cogsys.cs.uni-tuebingen.de/lehre/ws12/introsec/07-unix-windows.pdf

Homework/Lab for evaluation

Install Dual boot system Linux / Windows 7 or 8 / win server 2012(Dreamspark for example)Virtualbox with 2 hd -s and install linux on one hd and windows on second one use windows boot manager to boot both systems in one hdd and Linux boot manager to boot both system in second hdd

Modern Operating Systems9 Lecture

Plan for todayPowershell, Bash, Cmd.

External slides & info

Powershell from microsoft course + combined Bash http://www.csun.edu/~andrzej/COMP421/lectures/bash.ppt

Cheat sheetshttp://www.yolinux.com/TUTORIALS/unix_for_dos_users.htmlhttp://cecs.wright.edu/~pmateti/Courses/233/Labs/Scripting/bashVsPowerShellTable.htmlhttp://homepage.smc.edu/morgan_david/cs41/bash.txthttp://www.catonmat.net/download/awk.cheat.sheet.pdfhttp://cli.learncodethehardway.org/bash_cheat_sheet.pdf

For next two WeeksReccomended:http://www.microsoftvirtualacademy.com/training-courses/preparing-for-the-windows-8-1-mcsa

Home assignment /Lab(basic)Home assignment : Write script in powershell and in bash to do :1. Archive only new or modified files from directory to archive directory 2. Archive it to archive directory by compressing each file separately (with zip, or tar or etc) and naming the archive OriginalFileNameDDMMYY.extension whereOriginalFileName is the original file nameDD is Two-digit day, e.g. 02MM Two-digit month, e.g. 04YY Two-digit year, e.g. 96extension is the extension for the arcive, eg tar.gz ,.zip etc..

Home assignment /Lab(advanced)

In addition monitor directory for changes as soon new file appear in directory doo mentioned tasks.