CSCE 313 Introduction to Computer Systems

Size: px
Start display at page:

Download "CSCE 313 Introduction to Computer Systems"

Transcription

1 CSCE 313 Introduction to Computer Systems Instructor: Dr. Guofei Gu The UNIX File System File Systems and Directories Accessing directories UNIX s Understanding links in directories File protection/access control Reading: R&R, Ch 5 1

2 A Typical File-system Organization Directories Large amounts of data: Partition and structure for easier access. High-level structure: partitions in MS-DOS minidisks in MVS/VM file systems in UNIX Directories: Map file name to directory entry (basically a symbol table). 2

3 Organize the Directory (Logically) to Obtain Efficiency locating a file quickly Naming convenient to users Two users can have same name for different files The same file can have several different names Grouping logical grouping of files by properties, (e.g., all Java programs, all games, ) Single-level directory: directory Directory Structures file Problems: limited-length file names multiple users? not composable (how do you combine multiple file systems?) 3

4 Two-Level Directories master directory user1 user2 user3 user4 user directories file Path names Location of system files special directory search path Tree-Structured Directories user bin pub user1 user2 user3... find count ls cp bin mail netsc openw bin demoinclude... create subdirectories new concepts: gcc gdb xmt xinit xman xmh xterm current directory path names: complete vs. relative search paths 4

5 Generalized Tree Structures share directories and files keep them easily accessible user bin pub user1 user2 user3... find count ls cp xman bin mail opwin netsc bin demo incl... xinit gcc gdb xmt xinit xman xmh xterm Links: File name that, when referred, affects file to which it was linked. (hard links, symbolic links) Problems: consistency, deletion Why links to directories only allowed for system managers? UNIX Directory Navigation: current directory #include <unistd.h> char * getcwd(char * buf, size_t size); /* get current working directory */ Example: void main(void) { char mycwd[path_max]; } if (getcwd(mycwd, PATH_MAX) == NULL) { perror ( Failed to get current working directory ); return 1; } printf( Current working directory: %s\n, mycwd); return 0; 5

6 UNIX Directory Navigation: directory traversal #include <dirent.h> DIR * opendir(const char * dirname); /* returns pointer to directory object */ struct dirent * readdir(dir * dirp); /* read successive entries in directory dirp */ int closedir(dir *dirp); /* close directory stream */ void rewinddir(dir * dirp); /* reposition pointer to beginning of directory */ #include <dirent.h> Directory Traversal: Example int main(int argc, char * argv[]) { struct dirent * direntp; DIR * dirp; if (argc!= 2) { fprintf(stderr, Usage: %s directory_name\n, argv[0]); return 1; } if ((dirp = opendir(argv[1])) == NULL) { perror( Failed to open directory ); return 1; } } while ((direntp = readdir(dirp))!= NULL) printf(%s\n, direntp->d_name); while((closedir(dirp) == -1) && (errno == EINTR)); return 0; 6

7 Interlude: Logical View of File Management user file structure directory management access control records access method physical blocks in memory blocking physical blocks on disk disk scheduling file allocation Unix File System Implementation: s file information: - size (in bytes) - owner UID and GID - relevant times (3) - link and block counts - permissions 0 multilevel indexed allocation table multilevel allocation table direct single indirect double indirect triple indirect 7

8 Directory Implementation file information: - size (in bytes) - owner UID and GID - relevant times (3) - link and block counts - permissions Where is the filename?! Name information is contained in separate Directory File, which contains entries of type: (name of file, 1 number of file) name myfile.txt block some text in the file 1 More precisely: Number of block that contains. Hard Links directory entry in /dira name name1 directory entry in /dirb name name2 shell command ln /dira/name1 /dirb/name block some text in the file is typically implemented using the link system call: #include <stdio.h> #include<unistd.h> if (link( /dira/name1, /dirb/name2 ) == -1) perror( failed to make new link in /dirb ); 8

9 Hard Links: unlink directory entry in /dira name name1 directory entry in /dirb name name block some text in the file #include <stdio.h> #include<unistd.h> if (unlink( /dira/name1 ) == -1) perror( failed to delete link in /dira ); if (unlink( /dirb/name2 ) == -1) perror( failed to delete link in /dirb ); Symbolic (Soft) Links directory entry in /dira name name1 directory entry in /dirb name name2 Only count hard links! block block some text in the file 1 /dira/na me1 shell command ln -s /dira/name1 /dirb/name is typically implemented using the link system call: #include <stdio.h> #include<unistd.h> if (symlink( /dira/name1, /dirb/name2 ) == -1) perror( failed to create symbolic link in /dirb ); 9

10 Exercises You execute ln /dira/name1 /dirb/name2 and then use a text editor Open file /dira/name1 Read file into memory Close /dira/name1 Modify the memory image of the file Unlink /dira/name1 Open file /dira/name1 with create and write flags Write the contents of memory to file Close /dira/name1 What exactly happened during the above process? What if the first step is ln s /dira/name1 /dirb/name2? Protection File owner/creator should be able to control: what can be done by whom Types of access Read Write Execute Append Delete List 10

11 Access Lists and Groups Mode of access: read, write, execute Three classes of users RWX a) owner access 7 Þ RWX b) group access 6 Þ RWX c) public access 1 Þ Ask manager to create a group (unique name), say G, and add some users to the group. For a particular file (say game) or subdirectory, define an appropriate access. owner group public Attach a group to a file chmod 761 game chgrp G game Windows XP Access-control List Management 11

12 A Sample UNIX Directory Listing 12

The UNIX File System. File Systems and Directories UNIX inodes Accessing directories Understanding links in directories.

The UNIX File System. File Systems and Directories UNIX inodes Accessing directories Understanding links in directories. The UNIX File System File Systems and Directories UNIX s Accessing directories Understanding links in directories Reading: R&R, Ch 5 Directories Large amounts of data: Partition and structure for easier

More information

FILE SYSTEMS. Tanzir Ahmed CSCE 313 Fall 2018

FILE SYSTEMS. Tanzir Ahmed CSCE 313 Fall 2018 FILE SYSTEMS Tanzir Ahmed CSCE 313 Fall 2018 References Previous offerings of the same course by Prof Tyagi and Bettati Textbook: Operating System Principles and Practice 2 The UNIX File System File Systems

More information

CPSC 410/611: File Management. What is a File?

CPSC 410/611: File Management. What is a File? CPSC 410/611: What is a file? Elements of file management File organization Directories File allocation Reading: Silberschatz, Chapter 10, 11 What is a File? A file is a collection of data elements, grouped

More information

Outline. File Systems. File System Structure. CSCI 4061 Introduction to Operating Systems

Outline. File Systems. File System Structure. CSCI 4061 Introduction to Operating Systems Outline CSCI 4061 Introduction to Operating Systems Instructor: Abhishek Chandra File Systems Directories File and directory operations Inodes and metadata Links 2 File Systems An organized collection

More information

OPERATING SYSTEMS: Lesson 12: Directories

OPERATING SYSTEMS: Lesson 12: Directories OPERATING SYSTEMS: Lesson 12: Directories Jesús Carretero Pérez David Expósito Singh José Daniel García Sánchez Francisco Javier García Blas Florin Isaila 1 Goals To know the concepts of file and directory

More information

CSE 333 SECTION 3. POSIX I/O Functions

CSE 333 SECTION 3. POSIX I/O Functions CSE 333 SECTION 3 POSIX I/O Functions Administrivia Questions (?) HW1 Due Tonight Exercise 7 due Monday (out later today) POSIX Portable Operating System Interface Family of standards specified by the

More information

Unix File and I/O. Outline. Storing Information. File Systems. (USP Chapters 4 and 5) Instructor: Dr. Tongping Liu

Unix File and I/O. Outline. Storing Information. File Systems. (USP Chapters 4 and 5) Instructor: Dr. Tongping Liu Outline Unix File and I/O (USP Chapters 4 and 5) Instructor: Dr. Tongping Liu Basics of File Systems Directory and Unix File System: inode UNIX I/O System Calls: open, close, read, write, ioctl File Representations:

More information

CSE 333 SECTION 3. POSIX I/O Functions

CSE 333 SECTION 3. POSIX I/O Functions CSE 333 SECTION 3 POSIX I/O Functions Administrivia Questions (?) HW1 Due Tonight HW2 Due Thursday, July 19 th Midterm on Monday, July 23 th 10:50-11:50 in TBD (And regular exercises in between) POSIX

More information

File and Directories. Advanced Programming in the UNIX Environment

File and Directories. Advanced Programming in the UNIX Environment File and Directories Advanced Programming in the UNIX Environment stat Function #include int stat(const char *restrict pathname, struct stat *restrict buf ); int fstat(int fd, struct stat

More information

Chapter 11: File-System Interface

Chapter 11: File-System Interface Chapter 11: File-System Interface Silberschatz, Galvin and Gagne File Concept Contiguous logical address space Types: Data numeric character binary Program 11.2 Silberschatz, Galvin and Gagne File Structure

More information

Operating System Labs. Yuanbin Wu

Operating System Labs. Yuanbin Wu Operating System Labs Yuanbin Wu CS@ECNU Operating System Labs Project 3 Oral test Handin your slides Time Project 4 Due: 6 Dec Code Experiment report Operating System Labs Overview of file system File

More information

Last Week: ! Efficiency read/write. ! The File. ! File pointer. ! File control/access. This Week: ! How to program with directories

Last Week: ! Efficiency read/write. ! The File. ! File pointer. ! File control/access. This Week: ! How to program with directories Overview Unix System Programming Directories and File System Last Week:! Efficiency read/write! The File! File pointer! File control/access This Week:! How to program with directories! Brief introduction

More information

Chapter 10: File-System Interface. Operating System Concepts with Java 8 th Edition

Chapter 10: File-System Interface. Operating System Concepts with Java 8 th Edition Chapter 10: File-System Interface 10.1 Silberschatz, Galvin and Gagne 2009 File Concept A file is a named collection of information that is recorded on secondary storage. Types: Data numeric character

More information

Fall 2017 :: CSE 306. File Systems Basics. Nima Honarmand

Fall 2017 :: CSE 306. File Systems Basics. Nima Honarmand File Systems Basics Nima Honarmand File and inode File: user-level abstraction of storage (and other) devices Sequence of bytes inode: internal OS data structure representing a file inode stands for index

More information

File-System. File Concept. File Types Name, Extension. File Attributes. File Operations. Access Methods. CS307 Operating Systems

File-System. File Concept. File Types Name, Extension. File Attributes. File Operations. Access Methods. CS307 Operating Systems CS307 File Concept A file is a named collection of related information that is recorded on secondary storage. File-System Fan Wu Department of Computer Science and Engineering Shanghai Jiao Tong University

More information

System Programming. Introduction to Unix

System Programming. Introduction to Unix Content : by Dr. B. Boufama School of Computer Science University of Windsor Instructor: Dr. A. Habed adlane@cs.uwindsor.ca http://cs.uwindsor.ca/ adlane/60-256 Content Content 1 Introduction 2 3 Introduction

More information

Chapter 4 - Files and Directories. Information about files and directories Management of files and directories

Chapter 4 - Files and Directories. Information about files and directories Management of files and directories Chapter 4 - Files and Directories Information about files and directories Management of files and directories File Systems Unix File Systems UFS - original FS FFS - Berkeley ext/ext2/ext3/ext4 - Linux

More information

Operating System Labs. Yuanbin Wu

Operating System Labs. Yuanbin Wu Operating System Labs Yuanbin Wu CS@ECNU Operating System Labs Project 4 (multi-thread & lock): Due: 10 Dec Code & experiment report 18 Dec. Oral test of project 4, 9:30am Lectures: Q&A Project 5: Due:

More information

The UNIX File System

The UNIX File System The UNIX File System Magnus Johansson (May 2007) 1 UNIX file system A file system is created with mkfs. It defines a number of parameters for the system as depicted in figure 1. These paremeters include

More information

Chapter 10: File-System Interface

Chapter 10: File-System Interface Chapter 10: File-System Interface Objectives: To explain the function of file systems To describe the interfaces to file systems To discuss file-system design tradeoffs, including access methods, file

More information

Operating Systems Lab

Operating Systems Lab Operating Systems Lab Islamic University Gaza Engineering Faculty Department of Computer Engineering Fall 2012 ECOM 4010: Operating Systems Lab Eng: Ahmed M. Ayash Lab # 4 Paths, Links & File Permissions

More information

The UNIX File System

The UNIX File System The UNIX File System Magnus Johansson May 9, 2007 1 UNIX file system A file system is created with mkfs. It defines a number of parameters for the system, such as: bootblock - contains a primary boot program

More information

Overview. Unix System Programming. Outline. Directory Implementation. Directory Implementation. Directory Structure. Directories & Continuation

Overview. Unix System Programming. Outline. Directory Implementation. Directory Implementation. Directory Structure. Directories & Continuation Overview Unix System Programming Directories & Continuation Maria Hybinette, UGA 1 Last Week: Efficiency read/write The File File pointer File control/access Permissions, Meta Data, Ownership, umask, holes

More information

Chapter 11: File-System Interface

Chapter 11: File-System Interface 1 Chapter 11: File-System Interface File Concept Access Methods Directory Structure File System Mounting File Sharing Protection 11.1 2 File Concept Contiguous logical address space Types: Data numeric

More information

Chapter 10: File-System Interface

Chapter 10: File-System Interface Chapter 10: File-System Interface Objectives: To explain the function of file systems To describe the interfaces to file systems To discuss file-system design tradeoffs, including access methods, file

More information

structs as arguments

structs as arguments Structs A collection of related data items struct record { char name[maxname]; int count; ; /* The semicolon is important! It terminates the declaration. */ struct record rec1; /*allocates space for the

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 10: File System Interface Prof. Alan Mislove (amislove@ccs.neu.edu) Contiguous logical address space File Concept Types: Data numeric character

More information

CSC 271 Software I: Utilities and Internals

CSC 271 Software I: Utilities and Internals CSC 271 Software I: Utilities and Internals Lecture 13 : An Introduction to File I/O in Linux File Descriptors All system calls for I/O operations refer to open files using a file descriptor (a nonnegative

More information

Exploring the file system. Johan Montelius HT2016

Exploring the file system. Johan Montelius HT2016 1 Introduction Exploring the file system Johan Montelius HT2016 This is a quite easy exercise but you will learn a lot about how files are represented. We will not look to the actual content of the files

More information

Lecture 10 File Systems - Interface (chapter 10)

Lecture 10 File Systems - Interface (chapter 10) Bilkent University Department of Computer Engineering CS342 Operating Systems Lecture 10 File Systems - Interface (chapter 10) Dr. İbrahim Körpeoğlu http://www.cs.bilkent.edu.tr/~korpe 1 References The

More information

Part Four - Storage Management. Chapter 10: File-System Interface

Part Four - Storage Management. Chapter 10: File-System Interface Part Four - Storage Management Chapter 10: File-System Interface Chapter 10: File-System Interface 10.1 File Concept 10.2 Access Methods 10.3 Directory and Disk Structure 10.4 File-System Mounting 10.5

More information

F 4. Both the directory structure and the files reside on disk Backups of these two structures are kept on tapes

F 4. Both the directory structure and the files reside on disk Backups of these two structures are kept on tapes Directory Structure A collection of nodes containing information about all files Directory Files F 1 F 2 F 3 F 4 F n Both the directory structure and the files reside on disk Backups of these two structures

More information

Lecture 21 Systems Programming in C

Lecture 21 Systems Programming in C Lecture 21 Systems Programming in C A C program can invoke UNIX system calls directly. A system call can be defined as a request to the operating system to do something on behalf of the program. During

More information

CSCI-E28 Lecture 3 Outline. Directories, File Attributes, Bits, File Operations. Write our own versions of Unix programs

CSCI-E28 Lecture 3 Outline. Directories, File Attributes, Bits, File Operations. Write our own versions of Unix programs CSCI-E28 Lecture 3 Outline Topics: Approach: Directories, File Attributes, Bits, File Operations Write our own versions of Unix programs Featured Commands: ls, ls -l Main Ideas: Adirectory is a list of

More information

Sharing may be done through a protection scheme. Network File System (NFS) is a common distributed file-sharing method

Sharing may be done through a protection scheme. Network File System (NFS) is a common distributed file-sharing method File Sharing Sharing of files on multi-user systems is desirable Sharing may be done through a protection scheme On distributed systems, files may be shared across a network Network File System (NFS) is

More information

File Systems: Interface and Implementation

File Systems: Interface and Implementation File Systems: Interface and Implementation CSCI 315 Operating Systems Design Department of Computer Science File System Topics File Concept Access Methods Directory Structure File System Mounting File

More information

File Systems: Interface and Implementation

File Systems: Interface and Implementation File Systems: Interface and Implementation CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those from an earlier edition

More information

I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 10: FILE SYSTEM

I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 10: FILE SYSTEM I.-C. Lin, Assistant Professor. Textbook: Operating System Concepts 8ed CHAPTER 10: FILE SYSTEM Chapter 10: File System File Concept Access Methods Directory Structure File-System Mounting File Sharing

More information

There is a general need for long-term and shared data storage: Files meet these requirements The file manager or file system within the OS

There is a general need for long-term and shared data storage: Files meet these requirements The file manager or file system within the OS Why a file system? Why a file system There is a general need for long-term and shared data storage: need to store large amount of information persistent storage (outlives process and system reboots) concurrent

More information

CMSC421: Principles of Operating Systems

CMSC421: Principles of Operating Systems CMSC421: Principles of Operating Systems Nilanjan Banerjee Assistant Professor, University of Maryland Baltimore County nilanb@umbc.edu http://www.csee.umbc.edu/~nilanb/teaching/421/ Principles of Operating

More information

File Systems: Interface and Implementation

File Systems: Interface and Implementation File Systems: Interface and Implementation CSCI 315 Operating Systems Design Department of Computer Science Notice: The slides for this lecture have been largely based on those from an earlier edition

More information

CS240: Programming in C

CS240: Programming in C CS240: Programming in C Lecture 15: Unix interface: low-level interface Cristina Nita-Rotaru Lecture 15/Fall 2013 1 Streams Recap Higher-level interface, layered on top of the primitive file descriptor

More information

Chapter 10: File-System Interface. File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection

Chapter 10: File-System Interface. File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection Chapter 10: File-System Interface File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection Objectives To explain the function of file systems To describe the interfaces

More information

File-System Interface. File Structure. File Concept. File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection

File-System Interface. File Structure. File Concept. File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection TDIU11 Operating Systems File-System Interface File-System Interface [SGG7/8/9] Chapter 10 File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection How the file system

More information

Chapter 11: File-System Interface

Chapter 11: File-System Interface Chapter 11: File-System Interface Silberschatz, Galvin and Gagne 2013! Chapter 11: File-System Interface File Concept" Access Methods" Directory Structure" File-System Mounting" File Sharing" Protection"

More information

Chapter 10: File-System Interface. Operating System Concepts 8 th Edition

Chapter 10: File-System Interface. Operating System Concepts 8 th Edition Chapter 10: File-System Interface Silberschatz, Galvin and Gagne 2009 Chapter 10: File-System Interface File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection 10.2

More information

File Systems. CS170 Fall 2018

File Systems. CS170 Fall 2018 File Systems CS170 Fall 2018 Table of Content File interface review File-System Structure File-System Implementation Directory Implementation Allocation Methods of Disk Space Free-Space Management Contiguous

More information

FAT (32 KB) 216 * 215 = 231 = 2GB

FAT (32 KB) 216 * 215 = 231 = 2GB The Microsoft FAT 16 file system (supported by all of Microsoft's operating systems from latter versions of MS-DOS through Windows8, as well as all Linux versions) is an example of a file allocation table

More information

UNIT V SECONDARY STORAGE MANAGEMENT

UNIT V SECONDARY STORAGE MANAGEMENT UNIT V SECONDARY STORAGE MANAGEMENT File System Interface: Concept Access Methods Directory Structure File System Mounting File Sharing Protection File System Implementation: File System Structure File

More information

Chapter 10: File System. Operating System Concepts 9 th Edition

Chapter 10: File System. Operating System Concepts 9 th Edition Chapter 10: File System Silberschatz, Galvin and Gagne 2013 Chapter 10: File System File Concept Access Methods Disk and Directory Structure File-System Mounting File Sharing Protection 10.2 Silberschatz,

More information

[6 marks] All parts of this question assume the following C statement. Parts (b) through (e) assume a variable called ptrs.

[6 marks] All parts of this question assume the following C statement. Parts (b) through (e) assume a variable called ptrs. Question 1. All parts of this question assume the following C statement. Parts (b) through (e) assume a variable called ptrs. char data[256] = "Hop Pop We like to hop."; Part (a) Is the following statement

More information

Chapter 11: File-System Interface. File Concept. File Structure

Chapter 11: File-System Interface. File Concept. File Structure Chapter 11: File-System Interface File Concept Access Methods Directory Structure File System Mounting File Sharing Protection 11.1 File Concept Contiguous logical address space Types: Data numeric character

More information

CSC209H Lecture 3. Dan Zingaro. January 21, 2015

CSC209H Lecture 3. Dan Zingaro. January 21, 2015 CSC209H Lecture 3 Dan Zingaro January 21, 2015 Streams (King 22.1) Stream: source of input or destination for output We access a stream through a file pointer (FILE *) Three streams are available without

More information

Chapter 9: File System Interface

Chapter 9: File System Interface Chapter 9: File System Interface File System Interface File Concept Computers store information on different [physical] media Flash Drives, Magnetic disk, Optical Disks, Magnetic Tapes OS provides a uniform

More information

CSC209F Midterm (L0101) Fall 1999 University of Toronto Department of Computer Science

CSC209F Midterm (L0101) Fall 1999 University of Toronto Department of Computer Science CSC209F Midterm (L0101) Fall 1999 University of Toronto Department of Computer Science Date: October 26, 1999 Time: 1:10 pm Duration: 50 minutes Notes: 1. This is a closed book test, no aids are allowed.

More information

Operating Systems CMPSCI 377 Spring Mark Corner University of Massachusetts Amherst

Operating Systems CMPSCI 377 Spring Mark Corner University of Massachusetts Amherst Operating Systems CMPSCI 377 Spring 2017 Mark Corner University of Massachusetts Amherst Clicker Question #1 For a sequential workload, the limiting factor for a disk system is likely: (A) The speed of

More information

Chapter 11: File System Interface Capítulo 10 no livro adotado!

Chapter 11: File System Interface Capítulo 10 no livro adotado! Chapter 11: File System Interface Capítulo 10 no livro adotado! File Concept Access Methods Directory Structure File System Mounting File Sharing Protection 11.1 File Concept Contiguous logical address

More information

Chapter 10: File-System Interface

Chapter 10: File-System Interface Chapter 10: File-System Interface Chapter 10: File-System Interface File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection 10.2 Silberschatz, Galvin and Gagne 2005

More information

Chapter 6 Storage Management File-System Interface 11.1

Chapter 6 Storage Management File-System Interface 11.1 Chapter 6 Storage Management File-System Interface 11.1 Chapter 6: File-System Interface File Concept Access Methods Disk and Directory Structure File-System Mounting File Sharing Protection 11.2 Objectives

More information

Chapter 1. Introduction

Chapter 1. Introduction Chapter 1. Introduction System Programming http://www.cs.ccu.edu.tw/~pahsiung/courses/sp 熊博安國立中正大學資訊工程學系 pahsiung@cs.ccu.edu.tw Class: EA-104 (05)2720411 ext. 33119 Office: EA-512 Textbook: Advanced Programming

More information

CSE 410: Systems Programming

CSE 410: Systems Programming CSE 410: Systems Programming Input and Output Ethan Blanton Department of Computer Science and Engineering University at Buffalo I/O Kernel Services We have seen some text I/O using the C Standard Library.

More information

CSci 4061 Introduction to Operating Systems. File Systems: Basics

CSci 4061 Introduction to Operating Systems. File Systems: Basics CSci 4061 Introduction to Operating Systems File Systems: Basics File as Abstraction Naming a File creat/open ( path/name, ); Links: files with multiple names Each name is an alias #include

More information

CS , Spring Sample Exam 3

CS , Spring Sample Exam 3 Andrew login ID: Full Name: CS 15-123, Spring 2010 Sample Exam 3 Mon. April 6, 2009 Instructions: Make sure that your exam is not missing any sheets, then write your full name and Andrew login ID on the

More information

CSI 402 Lecture 11 (Unix Discussion on Files continued) 11 1 / 19

CSI 402 Lecture 11 (Unix Discussion on Files continued) 11 1 / 19 CSI 402 Lecture 11 (Unix Discussion on Files continued) 11 1 / 19 User and Group IDs Ref: Chapter 3 of [HGS]. Each user is given an ID (integer) called uid. (Most system programs use uid instead of the

More information

Chapter 7: File-System

Chapter 7: File-System Chapter 7: File-System Interface and Implementation Chapter 7: File-System Interface and Implementation File Concept File-System Structure Access Methods File-System Implementation Directory Structure

More information

APT Session 4: C. Software Development Team Laurence Tratt. 1 / 14

APT Session 4: C. Software Development Team Laurence Tratt. 1 / 14 APT Session 4: C Laurence Tratt Software Development Team 2017-11-10 1 / 14 http://soft-dev.org/ What to expect from this session 1 C. 2 / 14 http://soft-dev.org/ Prerequisites 1 Install either GCC or

More information

Important Dates. October 27 th Homework 2 Due. October 29 th Midterm

Important Dates. October 27 th Homework 2 Due. October 29 th Midterm CSE333 SECTION 5 Important Dates October 27 th Homework 2 Due October 29 th Midterm String API vs. Byte API Recall: Strings are character arrays terminated by \0 The String API (functions that start with

More information

Student Number: Instructor: Reid Section: L0101 (10:10-11:00am)

Student Number: Instructor: Reid Section: L0101 (10:10-11:00am) Midterm Test Duration 50 minutes Aids allowed: none Last Name: Student Number: First Name: Instructor: Reid Section: L0101 (10:10-11:00am) Do not turn this page until you have received the signal to start.

More information

File IO and command line input CSE 2451

File IO and command line input CSE 2451 File IO and command line input CSE 2451 File functions Open/Close files fopen() open a stream for a file fclose() closes a stream One character at a time: fgetc() similar to getchar() fputc() similar to

More information

Chapter 11: File-System Interface. File Concept. File Structure

Chapter 11: File-System Interface. File Concept. File Structure Chapter 11: File-System Interface File Concept Access Methods Directory Structure File System Mounting File Sharing Protection ch11_file_sys.ppt [John Copeland s notes added] 11.1 Silberschatz, Galvin

More information

Chapter 11: File System Interface

Chapter 11: File System Interface COP 4610: Introduction to Operating Systems (Spring 2016) Chapter 11: File System Interface Zhi Wang Florida State University Content File concept Access methods Directory structure File-system mounting

More information

Chapter 10: File System

Chapter 10: File System Chapter 10: File System Chapter 10: File-System File Concept File attributes, File operations, File types, File structures Access Methods Directory Structure File-System Mounting File Sharing Protection

More information

Programs. Function main. C Refresher. CSCI 4061 Introduction to Operating Systems

Programs. Function main. C Refresher. CSCI 4061 Introduction to Operating Systems Programs CSCI 4061 Introduction to Operating Systems C Program Structure Libraries and header files Compiling and building programs Executing and debugging Instructor: Abhishek Chandra Assume familiarity

More information

Chapter 11: File-System Interface

Chapter 11: File-System Interface Chapter 11: File-System Interface Silberschatz, Galvin and Gagne 2013 Chapter 11: File-System Interface File Concept Access Methods Disk and Directory Structure File-System Mounting File Sharing Protection

More information

Homework 5. Due Date: Friday, June 7, 2002, at 11:59PM; no late assignments accepted Points: 100

Homework 5. Due Date: Friday, June 7, 2002, at 11:59PM; no late assignments accepted Points: 100 Homework 5 Due Date: Friday, June 7, 2002, at 11:59PM; no late assignments accepted Points: 100 UNIX System 1. (10 points) I want to make the file libprog.a in my home directory available to everyone so

More information

Operating Systems. No. 9 ศร ณย อ นทโกส ม Sarun Intakosum

Operating Systems. No. 9 ศร ณย อ นทโกส ม Sarun Intakosum Operating Systems No. 9 ศร ณย อ นทโกส ม Sarun Intakosum 1 Virtual-Memory Management 2 Background Virtual memory separation of user logical memory from physical memory. Only part of the program needs to

More information

Principles of Operating Systems

Principles of Operating Systems Principles of Operating Systems Lecture 24-26 - File-System Interface and Implementation Ardalan Amiri Sani (ardalan@uci.edu) [lecture slides contains some content adapted from previous slides by Prof.

More information

File Systems. q Files and directories q Sharing and protection q File & directory implementation

File Systems. q Files and directories q Sharing and protection q File & directory implementation File Systems q Files and directories q Sharing and protection q File & directory implementation Files and file systems Most computer applications need to Store large amounts of data; larger than their

More information

Introduction. Files. 3. UNIX provides a simple and consistent interface to operating system services and to devices. Directories

Introduction. Files. 3. UNIX provides a simple and consistent interface to operating system services and to devices. Directories Working With Files Introduction Files 1. In UNIX system or UNIX-like system, all input and output are done by reading or writing files, because all peripheral devices, even keyboard and screen are files

More information

CSC209H Lecture 1. Dan Zingaro. January 7, 2015

CSC209H Lecture 1. Dan Zingaro. January 7, 2015 CSC209H Lecture 1 Dan Zingaro January 7, 2015 Welcome! Welcome to CSC209 Comments or questions during class? Let me know! Topics: shell and Unix, pipes and filters, C programming, processes, system calls,

More information

CSci 4061 Introduction to Operating Systems. Programs in C/Unix

CSci 4061 Introduction to Operating Systems. Programs in C/Unix CSci 4061 Introduction to Operating Systems Programs in C/Unix Today Basic C programming Follow on to recitation Structure of a C program A C program consists of a collection of C functions, structs, arrays,

More information

File System Definition: file. File management: File attributes: Name: Type: Location: Size: Protection: Time, date and user identification:

File System Definition: file. File management: File attributes: Name: Type: Location: Size: Protection: Time, date and user identification: File System Definition: Computer can store the information on different storage media such as magnetic disk, tapes, etc. and for convenience to use the operating system provides the uniform logical view

More information

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture)

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture) EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture) Dept. of Computer Science & Engineering Chentao Wu wuct@cs.sjtu.edu.cn Download lectures ftp://public.sjtu.edu.cn User:

More information

TDDB68 Concurrent Programming and Operating Systems. Lecture: File systems

TDDB68 Concurrent Programming and Operating Systems. Lecture: File systems TDDB68 Concurrent Programming and Operating Systems Lecture: File systems Mikael Asplund, Senior Lecturer Real-time Systems Laboratory Department of Computer and Information Science Copyright Notice: Thanks

More information

Chapter 11: File-System Interface

Chapter 11: File-System Interface Chapter 11: File-System Interface Chapter 11: File-System Interface File Concept Access Methods Disk and Directory Structure File-System Mounting File Sharing Protection Objectives To explain the function

More information

Chapter 11: File-System Interface. Long-term Information Storage. File Structure. File Structure. File Concept. File Attributes

Chapter 11: File-System Interface. Long-term Information Storage. File Structure. File Structure. File Concept. File Attributes Chapter 11: File-System Interface File Concept Access Methods Directory Structure File System Mounting File Sharing Protection Long-term Information Storage 1. Must store large amounts of data 2. Information

More information

CSCI-E28 Lecture 4 Outline. Internal Structure of Files, Directories, File Systems. Work from user view tosystem view, write pwd

CSCI-E28 Lecture 4 Outline. Internal Structure of Files, Directories, File Systems. Work from user view tosystem view, write pwd CSCI-E28 Lecture 4 Outline Topics: Approach: Internal Structure of Files, Directories, File Systems Work from user view tosystem view, write pwd Featured Commands: mkdir, rmdir, rm, ln, mv, pwd Main Ideas:

More information

2009 S2 COMP File Operations

2009 S2 COMP File Operations 2009 S2 COMP1921 9. File Operations Oliver Diessel odiessel@cse.unsw.edu.au Last updated: 16:00 22 Sep 2009 9. File Operations Topics to be covered: Streams Text file operations Binary file operations

More information

Chapter 11: File-System Interface. Operating System Concepts 9 th Edition

Chapter 11: File-System Interface. Operating System Concepts 9 th Edition Chapter 11: File-System Interface Silberschatz, Galvin and Gagne 2013 Chapter 11: File-System Interface File Concept Access Methods Disk and Directory Structure File-System Mounting File Sharing Protection

More information

Introduction to Computer and Program Design. Lesson 6. File I/O. James C.C. Cheng Department of Computer Science National Chiao Tung University

Introduction to Computer and Program Design. Lesson 6. File I/O. James C.C. Cheng Department of Computer Science National Chiao Tung University Introduction to Computer and Program Design Lesson 6 File I/O James C.C. Cheng Department of Computer Science National Chiao Tung University File System in OS Microsoft Windows Filename DriveID : /DirctoryName/MainFileName.ExtensionName

More information

BIL 104E Introduction to Scientific and Engineering Computing. Lecture 14

BIL 104E Introduction to Scientific and Engineering Computing. Lecture 14 BIL 104E Introduction to Scientific and Engineering Computing Lecture 14 Because each C program starts at its main() function, information is usually passed to the main() function via command-line arguments.

More information

OPERATING SYSTEMS: Lesson 2: Operating System Services

OPERATING SYSTEMS: Lesson 2: Operating System Services OPERATING SYSTEMS: Lesson 2: Operating System Services Jesús Carretero Pérez David Expósito Singh José Daniel García Sánchez Francisco Javier García Blas Florin Isaila 1 Goals To understand what an operating

More information

CS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University

CS370: Operating Systems [Spring 2017] Dept. Of Computer Science, Colorado State University Frequently asked questions from the previous class survey CS 370: OPERATING SYSTEMS [FILE SYSTEMS] Shrideep Pallickara Computer Science Colorado State University If you have a file with scattered blocks,

More information

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto Ricardo Rocha Department of Computer Science Faculty of Sciences University of Porto For more information please consult Advanced Programming in the UNIX Environment, 3rd Edition, W. Richard Stevens and

More information

File Systems. Today. Next. Files and directories File & directory implementation Sharing and protection. File system management & examples

File Systems. Today. Next. Files and directories File & directory implementation Sharing and protection. File system management & examples File Systems Today Files and directories File & directory implementation Sharing and protection Next File system management & examples Files and file systems Most computer applications need to: Store large

More information

CITS2002 Systems Programming. Identifying related data. 1 next CITS2002 CITS2002 schedule. Let's consider the st project for CITS1002.

CITS2002 Systems Programming. Identifying related data. 1 next CITS2002 CITS2002 schedule. Let's consider the st project for CITS1002. 1 next CITS2002 CITS2002 schedule Identifying related data Let's consider the 2012 1st project for CITS1002. The goal of the project was to manage the statistics of AFL teams throughout the season, calculating

More information

CS360 Midterm 2 Spring, 2016 James S. Plank March 10, 2016

CS360 Midterm 2 Spring, 2016 James S. Plank March 10, 2016 CS360 Midterm 2 Spring, 2016 James S. Plank March 10, 2016 In all of these questions, please assume the following: Pointers and longs are 4 bytes. The machine is little endian, but that doesn't matter

More information

Do not turn the page until 5:00.

Do not turn the page until 5:00. University of Washington Computer Science & Engineering Spring 2018 Instructor: Justin Hsia 2018-05-04 Last Name: First Name: Student ID Number: Name of person to your Left Right All work is my own. I

More information

Slide Set 18. for ENCM 339 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary

Slide Set 18. for ENCM 339 Fall Steve Norman, PhD, PEng. Electrical & Computer Engineering Schulich School of Engineering University of Calgary Slide Set 18 for ENCM 339 Fall 2016 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary December 2016 ENCM 339 Fall 2016 Slide Set 18 slide 2/26

More information

csci-e28 lecture 4samples page 1

csci-e28 lecture 4samples page 1 csci-e28 lecture 4samples page 1 :::::::::::::: perror_demo.c :::::::::::::: #include #include program perror_demo.c * purpose show how errno is set by syscalls * and how perror prints

More information