.


:




:

































 

 

 

 


.




, , , . Linux LILO (LInux LOader) GRUB (GRand Unified Bootloader). ,
.

1. , , , . ³ .

2. ( - ), - . , : -, , -, . , LILO GRUB, , .

3. , , ​​ (, ), , , GRUB, . - ' ​​ ( - , - ), .


42. . Linux.

: .
, . . , 񳺿 ' . : ' , , , , ' . ', - .
, , , , , .

 

​​ . ​​ ' , . - , ', , ( , , . .) , , . ( Linux) ( dmesg).

 

​​ . - Linux, . 䳿, , , . ps-ef , , Linux ( '), k: [kswapd], [keventd] . .

 

​​ () ( - root = / dev/hda5). ϳ (read-only): , , , fsck (file system check). ϳ, , .

 

, ​​ / sbin / init . (PID) , - , , . init - , , ( UNIX, ), 1.
init


43. init. /etc/inittab, /etc/rc.d/rc.sysinit.

Init . - / etc / inittab. , init getty , . ³ , - . г - , . , init , / etc / inittab.
, , ​​ / sbin / init . init . , , , ( , IP-, ), 䳿.

Unix / Linux init . г - . : init / etc / inittab. , Linux Unix System V BSD- .

, 7 :

0 -

1 -

2 -

3 -

4 -

5 -

6 -

init n ( ), n - , .


/etc/inittab
id:5:initdefault:

si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0

l1:1:wait:/etc/rc.d/rc 1

l2:2:wait:/etc/rc.d/rc 2

l3:3:wait:/etc/rc.d/rc 3

l4:4:wait:/etc/rc.d/rc 4

l5:5:wait:/etc/rc.d/rc 5

l6:6:wait:/etc/rc.d/rc 6

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

x:5:respawn:/etc/X11/prefdm -nodaemon

. . . , :

1 -

2345 - ,

respawn - , init .

/ sbin / mingetty tty6 - ( ), .

, ( 4 7, 8...), / etc / inittab / etc / rc.d / rc *. D


44. . .

:

1) ,

2)

3)

4)

5)

- , , . , CPU, . , d, - binfmpt-support brltty.

 

, , ' . . Linux , , - , . , ' Bluetooth; , '. ' , . , .

 

, . - ' . . , - , . , , , web- Apache -. , web- , Mandriva web- . , , , , , .
: AppArmor, Apport, Avahi-deamon, Bluetooth, CUPS, GPM, KLogd, NTP, Powersaver, Powernowd, Laptop-mode.


45. . . .


46. . .


47. . . .


48. . .


49. , .

, , , g (1). makefile, . ' . ' ..

䳿 ' id ' , , . ' : , . , ' ' ( .), , . , '

( .so). , '. ' a.out

:

$ make prog $ cc o prog prog.c

' prog. ' (a.out) prog .

, 䳿 , id. , cc ', .

.

$ cc c file1. c file2.c ' file1.o file2.o

$ cc o prog file1.o file2.o -lnsl '

prog, ' libnsl.a libnsl.so

( ), . , ,

Linux Unix- . Linux ˳ (Linus Torvalds) (Գ) Minix - UNIX-, Andry Tanenbaum. Linux ' 80386. ˳ " , Minix ".

UNIX- , "Bourne shell" (shell shell). UNIX- C shell, , ѳ.

50. . , . . .

. . , (-).

- ' .

' , ' . :

, .

- , ,

 

. ³ , .

( , ) ᒺ . , . , 䳿 ᒺ . , , File Create Open .

' , , ( ) . , 볺 , . , binder, .

, .


51. . . , .

' .

,  (, Fortran ), ' , () ( Microsoft Windows .lib, UNIX- .a). , , .

(. shared library), , (. Dynamic Link Library, DLL). , . ', . ', , '.

. , .library Libs: AmigaOS; Microsoft Windows OS/2 .dll; UNIX- .so; MacOS .dylib.

ar.

~/SPOS/clib/exemple.1

1- ᒺ

gcc c test1.c test2.c

2) ᒺ ᒺ arc r libtest.a test1.o test2.o library.a( )

3) app.c ᒺ

gcc c app.c => app.o

, . l test gcc

4) :

gcc o app app.o L. ltest

L. , .

./app

. .. ᒺ

gcc c fPIC test1.c test2.c

fPIC - ᒺ

2) gcc c app.c => app.o - application.c

3) gcc shared fPIC o libtest.so test1.o test2.o

shared ...

4) gcc o app app.o L. ltest , . , (.)

export LD_LIBRARY_PATH=.

echo $ LD_LIBRARY_PATH

 


 

52. .

' . , .

, , .

' .

,  (, Fortran ), ' , () ( Microsoft Windows .lib, UNIX- .a). , , .

(. shared library), , (. Dynamic Link Library, DLL). , . ', . ', , '.

. , .library Libs: AmigaOS; Microsoft Windows OS/2 .dll; UNIX- .so; MacOS .dylib.

( ), - - . ͳ , .


53. . . .

, , . - .

́ ́ , . , .

- , '.

' . , : ' , (, ). ' , . .

(' ) - , , ( ) . , , , .

, , () :

inode , . : inode', . .

, . , , , .

, ' , . ' , .


54. Գ . . .

.

:

 ;

 ' ;

 ;

 .

 

Գ ', . - . - , '.

- , '.

. - . . -, , , ' , -, , , ( 1 ) .

 

- ' '. , - , . , .

- , , . .


55. . . .

UNIX 6 ,

:

1. (regular file)

2. (directory)

3. (special device file)

4. FIFO (named pipe)

5. ' (link)

6.

UNIX - .

, UNIX , , .

UNIX : (user owner)

(group owner). , - , 䳺 .

- ,

.

, .

.

: (read), (write) (execute). ֳ

: , , ,

() .

, -

(, , ls). . , .

, ( , ).

cd.


56. .

- . :

1)

2)

3)

4)

UNIX :

1) (6 )

2)

3)

4)

5) .

6)

4 :

1)

2)

3) SUID(set user ID)

4) GUID(get user ID)

, .


57. : mkdir, mknod, mkfifo, cp, mv, rename.

mkdir - . mkdir , , , "rwxrwxrwx'' (0777).

:

mkdir [-pv] [-m ] <_>...

:

-m - .

-p - .

-v - .

 

mknod - FIFO ( ), '.

:

mknod [] < >

:

-p FIFO.

-b .

-c - .

 

mkfifo - FIFO () .

:

mkfifo [] < >

:

-m - FIFO.

cp - .

:

cp [] < | > < | >

:

- R - ;

- i - - , .

- f - -i, - .

- v - , 䳿, cp.

: cp-i / timages / * images / - / timages / images /, . , .

mv - ,

:

mv [] <|>

:

- f - - , .

- - . .

- v- , 䳿.

: mv-vf file * images / trash - , file, images / trash /, .

rename


58. . . .

- ', , . , , ' . . , UNIX.

ID :

0 root ();

1-500 .

, . : , , UID, GID, , /bin/bash.

'. ' UID.

- , . , . ', , GID.

UID GID , 䳺 .

etc/passwd. , , .

, / etc / group , .


59. , Unix. .

, Unix:

1. etc/passwd - .

: , , UID, GID, , /bin/bash.

2. etc/group - .

:

1. ;

2. , ; 3. ;

4. .

3. etc/shadow . , , root.

: login, , , , 䳿 .

4. etc/gshadow - .

:

1. ;

2. , "!", ;

3. ;

4. .

, , . , UNIX.

 


60. Unix: useradd, usermod, userdel, groupadd.

Unix:

useradd , .

usermod .

userdel .

groupadd .


61. Unix: groupmod, groupdel, passwd, gpasswd.

- groupmod _name

.

-:

groupmod group1 n group2 group1 group2.

- groupdel _name .

.-:

groupdel group1 group1 .

- passwd _user / user.

-l

-d

-f

-n 䳿

-x 䳿

-S

 

- gpasswd _group / group.

-:

gpasswd gr1 password password gr1.


62. , , . .

ᒺ Linux, . .

.

, , ' . ϳ .

(), () . . , 䳺 , ( , ). , , , .


63. . .

(PID). . .

(PPID). .

UNIX, , 0 (swapper) fork. , fork , . , ( 0) , .


64. Unix: ps, kill, nice, renice, su, sudo.

- Ps

-a - ' ,

-x - , ' (, )

-u - ( )

-u user - user

- kill pid - id pid

-TERM pid - pid - SIGTERM ( ).

-KILL pid - , SIGKILL ( ).

- nice -n value script - , , script , value ( -20 19, , -20 - ).

- renice -value PID - PID = PID , value ( -20 19, , -20 - )

- su user - ( ) user ( - root)

-,-L, - login - 3 - ( )

- command - command "" .

 


65. . .

, , ' , .

, , . , .

. , - ' , , . , . , , remote login, , , '.

: -, ' , -, ', .

. . - . , .

, - , . , . .

' , , . ' ' , ' .

- , .

: , , (RPC) , , ' , .

66. . .

, ( , ). , '. , ', . ' .

, . ³ ( ).

DSM (Distributed Shared Memory - ) - , () . DSM , ' . DSM ' ' , ' '.


67. ().

䳿 :

1. ;

䳿 : TASK_STRUCT .

2. ;

ϳ . , :

( , );

;

, (, ); read , , .

䳺 䳺 . , . 5 :

1) ' (D);

2) (A);

3) (I);

4) ( ) (S);

5) ()

䳿, . - , :

SIGKILL ( - 2)

SIGSTOP - .

:

;

.


68. .

Win32

, . ( ) . Win32 . MFC .

MFC , Win32, , CSyncObject:

CCriticalSection - .

CEvent - ' 䳿

CMutex - .

CSemaphore - .


69. . /, .

/ UNIX ( ) - , (), . ( '), .

0 (stdin) .

stdin (). UNIX ( ) <. ( ), , .

1 (stdout) , ( ') .

stdout (). UNIX ( ) >. .

- , : , ' - , (stdout) ' (stdin) . ' . - . - 㳺 .

- , ', . , . , , .


70. / .

Unix ( Linux) . ' , 䳿. .

:

ls | grep x

bash, , |, , , , , ' . ls , grep ls , x.

, Unix, " ". , bash. : , . ³ , , .

- , DOS :

 

> - >> - < - << - , , DOS UNIX/Linux ( ). , UNIX/Linux . (, `"" , `"" ) , .

 





:


: 2016-11-19; !; : 1277 |


:

:

, ,
==> ...

1301 - | 1261 -


© 2015-2024 lektsii.org - -

: 0.277 .