interoperable php

Download Interoperable PHP

Post on 15-Apr-2017

550 views

Category:

Internet

2 download

Embed Size (px)

TRANSCRIPT

Interoperable PHP

Interoperable PHPWe are only as strong as we are united, as weak as we are divided.DambledoreAnatol BelskiPHP SpecialistSeptember 2015

Anatol Belski

@weltlingab@php.net#php.pecl on efnet#winphp-dev on freenode

PHP 7.0 release managerPHP core developerOSS guy

Interoperable PHP

OSTCPHPHyper-VAzureSambaDocker

Interoperable PHP

Interoperability

Interoperable PHP

Hardware various hardware existing or needed for a program.Architecture how is the hardware put together.OS an exact operating system.

Tree above platform.

Program actual binary running upon the platform. With PHP - the PHP interpreter.5

A cross-platform program is

HardwareOSArchitecture

independent and can run under various constellations.

Interoperable PHP

A cross-platform program can be handled within the same source tree, or with different sources for different platforms. As well many interpreted programming languages supports multiple platforms. Also there are like a dozen platforms within Unix, Linux, Windows.

6

TopicsFilesystemTime APIPerformance32- vs 64-bitThread safetyBeyond

Interoperable PHP

Brief UNIX/Windows diffUNIX/Linuxgccmany libsprocessesC99Ext*, reiserFS, HFS, etc.UNIX permissionsWindowsvc++core API + OSS libsthreadsC99 starting with VC12NTFS, FATACLs

Interoperable PHP

Filesystem

File permissionsUNIX/Linuxchmod +x filechmod -r filechmod ugo-r filechmod +r fileno equivalentno equivalentchmod +t somedirWindowsno equivalenticacls file /deny nick:(R)no equivalenticacls file /grant nick:(R)icacls file /grant nick:(GR,GW)icacls file /inheritance:eno equivalent

Interoperable PHP

10

File/process permissionsUNIX/Linuxchmod(), chown(), etc.process permissions are handled same way as file ones

WindowsicaclsimpersonationUnmapped UNIX users built-in SID mapping

Interoperable PHP

Access control lists and others vs UNIX permissions.

Unmapped UNIX user example Samba, NFS, etc.11

Access time

ext3, ext4 and othersnoatime,nodiratime in /etc/fstab

NTFSfsutil behavior query DisableLastAccessfsutil behavior set DisebleLastAccess 0

Interoperable PHP

Atime is usually off by default off windows. On linux depends on a distribution, but most likely is on.12

NTFS streamsC:\tmp> echo hello >foo.txt C:\tmp>echo world > foo.txt:bar.txtC:\tmp>dir /r foo.txt Volume in drive C is SYSTEM Volume Serial Number is AE0A-76BD

Directory of C:\tmp

08/31/2015 11:50 PM 8 foo.txt 8 foo.txt:bar.txt:$DATA 1 File(s) 8 bytes 0 Dir(s) 59,944,050,688 bytes free

Interoperable PHP

PHP FS snippet 1

Recommended

View more >